如何安装Ruby ri文档?

时间:2010-07-05 10:54:25

标签: ruby

我最近在Windows 7上安装了Ruby 1.9.1,显然它没有附带标准的ri文档。所以当我做'ri Array'时,我得到:

C:\>ri Array

Nothing known about Array

我有没有办法安装这个文档以便以上工作?

8 个答案:

答案 0 :(得分:32)

如果其他平台上的人需要安装他们的ri文档(就像我一样)。本文给出了原因和方法:

http://jstorimer.com/ri.html

命令是:

gem rdoc --all --ri --no-rdoc

答案 1 :(得分:21)

如果您使用 rvm ,则应rvm docs generate(或仅rvm docs generate-ri

请参阅this info (2011August)有关rvm和ri

的信息

答案 2 :(得分:7)

所提议的解决方案都不适合我。最后我找到的解决方案非常简单,所以我将它留在这里。 (我在win7 x64上运行ruby 2.2.4,如果相关的话)

(队长明显警告:必须安装红宝石并在你的路径中)

-open cmd

-$ gem install rdoc-data

-$ rdoc-data --install

你就定了!通过运行测试它是否有效:

-$ ri Array它应该为你提供课堂上所有可爱的文档!

希望这有帮助!

PS。我刚刚注意到这是Luis Lavena在评论中提出的解决方案,但他的评论对我来说并不清楚,所以我继续搜索。基本上这是相同的解决方案,但解释得更清楚,以免其他人发生:)

干杯!

答案 3 :(得分:6)

似乎你有RubyInstaller项目分发的安装程序Ruby 1.9.1。

您可以使用安装程序附带的Windows帮助文件(CHM)代替ri文档。

RI文档的问题在于某些版本的RDoc在生成它时遇到问题,并且还生成了超过10,000个文件,这大大降低了安装程序的速度。

答案 4 :(得分:4)

RVM不会自动生成和安装每个Ruby的ri / rdoc文档。您可以使用以下命令生成: rvm docs generate

答案 5 :(得分:2)

Ruby Installer 2。4。1。2(2017年)的情况基本相同。如果我运行ri Array,则会显示Array < Object,而不显示任何其他内容。如果我运行ri "Array#each",我会得到熟悉的“Nothing known ...”消息。简而言之,缺少关于Ruby核心和标准库的ri格式文档。

以下是我获取core / stdlib ri文档的副本。当然,必须在此之前安装Ruby。

  1. their Github releases page获取与我的版本最匹配的ruby源代码。
  2. 将.zip或.tar.gz存档解压缩到某个文件夹
  3. 打开cmd.exe / Powershell,cd到该文件夹​​并运行rdoc --all --ri
    • 此命令以递归方式解析当前目录中的.c文件,.rb文件和其他一些文件类型,并生成到~/.rdoc目录的ri文档。
    • 使用i7-3520M处理器在笔记本电脑上花了大约5分钟完成,没有任何错误。
  4. 删除存档和包含源代码的目录,因为我们不再需要它们了。
  5. 现在,如果您尝试运行ri Arrayri "Array#each",您将获得所有荣耀的文档。

    TL;博士

    在包含与安装版本相同的ruby版本的源代码的目录上运行rdoc --all --ri

    附录Z:对其他答案的评论

    1. rvm docs generate-ri可以使用,但您必须在Windows上使用Cygwin或Ubuntu(如果在Windows 10上)才能使用rvm
    2. gem rdoc --all --ri --no-rdoc为您的所有宝石安装ri-documentation。它不会安装core / stdlib文档。
    3. gem install rdoc-data后跟rdoc-data --install仅适用于最高2.3.0的Ruby版本。

答案 6 :(得分:0)

所有Ruby文档均位于http://www.ruby-doc.org

所以数组文档位于:

http://ruby-doc.org/core/classes/Array.html

从来没有在Windows上尝试过,但是因为它说没有知道关于X的事情并不是因为它没有安装就没有得到任何东西。

尝试安装一个gem,然后ri GEM_CLASS,因为它应该提供防御,应该让我们看看它是否缺少文档或ri没有找到正确的位置

答案 7 :(得分:0)

您可能会在Docker下遇到此问题。 no documentation随附了官方docker映像,并且显然禁止安装gem文档。

如果图片和系统的ruby版本匹配(具体是RbConfig::CONFIG["ruby_version"],例如2.6.0代表ruby-2.6.1),您可以:

# apk add ruby-doc
# cp -r /usr/share/ri /usr/local/share/ri