以下の組み合わせでは、Redmine.JPサイトのFAQRedmine.JP | PDFおよびCSVの文字化けを回避するにある設定をしても、日本語の文字化けが解消されません。
解決策は、Rubyのバージョンを上げることです。もともとRedmine 0.8でサポートされるRubyは1.8.6/1.8.7なので、1.8.5では不具合があるかもしれません。
CentOS 5.3でRubyをバージョンアップする
Redmineは、Apache上で動かしたいので、野良ビルドしたRubyをむりくりPATHをいじりまわして使うのも避けたく、RPMパッケージとして作成して入れることにしました。
以下ページに、Fedoraの先端からソースRPMパッケージを持ってきて、CentOS 5.3でビルドできるよう修正してRPMパッケージを作成する手順を書きました。
RPMを更新してRedmineをとりあえずWEBrickで動かして確認したところ、PDF出力の日本語は化けずに表示されていました。
rubygemsなどは、EPELのものを持ってきているのですが、Rubyのバージョンを1.8.7にしてもRedmineに関しては動いています。
追記)一部文字化けが発生
チケットによってはPDF出力の際、一部文字化けが発生します。パターンが見えていませんが、UTF-8の文字列がそのままPDFに出されているように見えます。改行の次に発生するようです。
redmine PDFで調べまわると、0.8.xでの修正方法としては、以下ページに記載の修正がよさそうに思いました。
http://www.maruhisa.org/2009/07/redmine_pdf_problem/
このページの修正を、lib/redmine/export/pdf.rbに反映しましたが、チケットのPDFリンクをクリックするとapache内部エラー(500)になり、redmineのログを見ると以下エラーが発生していました。
pdf.rb NoMethodError (private method `gsub' called for nil:NilClass)
そこで、pdf.rbの修正のうち、gsub部分を以下に変えてみたところ、うまくいっているようです。
txt.gsub(/\\/, "\\\\\\\\") if txt
なお、上記ページの修正(pdf.rb)を、Ruby-1.8.5のマシンに適用すると、改行直前の1文字が場合によって豆腐になりました。
Redmine雑多
Redmineのインストールに別途Railsを入れる必要なし
RedmineはRailsで作成されています。Googleってみると、Redmineのインストールにあたって、わざわざRailsをインストールする手順を見かけますが、Redmine自体にRailsが含まれているので、Redmineを動かすだけならRailsのインストールは不要でした。
バージョン管理ツールの連携
1つのプロジェクトで1つのバージョン管理パス指定しかできないのが不便です。まあ、Bazaar連携が標準で入っているのはうれしいですが・・・。
チケットのTarget versionを日本語にしたい
プロジェクトにバージョンを定義すると、チケットに"Target version"欄が表示されるようになります。他の欄は日本語なのに、ここは英語のままです。探してみたところ、lang/ja.ymlファイルに以下記述がありました。
field_fixed_version: Target version
ここを、日本語名称に変えれば反映されます。しかし、適切な日本語はなんだろうか?「対応予定バージョン」かな?