2

我开始使用 Emacs (ESS) 作为默认的 R 编辑器(是的,@Dirk,正如你所说,我想要 ESS),我必须承认它是迄今为止我使用过的最好的编辑器。 R但是,我无法将help()功能输出到网络浏览器。即使options(help_type = "html", browser = "firefox")已设置,它也会在单独的 R 缓冲区中继续显示帮助页面。

如何在使用 Emacs/ESS 时将帮助返回到浏览器?

4

1 回答 1

5

我可以在 Linux 下重现这一点:如果我从终端运行 R,设置options(htmlhelp=TRUE)会在浏览器中显示帮助,但它会从 ESS 失败。然而,

help("plot",htmlhelp=getOption("htmlhelp"))

有效——帮助在 Firefox 中为我打开。我认为这是一种异常行为—— htmlhelp=getOption("htmlhelp") 是帮助的默认参数(参见 ?help)。这可能是一个错误吗?.. 一个可能的解决方法是直接调用帮助help("plot",htmlhelp=T),或者编写一个像myhelp <- function(x) help(x,htmlhelp=TRUE).

编辑:一个可能的解决方案:把它放到你的 .emacs 中

(setq inferior-ess-r-help-command "help(\"%s\", htmlhelp=TRUE)\n")

根据https://stat.ethz.ch/pipermail/ess-debian/2009-October/000093.html。这指的是 ESS 5.5;Ubuntu 存储库中的当前版本是 5.4,因此我无法在不升级 ESS 的情况下测试修复。

EDIT2:我按照 Dirk 的建议升级到最新的 R/ESS,并在启动 R/ESS 后执行了以下操作:M-x customize-variable inferior-ess-r-help-command并将 help_type=text 替换为 help_type=html。这解决了问题(至少对于版本 2.10.1/ESS 5.8)。

于 2010-03-09T23:11:13.400 回答