Rdoc支持中文的解决方案

    ruby中rdoc的中文乱码问题主要有两个地方要修改。
    第一个地方/usr/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/tasks/documentation.rake
  Rake::RDocTask.new("app") { |rdoc|
    rdoc.rdoc_dir = 'doc/app'
    rdoc.title    = "Rails Application Documentation"
    rdoc.options << '--line-numbers' << '--inline-source'
    rdoc.options << '--charset' << 'utf-8'              #<--要多這一行
    rdoc.rdoc_files.include('doc/README_FOR_APP')
    rdoc.rdoc_files.include('app/**/*.rb')
    rdoc.rdoc_files.include('lib/**/*.rb')
  }

    不过我用的是rails2.3.5,这个问题升级以后已经修改过了。
    第二个地方在/usr/lib/ruby/1.8/rdoc/options.rb 中的
    @charset = case $KCODE
                 when /^S/i
                   'Shift_JIS'
                 when /^E/i
                   'EUC-JP'
                 else
                   'GB2312'
                 end

    将其中的GB2312(384行左右),改成utf-8即可。
    这个地方控制生成的html模板的编码。

    这两个地方如果没有问题,你使用rdoc生成的doc文档肯定就是utf-8的了,支持中文就没有问题。

    如果还有有问题,可能你改的位置不对,因为你可能装了多个版本的ruby。
    也可尝试查看rdoc的源码,然后跟踪一下,位置我的是在/usr/lib/ruby/1.8/rdoc/rdoc.rb

你可能感兴趣的:(html,Ruby,Rails)