TracJa について
このファイルはオリジナル Trac の配布物には含まれません。
Trac-Ja は Trac の日本語ローカライズバージョンです。
Trac の I18N 対応状況
Trac は Python で記述されているため、内部コードは Unicode です。 また、 Wiki ページやレポート、チケットなどはデータベースに格納する時点で UTF-8 に変換されるため、これらは基本的にオリジナル配布のままでも日本語が使用できます。
添付ファイルやリポジトリブラウザの表示が文字化けする場合、適切な文字コードを TracIni ファイルのパラメータ [trac] default_charset に設定してください:
[trac] default_charset = Shift_JIS
大抵の場合、この設定だけで文字化けは解消します。
Subversion リポジトリに格納しているファイルのエンコードが、ファイルごとに違う場合、 Subversion 側で各ファイルの svn:mime-types 属性に charset を 正しく設定することで解消します (trac-0.8.2 以降):
PROMPT$ svn propset 'svn:mime-type' 'text/x-csrc; charset=Shift_JIS' *.c
添付ファイルの文字コードは TracIni の default_charset に固定されます。
Trac の L10N 対応状況
オリジナル配布ではユーザ入力以外の表示メッセージは全て英語です。
プレゼンテーション層の処理は、 templates ディレクトリ配下の ClearSilver テンプレートに 集約されているのですが、実際に表示される用語などが trac ディレクトリ配下の Python コード内に ハードコードされているため、 Trac が gettext() などの多言語 API に対応しない限り、 ソースに直接パッチを行わないと翻訳できません。
Wiki ページとして同梱されているオンラインマニュアルは、 wiki-default ディレクトリにある ファイルを翻訳すれば地域化することが出来ます。 (マニュアルについてはロケールを指すディレクトリを作成して、その下にマニュアルを 置くという 案 も出ていましたが、 差分翻訳が難しいなど実用上に問題があるため放置されています。)
レポートやカスタムクエリの検索結果画面での、チケット属性の列名は 検索に使用した SQL の列名がそのまま表示されます。 そのため SQL の SELECT 句で AS によって列名を日本語化することが出来ます。 ただし、 modified や description など特定の用途に使用される列名 (See TracReports) は変更すると表示形式が変わってしまいます。
レポートの検索結果画面やチケット閲覧画面での、チケット属性の値については、 データベースの値をそのまま使用しているため、一部の属性は翻訳することが困難です。
- ステータス (Status): チケットの状態遷移がハードコードされている
その他の属性は、 trac-admin コマンドで変更することで日本語化できますが、 プロジェクト毎に必要となる用語は異なるでしょうから、 Trac-Ja では翻訳対象と していません。
Trac-Ja の概要
Trac 配布物を日本語に翻訳しました。Trac の用語は TracTermsJa に示した通りとなっています。
配布は InterAct Web サイト公開資料ページ で 行っています。
Trac のバグ
オリジナル配布に存在するバグについて記載しておきます。
- LC_TIME にマルチバイト文字が含まれるロケールを使用すると、
タイムラインやマイルストーンでの日付入力がエラーになる。
( 本家チケット 2182 に パッチがあります。 本家マイルストーン0.10で 対応される予定です) - utf-8 以外の charset を使用するコンソール (Windowsを含む) では、
trac-admin コマンドでの非 ASCII 文字の表示が文字化けする。
( 本家チケット 2394 に 暫定パッチがあります。このパッチでは文字列長を考慮していないため、 表示上のカラム位置にばらつきが発生しますが、とりあえず読めるようには なります。) - コンポーネント名などに半角空白文字を 2 つ以上続けて書くと動作がおかしくなる。
- priority を全て削除すると、ロードマップでの iCalendar 出力に スタックトレースが含まれ、不正フォーマットになる。
- チケットの概要で 1 文字目の空白文字が削除される。
本家チケット 2285 参照
(trac-0.9.1 で対応されましたが、trac-0.9 で作成したチケットでは、 データベース登録時に1文字目の空白文字を削除しているので、この現象は解消されません。) - マルチバイト文字列の折り返しや切り取りで境界文字が文字化けすることがある。
( 本家マイルストーン0.11 で 対応される予定です) - 0.9 で作ったプロジェクト環境では、優先度 (priority) のデフォルト値が
0.8.x 以前と異なる。
( 本家チケット 1861 によると、 今後はこれがデフォルトになるようです) - レポートによっては、例外が発生することがあります。詳細は、 本家チケット 2773 , TracUpgrade 参照を参照してください。
- 引数を受け取る WikiMacros では、各マクロで引数のサニタイズを行わないと 脆弱性の元になります。 Trac および Trac-Ja の配布に含まれるマクロでは サニタイズが行われていますが、 Trac Hacks などからマクロやプロセッサを 導入する際には、引数がサニタイズされているか確認してから使用するように してください。
これらのバグは、今後のオリジナルのリリースや、 Trac-Ja のリリースで解消されるかもしれませんが、 現状では修正されていません。
See also: TracTermsJa -- 対訳用語集