24

我知道可以在没有文档的情况下安装 gem,但不幸的是,我在使用 ruby​​ 的前三个月没有安装。在那段时间里,我设法安装了大量的 gem,但自从我开始使用 ruby​​ 以来,我没有一次在我的计算机上使用过文档。我总是在互联网上寻找文档。

从我的计算机中安全删除文档的最佳方法是什么?另外,有没有办法将 ruby​​ 配置为默认不安装文档?

4

6 回答 6

59

运行这个命令:

rm -r "$(gem env gemdir)"/doc/*

如果您使用 cygwin,则在 Windows 上

于 2012-04-19T14:38:58.510 回答
10

Gem 文档安装在 [RUBY]/lib/ruby/gems/doc 中,其中 [RUBY] 是您安装 Ruby 的目录(我的机器上是 C:/ruby)。

我不明白为什么你不应该只删除代表不需要文档的 gem 的文件夹:你总是可以重新生成它。

于 2009-11-29T11:45:34.917 回答
7

我知道有一个可以使用的 .gemrc 文件。

install: --no-rdoc --no-ri
update: --no-rdoc --no-ri

将两行放入其中。我相信您将 .gemrc 文件放在 $Home 目录中。

于 2012-08-18T03:19:26.837 回答
6

将其中任何一个复制并粘贴到与 Bourne 兼容的 shell 中:

删除本地安装 gem 的现有文档,仅限当前用户

(exec 1>&2; DIR="$(gem env gemdir)"; \
DOCDIR="$DIR"/doc; \
if [ -d "$DOCDIR" ]; then \
  echo "Contents of '$DOCDIR': "; ls "$DOCDIR"/; echo ''; \
  read -p "Do you really want to remove contents of RubyGems doc dir '$DOCDIR' ? [Yn] " ANS; \
  if [ "$ANS" = y ] || [ "$ANS" = Y ]; then \
    rm -rf "$DOCDIR"/*; \
  fi; \
fi)

删除所有全局安装的系统 gem 的文档

(exec 1>&2; for DIR in $(gem env path | tr ':' '\n'); do \
  DOCDIR="$DIR"/doc; \
  if [ -d "$DOCDIR" ]; then \
    echo "Contents of '$DOCDIR': "; ls "$DOCDIR"/; echo ''; \
    echo '!! Possibly removes system-provided gem docs, review carefully before continuing  ("n" if unsure or Ctrl-C to abort completely) !!'; \
    read -p "Do you really want to remove RubyGems doc dir '$DOCDIR' ? [Yn] " ANS; \
    if [ "$ANS" = y ] || [ "$ANS" = Y ]; then \
      sudo rm -rf "$DOCDIR"/*; \
    fi; \
  fi; \
done)

从现在开始阻止当前用户生成 gem 文档

使用现代 RubyGems:

(X='gem: --no-document'; \
touch ~/.gemrc && \
grep -q "^$X$" ~/.gemrc || echo "$X" >> ~/.gemrc)

使用旧的 RubyGems:X='gem: --no-ri --no-rdoc' ...

于 2015-11-17T06:09:37.360 回答
4

我无法回答您问题的第一部分(我自己也有同样的问题),但我设法默认不安装文档。

您可以在gem 配置文件中指定一些默认命令行选项,您可以指定不生成文档(类似于 --no-rdoc 和 --no-ri)。

山姆

于 2009-11-29T11:32:41.537 回答
0

这个命令对我有用,可以删除由 install 安装的文档。

rm -r "$(gem env gemdir)"/doc/*

这是另一种解决方法;

要找到系统上安装 gems 的文件夹,只需在终端或 shell 上运行以下命令

gem env home

这将显示如下输出

/home/username/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0

然后,您可以找到 docs 文件夹并删除您在 ruby​​ 版本中为每个 gem 找到的所有文档

我也想将其添加到提供的答案中,

如果想防止 gems 在安装过程中生成文档,那么通过创建一个名为 ~/.gemrc 的文件来关闭本地文档生成,该文件包含一个配置设置来关闭此功能:

只需在终端或 shell 中运行此代码

printf "install: --no-rdoc --no-ri\nupdate:  --no-rdoc --no-ri\n" >> ~/.gemrc

或者

echo "gem: --no-document" > ~/.gemrc

这将防止 gem 在安装期间生成文档,从而为您节省以后在系统上删除/删除 gem 文档的压力。

就这样

我希望这有帮助。

于 2019-08-02T15:00:15.377 回答