如何让Emacs中的R缓冲区占据更多的水平空间?

7

当我启动ESS缓冲区时(使用M-x R),我的命令输出在列宽上只占大约60个字符的空间(特别是当显示具有长列名的数据帧时)。我想知道是否有一种简单的方法来调整这个限制。


4
不知道,但 options("width") 有帮助吗? - Ben Bolker
2个回答

7

Ben Bolker的评论是正确的:options("width"=200)是我在拥有宽屏幕的机器上使用的东西。

我不知道是否有一种环境变量可以将其报告给ESS以进行自动调整。这将是一个有用的补充。

就像options("width")一样,在启动时有些事情通常很有用,所以我目前在另一台机器上使用它。

edd@max:~$ cat .Rprofile
## Example of .Rprofile
options(width=155, digits=6, digits.secs=6)
## AER page vii
options(prompt="R> ")
## Default repo
local({r <- getOption("repos")
       r["CRAN"] <- "http://cran.r-project.org"
       options(repos=r)
})

嗨,再次见到你,Dirk!很棒,你第二个选项中的AER页面vii代表什么?只是好奇。。 - Palace Chan
1
我猜测"应用计量经济学与R"(在“AER R books”上谷歌的排名第一)。 - Ben Bolker
Ben和谷歌猜对了,Achim和Christian的书使用这个作为其代码示例,并且它也逐渐得到了我的认可。 - Dirk Eddelbuettel

7
以下内容将在R启动时将其选项“width”设置为您缓冲区的宽度:
(add-hook 'ess-R-post-run-hook 'ess-execute-screen-options)

请注意,此方法仅适用于最新的ESS 12.09版本。对于旧版本,请使用ess-post-run-hook。 另外,在最新的ESS中,您可以使用C-c h w RET执行此操作,或将其绑定到方便的键上。
(define-key inferior-ess-mode-map "\C-cw" 'ess-execute-screen-options)

可以将其设置为在窗口改变大小时执行,但我猜可能需要相当多的编程语言 Lisp。


太好了!那也很有用。 - Palace Chan
如果有一种解决方案可以在窗口大小改变时每次执行它,那就太好了!这也是RStudio的默认行为。 - Heisenberg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接