【发布时间】:2013-09-30 23:51:14
【问题描述】:
我最近使用 Vincent Goulet 在http://vgoulet.act.ulaval.ca/en/emacs/ 的 Windows 7 安装程序从 R 2.15 和旧版本的 ESS 升级。这包括 ESS 版本 13.09。我也刚刚安装了 R 版本 3.0.2。
我的旧工作流程是使用 C-c C-t(默认键绑定)通过 ess-execute 运行命令并将结果发送到临时缓冲区。我发现这对我的工作流程和 R 编程风格非常有用。
但是,在新版本中,此键绑定已被删除。我四处搜索,找不到有关此主题的任何其他线程。我查看了 ess-mode.el 并找到了这一行:
;; (define-key map "\C-c\C-t" 'ess-execute-in-tb)
注释掉了。我看到他们添加了很好的功能ess-describe-object-at-point,但这不允许执行命令。
我不是 emacs 高级用户,因此我倾向于将 lisp 片段复制到我的 .emacs 中并对其进行少量编辑。我尝试 (1) 取消注释上面的行和 (2) 在我的 .emacs 文件中定义一个新的键绑定与 ESSShift Enter (http://www.emacswiki.org/emacs/ESSShiftEnter) 中的新键绑定相同的位置。
(add-hook 'ess-mode-hook
(lambda()
(local-set-key [(shift return)] 'my-ess-eval)
;; added Ctrl-Enter to stay on same line
(local-set-key [C-return] 'ess-eval-line)
;; Newest version of ESS got rid of C-c C-t for ess-execute add back
(local-set-key "\C-c\C-t" 'ess-execute-in-tb))
但是,这些方法都没有奏效。
我的问题是:在新版本中禁用此键绑定是否有原因? IE。我应该使用一些其他功能来取代它吗?如果没有,再次启用此键绑定的最佳方法是什么?
【问题讨论】:
标签: r emacs key-bindings ess