如何自定义rdoc Darkfish样式表?

时间:2011-04-07 01:32:07

标签: css ruby rdoc

我正在使用Rake为我的项目生成RDoc文档,但我真的很讨厌Darkfish似乎生成的灰色灰色样式。我很满意其他一切,我只是想让配色方案更具可读性。

这是我的佣金任务:

Rake::RDocTask.new do |rd|
    rd.main = "README.rdoc"
    rd.title = "My Title"
    rd.rdoc_files.include("README.rdoc", "lib/**/*.rb")
    rd.options = ['--main', 'README.rdoc']
end

我已尝试将'--style', 'doc/rdoc.css'添加到上面的rd.options,但它抱怨--style是未知选项并忽略它。我似乎无法找到关于如何自定义模板或css等的任何文档;我只想忍受Darkfish认为好看的东西吗?

3 个答案:

答案 0 :(得分:1)

如果您查看Darkfish模板,您将看到的唯一CSS引用是这样的:

<link type="text/css" media="screen" href="<%= rel_prefix %>/rdoc.css" rel="stylesheet" />

其中一些人拥有rel_prefix而另一些则没有。包含其他样式表的任何模板都没有。据推测,您只需将着色更改应用于rdoc.css或手动编辑模板,以包含修改后的其他样式表。

更好的方法是将--style支持修补到Darkfish并向作者发送补丁。看起来你只需要在模板中添加一些额外的erb,一些开关解析逻辑,以及围绕self.render_templatelib/rdoc/generator/darkfish.rb的调用的新变量。听起来像这对Darkfish来说是一个有用的补充,作者甚至可能会高兴有人想让他的软件变得更好。

答案 1 :(得分:1)

难道你不能只抓取darkfish生成的.css文件的副本,然后进行修改,并将其存储在硬盘上的单独目录中。然后在你的rake任务中,只在rdoc完成时覆盖.css文件?

答案 2 :(得分:0)

Darkfish具有模板支持--template'your_template_name';我相信这将需要设置为rdoc插件宝石。

这也可能有所帮助:http://fossplanet.com/f14/making-rdoc-template-gem-26986/

RDoc插件gem表示具有以下目录结构的gem:

./lib/rdoc/generator/template/#{your template name and files copied from rdoc-2.blah/lib/rdoc/generator/template/darkfish}

./rdoc/generate.rb将上面的模板目录添加到$ LOAD_PATH之前。 ($LOAD_PATH.unshift(File.expand_path(File.join(Dir.pwd,'..','lib', "#{..... and so on}"