使用 R 会话启动 Emacs 并排 windows?
Start Emacs with R session and side by side windows?
我很不擅长自定义emacs。我希望如果我从一个以“.r”结尾的文件开始,emacs 开始最大化,两个 windows 并排(框架的垂直划分),一个是我的源代码文件,另一个是ESS R 解释器。如果我能理解这个例子,也许我可以将它推广到其他扩展和模式。我还是不懂 elisp 中 hooks 的语法。
通常使用 Emacs 的方法是始终使用它 运行 而不是
一直打开和关闭它。
我建议您定义一个函数,使现有的 Emacs
看你想要的样子:
(defun my-R-window-configuration ()
"Prepare the current emacs frame for R work."
(interactive)
;; maximimize the current frame:
(set-frame-parameter nil 'fullscreen 'maximized)
;; keep just the current window, presumably containing the R code
(delete-other-windows)
;; create ESS R interaction buffer and go there
(ess-switch-to-end-of-ESS)
;; go back to the code
(other-window 1))
现在您可以在 R
缓冲区中执行 M-x my-R-window-配置 RET 以获得您想要的内容。
我很不擅长自定义emacs。我希望如果我从一个以“.r”结尾的文件开始,emacs 开始最大化,两个 windows 并排(框架的垂直划分),一个是我的源代码文件,另一个是ESS R 解释器。如果我能理解这个例子,也许我可以将它推广到其他扩展和模式。我还是不懂 elisp 中 hooks 的语法。
通常使用 Emacs 的方法是始终使用它 运行 而不是 一直打开和关闭它。
我建议您定义一个函数,使现有的 Emacs 看你想要的样子:
(defun my-R-window-configuration ()
"Prepare the current emacs frame for R work."
(interactive)
;; maximimize the current frame:
(set-frame-parameter nil 'fullscreen 'maximized)
;; keep just the current window, presumably containing the R code
(delete-other-windows)
;; create ESS R interaction buffer and go there
(ess-switch-to-end-of-ESS)
;; go back to the code
(other-window 1))
现在您可以在 R
缓冲区中执行 M-x my-R-window-配置 RET 以获得您想要的内容。