2015-10-03 118 views
2

我有一个C红宝石扩展,我用rdoc文档。有rdoc解析的C文件和ruby文件。堆场和C扩展

院子里能做同样的事情吗?有没有一种“简单的方法”,(我的意思是一种常用的方式)从rdoc迁移到院子里?

+0

是Yard可以记录C文件。你能展示一个你当前C文档的样本吗?到目前为止,您对转换有什么看法?你确定你甚至需要转换任何东西,Yard是rdoc的扩展。 。 。你是否试图用'yardoc'呈现你当前的文档? –

+0

是的,我在主目录(https://github.com/cedlemo/ruby-clangc)尝试'yardoc',但没有成功,我使用rake rdoc来生成我的文档,您可以在链接中看到Rake文件我给你。 – cedlemo

回答

2

正如@Neil斯莱特说,堆场可以解析的RDoc风格的文档有一个例外是从的RDoc:call-seq标签。它的当量是@overload院子。 (见rdoc, darkfish, and the :call-seq: tag

对我来说,我用了一个Rake任务,以生成RDoc文档:

require "rdoc/task" 

RDOC_FILES = FileList["README.rdoc", "ext/clangc/clangc.c", "ext/clangc/constants.c", "ext/clangc/class_Index.c", "ext/clangc/class_TranslationUnit.c", "lib/clangc.rb"] 

Rake::RDocTask.new do |rd| 
    rd.main = "README.rdoc" 
    rd.rdoc_dir = "doc" 
    rd.rdoc_files.include(RDOC_FILES) 
end 

我只是要推出rake rdoc

为了使用堆场相反,我只需要创建一个这样的Rake任务:

require "yard" 
YARD_FILES = FileList["ext/clangc/clangc.c", "ext/clangc/class_Index.c", "ext/clangc/class_TranslationUnit.c", "lib/clangc.rb"] 

YARD::Rake::YardocTask.new do |t| 
    t.files = YARD_FILES # optional 
    t.options = %w(-o yard_documentation --readme README.rdoc) # optional 
end 

然后我用rake yard。仍然有一些错误,但这是一个很好的开始。