当我启动R环境时,我经常运行很长的R脚本.我希望能够在Emacs/ESS中加载/运行R脚本,并继续在另一个缓冲区中工作.
当我按下Cg或Cc Cc时,进程被中断,我必须重新启动脚本.
在ESS/Emacs中设置R流程的最佳方法是什么?
编辑:感谢您的回答和评论,但没有一个解决了当您加载/运行大型脚本并且无法更改缓冲区时Emacs冻结的事实.
我想我的问题更为笼统 - Emacs可以为您提供一个让您继续工作的流程吗?
Vit*_*hKa 20
ESS将R作为异步进程运行.你不需要背景任何东西.您可以运行几个小时的代码,并且仍然可以在ESS中不间断地工作.
你的问题似乎是另一回事.当您执行脚本时,您可以"明显地"执行它,即您执行的代码将打印到终端.这导致Emacs冻结.
设置ess-eval-visibly
为nil,大量的代码将立即发送给R:
(setq ess-eval-visibly nil)
Run Code Online (Sandbox Code Playgroud)
干杯.
[更新]
ess-eval-visibply
在最新版本的ESS中有一个新设置- 'nowait.它将您的代码放在较差的缓冲区中,然后将其发送到子进程.通过这种方式,您可以在不等待子进程完成的情况下查看代码和所有输出.
[/更新]
归档时间: |
|
查看次数: |
2381 次 |
最近记录: |