8

我之前问过如何在 ESS 中切换 R 会话,使用C-x C-s大大加快了我的工作流程。

但是,如果我有多个 R 会话(即使只有 3 个),可能很难记住哪个 on 是R,哪个是R:2,哪个是R:3。有没有办法让 ESS、Emacs 或 tramp 根据运行 R 的服务器/目录自动命名不同的 r 会话?

4

2 回答 2

6

[更新]

新版本的 ESS (> 12.09) 对缓冲区名称而不是内部进程名称进行操作。现在你可以重命名你的劣质缓冲区,M-x rename-buffer这将做正确的事情。您还可以配置ess-gen-proc-buffer-name-function为在启动时设置进程缓冲区的自动自定义重命名。

[/更新]

R, R:2 etk 是 ESS 中的进程名称。大约一年前,我在 ess 邮件列表上问过这个问题。似乎没有直接的方法可以改变这种行为。这是一个 emacs 功能而不是 ESS。您可以更改与进程关联的缓冲区名称,但进程名称将保持不变。

据我所知,Uniquify 会更改缓冲区名称。在任何情况下,最近版本的具有相同文件名的 emacs 缓冲区都被指定为部分路径,以使其唯一。所以看起来 uniquify 被用于文件的基本 emacs 中,但不适用于 proc 名称等其他东西。

于 2011-01-13T09:50:01.080 回答
2

不确定自动重命名(你可以在 ESS 邮件列表中询问),但我有时会使用M-x rename-bufferwhich 来完成它应该做的事情。

于 2011-01-04T02:10:40.903 回答