オープンソース

Nautilus Renames Extension 2.0 RC1 is out.

だいぶ前に自作したアプリのアップグレード版。
これまた、だいぶ前に実装を始めたものの何かの拍子ですっかり忘れていたが、その間に使える環境 (ライブラリ) ががらりと変わっていたりして、それでも一応 GTK+ 3.0 なんかがリリースされる前に完成させておきたいということで、昨年末から再開し少しずつ進めてきたもの。
機能はというと、3年前に作ったものとまったく変わったところは無く、ただ単に選択したファイルの名前を連番など付けて一括で変換する Nautilus ファイル・ブラウザプラグイン。今回のアップグレードは、今では廃止 (Deprecated) になってしまった API を置き換えることが目的といったところ:

  1. ファイル名の変更処理を gnome-vfs ライブラリではなく、 GLib の GIO を使うようにした
  2. ユーザ・インタフェースを libglade ライブラリではなく、GTK+ の GtkBuilder を使って構築するようにした

そんなわけで、見た目は前バージョンとほとんど変わらない:

NautilusRenames1.90-20110131-01.png

ちょっとだけ、前バージョン同様に、今回も実装の参考にした gThumb の拡張機能からいただいてきたインタフェースなんだけれど、ファイル名のテンプレートで指定できる特別な記号の凡例を初めは隠したままにしておき、テキスト・エントリの中に埋め込んだアイコンをクリックすると表示するようにしてある:

NautilusRenames1.90-20110131-02.png

GTK+ のバージョン 2.18 から、テキスト・エントリに文字列以外のアイコンを埋め込めるようになったので、これに gtk_widget_show()gtk_widget_hide() のコールバックをトグルで関連づけているだけだけど:

NautilusRenames1.90-20110131-03.png

テンプレートの中で展開できる特別な記号も追加しており、たとえば strftime(3) で指定できる書式文字列をそのまま使えるようにしてある。
今回は、システム規模で普通にインストールして Nautilus のコンテキスト・メニューから起動する方法の他に:

NautilusRenames1.90-20110131-04.png

ビルド時に —enable-run-in-place オプションを付けて構成し直してビルドすると、インストールしなくてもユーザ・インタフェースを表示させて実際に動作できるようにしている:

$ ./configure --enable-run-in-place && make
$ ./src/nautilus-renames *

これは前バージョン同様に、ユーザ・インタフェースを持ったアプリ本体は1コマンドラインとして実装しており、Nautilus のプラグインからは単にそのコマンドを呼び出すような実装にしているから。
ソース・アーカイブとリポジトリは次のとおり。ちなみにリポジトリには deb パッケージ作成用のファイルも追加してあるのでパッケージでのインストールも可。
See Also nautilus-renames-1.9.90.tar.bz2: Release Candidate1
See Also 開発リポジトリ

$ tar xvf nautilus-renames-1.9.90.tar.bz2
$ cd nautilus-renames-1.9.90
$ ./configure --prefix=/usr --sysconfdir=/etc && make
$ sudo make install

特に大きなバグが無ければ今週末にバージョン 2.0 をリリースする予定。

Cairo API translation progress (TAKE 3).

第4章まで完了した。これで一応リファレンスに相当するドキュメントの翻訳は終了。以前は、残りの “Creating a language binding for cairo” を (時間の都合で) 途中で放り投げてしまったような記憶があるのだけれど、今回はどうしたものかな :|
今年の1月中ぐらいから翻訳を始めたので実質2ヶ月ほどで完遂か。とはいえほとんどが以前翻訳したものの流用と見直し、新規に翻訳したのはものだけども。
See Also Cairo ベクトル・グラフィックス・ライブラリ: v1.8.6 版の API リファレンス
See Also SVN リポジトリ: 翻訳作業の SVN リポジトリ
See Also Cairo: A Vector Graphics Library: オリジナルのドキュメント
See Also バグ報告と追跡: 翻訳バグなどの報告はこちらへどうぞ
See Also 前バージョンのドキュメント: その他関連するドキュメント一覧

Cairo API translation progress (TAKE 2).

なんとか第3章の初めまで完了
See Also Cairo ベクトル・グラフィックス・ライブラリ: v1.8.6 版の API リファレンス
See Also SVN リポジトリ: 翻訳作業の SVN リポジトリ
See Also Cairo: A Vector Graphics Library: オリジナルのドキュメント
See Also バグ報告と追跡: 翻訳バグなどの報告はこちらへどうぞ
See Also 前バージョンのドキュメント: その他関連するドキュメント一覧

Cairo API translation progress (TAKE 1).

ひとまず第1章まで完了
前回翻訳したバージョンから API は大きく変更はない (Mac OS-X のサポートに関連するところぐらい) のでそんなに量的に苦労することはないと思うけれども、若干原文の言い回しで遠回しな表現があるのが難点かな :|
あと、前バージョンで抜けていた各節の概要や一部の関数の説明なんかは、この新しいバージョンでほぼ全て追加・更新されているので、原文の内容は充実しているな。
See Also Cairo ベクトル・グラフィックス・ライブラリ: v1.8.6 版の API リファレンス
See Also SVN リポジトリ: 翻訳作業の SVN リポジトリ
See Also Cairo: A Vector Graphics Library: オリジナルのドキュメント
See Also バグ報告と追跡: 翻訳バグなどの報告はこちらへどうぞ
See Also 前バージョンのドキュメント: その他関連するドキュメント一覧