ri 和 rdoc 有啥区别
Posted
技术标签:
【中文标题】ri 和 rdoc 有啥区别【英文标题】:What is the difference between ri and rdocri 和 rdoc 有什么区别 【发布时间】:2011-04-08 07:38:38 【问题描述】:每当我安装 gems 时,我都会看到 ri 和 rdoc。我知道这是文档,但是两者之间有什么区别以及如何使用它们?
【问题讨论】:
【参考方案1】:RDoc [..] 是 Ruby 编程语言的嵌入式文档生成器。 [..] RDoc 包含在 Ruby 核心发行版中。
RDoc 还提供了用于创建 Ruby ri 数据文件的引擎。 ri (或多或少)是 Ruby 版本的手册页,从命令行提供 API 信息。
来自: http://en.wikipedia.org/wiki/RDoc
【讨论】:
那么ri
是手动阅读器,只能读取单一格式(ri
数据文件),而这样的格式是RDoc可以生成的格式之一?【参考方案2】:
要访问您的 gem 的本地 RDoc,请输入 gem server
并将您的浏览器指向 http://localhost:8808
。
如果您的 gem 的 RDocs 没有安装,gem rdoc --all
将为您的所有 gem 安装文档。
似乎不需要本地文档。许多开发人员故意跳过安装它以支持在线文档。但是,对于我们这些使用像 Rails 2 这样的遗留工具的人来说,它可以让我们快速轻松地找到正确的文档。
【讨论】:
自从得到这个答案后,我终于走出了石器时代,现在正在使用 Rails 4 开展一个项目。由于我不再需要本地文档,所以我按照 this question 中的说明进行操作默认情况下不会安装该文档。这使得安装 gems 和 bundle 更快。【参考方案3】:RDoc
自动从 cmets 和
你的代码结构。 https://github.com/rdoc/rdoc 这么想
多氧。使用它为您编写的代码生成自动文档。
ri
是离线帮助文件,例如,如果您没有互联网。 http://www.caliban.org/ruby/rubyguide.shtml#ri 想想perldoc
。当您对课程有疑问时使用它,例如 ri Enumerator
应该提出
枚举器
= 包括:可枚举(来自 ruby 核心)
(来自红宝石核心) -------------------------------------------------- ---------------------------- 允许内部和外部迭代的类。
可以通过以下方法创建枚举器。 * 内核#to_enum * 内核#enum_for * 枚举器.new
大多数方法有两种形式:块形式,内容是 对枚举中的每个项目进行评估,以及一个非块形式 返回一个包装迭代的新枚举器。
enumerator = %w(一二三).each puts enumerator.class # => 枚举器 enumerator.each_with_object("foo") 做 |item,obj| puts "#obj: #item" end # foo: 一 # foo: 二 # foo: 三 enum_with_obj = enumerator.each_with_object("foo") puts enum_with_obj.class # => 枚举器 enum_with_obj.each 做 |item,obj| puts "#obj: #item" end # foo: 一 # foo: 二 # foo: 三
这允许您将枚举器链接在一起............
【讨论】:
以上是关于ri 和 rdoc 有啥区别的主要内容,如果未能解决你的问题,请参考以下文章
我是不是因为没有为 gems 安装 ri 和 rdoc 而错过了啥?
rubygems 1.8.x 默认禁用 rdoc 和 ri 生成
如何将 RubyGems 配置为不安装 rdoc 或 ri [重复]