0

我的问题是关于 ruby​​-doc.org 文档,但也与 ruby​​ 中的 ri 文档查找有关。

我已经阅读了几十个关于 ri 不起作用并给出“未知”消息的类似问题/答案,并且我试图遵循一些旧的建议。似乎那些旧答案不适用于我。一种是从 ruby​​ 根目录安装 rdoc --all --ri。我试过了,但失败了(无法转换为 UTF8 或类似的东西)。另一个建议 Windows 安装程序的 ruby​​installer 不再包含该信息,我应该使用在线文档,当我转到http://ruby-doc.org/downloads/时,我发现我正在使用的版本( 2.4.4) 不存在。

这很奇怪,因为 ruby​​installer 网站明确表示,如果我是 Ruby 新手(我是),我应该安装 2.4.4。你会认为如果任何版本都有好的文档,那就是那个版本。相反,它似乎完全消失了。

这一切都开始了,因为我正在尝试学习 Ruby,并且正在观看 Kevin Skoglund 的 Lynda.com Ruby 课程,该课程在许多版本之前录制,在该课程中他提到了 shell 中的 ri 命令,而在我的版本中没有不工作。见下文:

ruby --version ruby​​ 2.4.4p296(2018-03-28 修订版 63013)[x64-mingw32]

ri --version ri.cmd 5.0.0

ri 字符串 对字符串一无所知

现在,如果在使用 ri 的 ruby​​ 中它不可用,而我必须使用在线文档,并且我的版本缺少它,而它恰好是推荐给新用户的版本,......你会看到我的挫败感。

这就是我真正想要的... 1. 我想使用 ri 并让它工作。2. 如果这不可能,我想知道我的版本的文档在哪里,因为它不是应该在的地方。

任何帮助表示赞赏。如果它涉及安装任何东西,让我知道如何做到这一点也很感激。正如我所提到的,我是新人。

4

1 回答 1

0

由于您使用的是 RubyInstaller,因此我假设您使用的是 Windows。

我会说我不是 100% 的,但我对这个答案非常有信心。

  • “使用 2.4,而不是 2.5”是由于首次发布 Ruby 2.5 时 Ruby Gem 出现错误,因为我恰好在当时安装 Ruby 的 Windows 机器上,这就是当时不使用的原因最新的 2.5 版本。
  • 上述原因已得到纠正。

实际上,如果您是初学者,只要您使用与您的版本(2.0+ - 2.4-ish)接近的文档,就可以了。现在很明显,我不应该提供这个免责声明,尽管如果我不这样做,我会避免不可避免的否决票,这不是 100% 完美的解决方案,并且会有非常小的差异。作为初学者,您遇到任何这些差异的可能性非常低,低到不必担心。每种语言都有缺失且文档记录不佳的部分,Ruby 也不例外。通常这些是较少使用的类(尽管 Ruby Fiddle 是一个例外,我讨厌它的文档记录如此糟糕),并且在您学习语言的基础和核心时不会对您的学习过程产生影响。

在我的记忆中,“核心”是相当有据可查的,只要你使用 2.0+ 的文档(越接近 2.4 越好),你应该完全没问题,而且完全一样。“标准库”可能会更受欢迎或失败,您的里程可能会有所不同,但仍然没有太极端。

因此,为了解决您问题的第二部分,不要太担心找到您正在使用的文档的确切版本。它甚至可能不存在于网上,尽管安装程序应该提供了一个 CHM 帮助文件(会有一个快捷方式,其中包含 Ruby、IRB 等的快捷方式。

至于“为什么” ri 不起作用,我又不是 100% 确定。我在 ArchLinux 上,甚至没有构建 RDoc。老实说,RDoc 被更新的(和 IMO 更好的)文档引擎(即 YARD)搁置了。我做的并且更喜欢的一个可能的解决方案是在我安装 Ruby 之后立即安装 YARD gem:

gem install yard

然后在 CMD 中设置 YARD 以生成我的文档:

yard config --gem-install-yri

如果您决定走这条路,可以在这里了解更多信息。

它的好处是它还支持 RDoc 并且向后兼容。

于 2018-07-04T09:48:51.453 回答