rake doc:appを日本語化
rake doc:app でRDocを作ると、charset=iso-8859-1 のHTMLができてしまうので、これをUTF-8に変えたい。
RailsアプリのRDoc生成コマンド、rake doc:appでは、生成HTMLが
iso-8859-1になってしまい、ヒジョーに不便。
とできるから、rakeからrdocに、このオプションを渡したいのだけれど、
とはできない。そんなオプションがナイと怒られる。
を見ても、Rakefileをみても追加オプションなんて指定できそうにないし、どーすりゃいいんじゃー・・・ということで、Railsのソースをおいかけることになってしまいました。
方法、2つ見つけました。
/ruby/lib/ruby/gems/1.8/gems/
rake-0.7.2/lib/rake/rdoctask.rb
を開いて、
:
@options = ["-c","UTF-8"]
:
end
これでOKです。rakeのバージョンが変わるたびに、いじりなおすことになるので、ちょっとダサい感じですが、簡単。UTF8以外では仕事しないっていう人は、こうしておけばいいかも。
/ruby/lib/ruby/gems/1.8/gems/
rails-1.2.3/lib/tasks/documentation.rake
を
/your_railsapp/lib/tasks
にコピーして、下の部分を変える。
rdoc.rdoc_dir = 'doc/app'
rdoc.title = "はじめてのRailsアプリ"
rdoc.options << '--line-numbers' << '--inline-source' << '-c UTF-8'
rdoc.rdoc_files.include('doc/README_FOR_APP')
rdoc.rdoc_files.include('app/**/*.rb')
rdoc.rdoc_files.include('lib/**/*.rb')
}
これだとRailsやRakeのバージョンに依らず、自アプリだけで管理できます。他にもいろいろと自由になるし、rakeタスク自作の練習にもなるので、いい方法。
くそぉ、こんなところに隠れてやがったかって感じです。でもよく読んだら、Rakefileの1行目にしっかりと
# Add your own tasks in files placed in lib/tasks ending in .rake,
と書いてありました。やっぱりまだ、Railsは日本人に優しくナイですな。

