残っていた「GTK+ のいろいろなツール」と「用語集」が完了し、GTK+ バージョン 2.14.7 のリファレンスマニュアルの翻訳がすべて完了した。
最初に gdk-pixbuf の翻訳に着手したのが 2011年6月なのでかれこれ4年近くかかったわけだ。GLib を含めたドキュメント・ファミリーの場合だと GLib の翻訳開始が 2008年10月なので、こちらもかれこれ7年近くかかったことになる。いや~、長かった~。実際、GTK+ の2系は既にバージョン 2.24.27 までリリースされてしまっているので、新規ないし変更された仕様もあるだろうから、あまり役にたたないかもしれないけど。おまけにメインストリームは GTK+ 3 になっているし。
とはいえ、正直なところ感無量。よくぞ最後まで続けることができたものだと。次の翻訳作業は未定。ひとまず GTK+ 関連の翻訳は終了する。城攻めブログも新たに再開したいので、早いとこ自宅サーバをリプレイスしないといけないし。
ということで、この際だから他の関連するドキュメントも一旦、最新版の gtk-doc でコンパイルしなおしてアップロードしておいた:
GTK+ リファレンスマニュアル: v2.14.7 版の API リファレンス
GIT リポジトリ: 作業用の GIT リポジトリ (英文併記)
誤植/誤訳の報告はメールの他にこちらにて。
この GTK+ バージョン 2.14.7 をドキュメント・ファミリーとして相互参照する日本語ドキュメントは:
GLib リファレンスマニュアル: v2.18.4 版の API リファレンス
GObject リファレンスマニュアル: v2.18.4 版の API リファレンス
GIO リファレンスマニュアル: v2.18.4 版の API リファレンス
Cairo リファレンスマニュアル: v1.8.6 版の API リファレンス
Pango リファレンスマニュアル: v1.22.4 版の API リファレンス
gdk-pixbuf リファレンスマニュアル: v2.14.7 版の API リファレンス
GDK リファレンスマニュアル: v2.14.7 版の API リファレンス
まぁ今回も ATK のリファレンスマニュアルは翻訳していないけど。
「GTK+」カテゴリーアーカイブ
GTK+ Ref. translation (TAKE 20).
「古いバージョンからの移植について」が完了。この章は主に、GTK+ のバージョンを上げることで古い API を新しい API で置き換える際の留意点、サンプル・プログラム、バグ情報などがまとめられている。大体が GNOME ライブラリとして提供され、アプリでも利用率の高い API を GTK+ のライブラリに統合するという「恒例の作業」の一環であり、このバージョンでは 「廃止」(Obsoleted) になった libgnomeui ライブラリが対象となっている。バグ情報に関しては、「当然ながら」今のバージョンでは修正されているものがほとんどなので、そのあたりの注釈は追記しておいた。
ということで、完了までの大きな「壁」はなくなった。あとは man ページと用語解説の翻訳のみ。7年間も費やした「GTK+ ツールキット一式」のリファレンスマニュアル日本語版の完成まであともう一息。
GTK+ リファレンスマニュアル: v2.14.7 版の API リファレンス
GIT リポジトリ: 作業用の GIT リポジトリ (英文併記)
誤植/誤訳の報告はメールの他にこちらにて。
GTK+ Ref. translation (TAKE 19).
「廃止になったウィジェット」が完了。これで第三章の「GTK+ のウィジェットとオブジェクト」の翻訳が全て完了した。この章は長かった。このバージョンの GTK+ には現在の3系とは異なり、GTK の他に gdk-pixbuf と GDK と言ったコンポーネントが含まれているけど、他のどれよりも規模が大きい。ログを見てみると最初に GTK のコンポーネントの翻訳を開始したのが 2012年1月19日とあるから、ここまでざっと3年はかかっていることになる 。その間に、巷の2系はバージョン 2.24 までリリースされているけれど
。
とはいえ、まだ第四章の “異なる系からの移植ガイド” が残っているのでこの翻訳自体が完了するのはまだまだ先になるな。このガイドは以前のものに比べると、Deprecated になったクラスがある分だけ少し新規の翻訳が多くなっている。
GTK+ リファレンスマニュアル: v2.14.7 版の API リファレンス
GIT リポジトリ: 作業用の GIT リポジトリ (英文併記)
誤植/誤訳の報告はメールの他にこちらにて。
昨年「2014年中には終わらせたい」としていた章はちょっとオーバーしたけど無事完了で、正直ホッとした。
Building GNOME 3.14 release (TAKE 1).
一応 gsettings-desktop-schemas までビルドした。GLib や GTK+ といったコア層は完了したので、ちょうどプラットフォーム層のコンポーネントに移行し始めたといったところ。まぁ、この辺りから GNOME 以外の依存関係が広がってくるし、(1回分のリリースを飛ばしている分) ja.po の方も未訳数が桁違いになってくるので、本当に「面倒」なビルド作業はこれからなんだけど。
で、ここまでのビルドで一番気になるのは GTK+ 3.14 のリリースで正式に組み込まれた GtkInspector という内蔵型の対話式デバッガ。その他にも色々あるのだけれどバージョン 3.12 をスキップしちゃっているので実際にどのバージョンで追加されたのか詳細は不明ではあるが、例えば gtk-launch なるコマンドを使うと URI を指定してアプリケーションを起動できるようになっているので、そういった (かなり使うケースが限定される) クラスが追加されているようだ。他には、画像編集系のアプリで使いそうな十字カーソルをキャンバス上で移動させてイベントを発行する Event Axes クラスとか、目的が今ひとつ不明な FlowBox クラス、ジェスチャーをサポートした Gesture クラス、UI 系だと Header Bar クラスや Popover クラスなんかがある。
GtkInspector は、以前は .Parasaite といった GTK+ のアプリケーション一つとして実装され、他のアプリにアタッチしてウィジェットの階層やクラスのプロパティをランタイムで調査できるものだったようさ。そういえば、その昔に似たような機能を持った ginspector なる GObject 系のクラス調査ツールがあった記憶がある (確か日本人が開発していたような)。GtkInspector は、chrome とか firefox といった最近のウェブアプリには標準で実装され Web 開発で HTML ページや CSS のレイアウト調査を行う「インスペクタ」と同様の位置づけだ。従って GTK+ のアプリで、このデバッガを起動する場合は chrome や firefox のそれと同様に [Control]+[Shift]+[I]というショートカットが利用できる。もしくは環境変数として GTK_DEBUG=interactive を指定する。すると GtkWindow を持つアプリから次のようなインスペクタが起動される:
ここで OK をクリックすると、インスペクタのウィンドウから GTK+ のクラスについて様々な情報を収集できるようになる:
CSS エディタではリアルタイムで設定を変更させて確認することが可能になっている。他にもフォントやテーマなんかも変更して即座に確認できるようになっている。
そして、それ以外に気づいた点は gdk-pixbuf を最新版 (2.31系以上) にすると Deprecated な API やクラスが削除されているため GTK+3.0 ではなく GTK+2.0 の方がビルドできなくなるのには注意が必要。その他に NetworkManager の 1.0.0 がリリースされた。その際に今までのクライアント・ライブラリが GObject 化されて libnm という一個のライブラリに統合・置き換えられるようになった。但し、この 1.0.0 では従来の libnm-glib や libnm-gtk などのライブラリも混在できるようになっている。あとベースが Ubuntu 14.04 LTS なので gcc がちょっと古いため 4.9 をインストールしている。あと -fstack-protector-strong というオプションは、このバージョンからサポートされていたようだし。
といったところで、ここまでは特に大きな問題は無し 。
GTK+ Ref. translation (TAKE 18).
「インタフェース・ビルダ」まで完了。これは GTK+ のバージョン 2.12 で追加された機能の一つで、従来の Libglade による GUI の構築を置き換えるもの。まず第一に、外部のライブラリを必要としなくなったことが大きな変更であり、加えてより洗練された Description で GTK+ の新しいクラスやインタフェースを記述できるようになったことも特徴。GtkBuilder 型の UI 定義の詳細については、本マニュアルのここに解説がある。
GTK+ リファレンスマニュアル: v2.14.7 版の API リファレンス
GIT リポジトリ: 作業用の GIT リポジトリ (英文併記)
誤植/誤訳の報告はメールの他にこちらにて。
残りは Deprecated なクラスだけか。本章は年内でなんとかケリを付けたいところ。