从 emacs keybind 关闭 R plot window
Close R plot window from emacs keybind
每当我在 emacs ESS 中绘制 R 图形时,它都会打开一个新的 window。有直接从emacs关闭的命令吗?
我试图在我的 init.el 文件中使用
之类的东西创建一个键绑定
(setq ess-dev-off ‘(“dev.off()\n”)))
(eval-after-load “ess-mode”
‘(progn
(define-key dev-off “\C-cp” ‘ess-dev-off))
但当然是行不通的。关于如何为此定义我自己的键绑定的一些建议?
您可以使用 ess-send-string
,
将 R 代码发送到下级进程
(defun my-dev-off ()
(interactive)
(let ((proc (ess-get-process)))
(ess-send-string proc "dev.off()")))
(with-eval-after-load 'ess-r-mode
(define-key ess-r-mode-map (kbd "C-c p") #'my-dev-off))
如果你想将一个函数绑定到一个键绑定,该函数需要一个 interactive 函数,即。一个用 (interactive)
定义为它的主体中的第一个形式。
每当我在 emacs ESS 中绘制 R 图形时,它都会打开一个新的 window。有直接从emacs关闭的命令吗?
我试图在我的 init.el 文件中使用
之类的东西创建一个键绑定(setq ess-dev-off ‘(“dev.off()\n”)))
(eval-after-load “ess-mode”
‘(progn
(define-key dev-off “\C-cp” ‘ess-dev-off))
但当然是行不通的。关于如何为此定义我自己的键绑定的一些建议?
您可以使用 ess-send-string
,
(defun my-dev-off ()
(interactive)
(let ((proc (ess-get-process)))
(ess-send-string proc "dev.off()")))
(with-eval-after-load 'ess-r-mode
(define-key ess-r-mode-map (kbd "C-c p") #'my-dev-off))
如果你想将一个函数绑定到一个键绑定,该函数需要一个 interactive 函数,即。一个用 (interactive)
定义为它的主体中的第一个形式。