5

我按照 ess 手册中的说明将 emacs-snapshot 与 ssh.el 包一起使用。

有几种方法可以打开 R 会话,但我是这样做的:

  1. 打开 emacs
  2. Cx Cf /server:dir/file.R 这让我进入 ESS [S] 模式
  3. 输入“情节(1)”
  4. 抄送 Cn 运行
  5. emacs 要求起始目录,我选择 /server:dir/
  6. 我想弹出一个数字,但它不会。

在 shell 或 tramp 模式下使用 ess-remote 时,这也不起作用,但如果我将起始目录设置为本地桌面,它确实有效。

非常感谢任何建议。我目前的解决方法是将文件打印为 pdf,然后在 DocView 模式下打开 pdf,但这需要一些额外的步骤并且速度很慢。

4

2 回答 2

13

我反其道而行之:

  • ssh -X some.server.com使用 x11 转发连接到远程服务器。

  • emacsclient -nw重新启动一个已经在运行的 Emacs 会话

  • plot(cumsum(rnorm(100)))像往常一样在R中

然后绘图窗口出现在我ssh离开的初始机器上。

编辑:作为评论的后续行动:这适用于任何emacsemacsemacs-snapshot。很长一段时间我都在使用(server-start)~/.emacs但现在我更喜欢(仅一次)lauch emacs --daemon,之后我可以连接到 via emacsclient(它也以 形式存在emacsclient-snapshot)。我真的很喜欢这个——它在我连接、断开和重新连接的持久会话中为我提供了围绕 R 的 Emacs。

于 2010-11-10T23:56:27.860 回答
3

我选择了 Dirk 的答案,因为他为我指明了正确的方向,尤其是降低了可视化数据所需的激活能量,但在这里我将详细介绍如何在我的桌面上使用它。

1)设置 ssh 密钥对(我以前做过,这里有 Ubuntu 的完整说明

mkdir ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa
ssh-copy-id username@hostname

2) 在 ~/.ssh/config 中包含以下内容

Host any_server_nickname
HostName  hostname
User username
ForwardX11 yes

3)在本地机器上打开emacs

4) Cx Cf

5) /any_server_nickname:dir/file.R 用于主目录中的文件或 /any_server_nickname:/path/to/file.R

6) 情节(1)

7) Cx Cb 评估整个缓冲区。

替代文字

于 2010-11-11T15:48:38.613 回答