【问题标题】:R unix terminal pagerR unix终端寻呼机
【发布时间】:2012-06-22 16:03:03
【问题描述】:

我在 OS X 10.6 上使用 R,我更喜欢 unix 控制台而不是 R.app 来完成我的工作。如果我发出帮助命令,例如?print,帮助内容会通过寻呼机打开(我试过mostless),但是如果我退出它会隐藏内容,让我回到R 输入行。

我真正想要的是,即使在我将其退出回 R(点击 q)后,寻呼机输出仍保留在屏幕上。

我在其他基于 Readline 的 Cli(例如 psql)上得到了这种期望的行为,但在 R 上却没有。任何关于如何配置的提示将不胜感激。

【问题讨论】:

  • 也许,例如help(print, help_type="pdf")options(help_type="html"); ?print。这有帮助吗? :-)
  • 谢谢这绝对有帮助:) 但我真正想要的是寻呼机 (less) 问题的解决方案..
  • 您是否尝试过使用更少的-X?例如,options(pager="/bin/less -X")(或 OS X 放置 less 二进制文件的任何位置)。
  • @Jason,这就是我的问题的答案!谢谢
  • 很高兴听到。那么,我将把它作为问题的答案。

标签: r readline less-unix


【解决方案1】:

R 使用的控制台寻呼机可以通过options 函数进行设置。使用less-X 选项在退出时禁止终端清除。因此,如果 less 二进制文件位于 "/bin" 中(不确定它在 OS X 中的位置),这应该可以:

> options(pager="/bin/less -X")

如果您希望这是每次启动 R 时的默认行为,您可以将上述命令放在您的 ~/.Rprofile 文件中,该文件会在启动时自动运行。

或者,您可以在~/.bashrc 中设置export LESS=-XF,这将对所有使用less 作为寻呼机的程序产生影响。如果内容小于一页,F 选项会进一步退出,我觉得这非常有用。

【讨论】:

  • 出于某种原因,它仅适用于帮助页面。同样可以应用于变量输出吗?我记得如果不适合屏幕,Octave 用于将输出重定向到寻呼机。在 R 中有可能吗?
  • df <- data.frame(matrix(rnorm(1000), ncol = 3)) <br/> page(df, method = "print")
猜你喜欢
  • 2012-01-19
  • 1970-01-01
  • 2011-03-31
  • 2012-09-03
  • 1970-01-01
  • 2022-11-18
  • 2015-07-27
  • 1970-01-01
  • 2011-06-07
相关资源
最近更新 更多