[英]How can I use Emacs ESS mode with R markdown?
有沒有辦法配置 Emacs,以便它識別(並允許執行)R 降價 (.Rmd) 文件中的 R 代碼塊,類似於識別 .Rnw(Sweave)或 .org(組織模式)中的代碼塊的方式文件?
polymode正在開發中,它確實/將允許您使用 R 塊編寫降價(用於處理knitr
)。
設置 polymode+rmarkdown 的說明在README 中
它尚未完成,但正在進展中。 另請參閱 ess-help 郵件列表( gmane archive | mailing list archive )上的此討論
更新:polymode 已在 MELPA 上發布,通過使用 emacs 現有的包機制簡化了安裝過程。 在此處查看ESS 郵件列表上的公告。
下載的郵政編碼為polymode
從github.com/vitoshka/polymode或者,如果你是一個“混帳家伙”,你可以使用:
git clone https://github.com/vitoshka/polymode.git
將此函數添加到您的 Emacs init 文件中:
(defun rmd-mode ()
"ESS Markdown mode for rmd files"
(interactive)
(setq load-path
(append (list "path/to/polymode/" "path/to/polymode/modes/")
load-path))
(require 'poly-R)
(require 'poly-markdown)
(poly-markdown+r-mode))
現在,如果您已經安裝了 ESS,只需打開您的 rmd 文件並鍵入Meta - X rmd-mode
並觀看 Emacs 的美妙之處。
polymode
從MELPA使用平面文件結構。 當您通過Mx list-packages
或類似工具從 Emacs 存儲庫安裝時,您會直接將包文件放在它們應該放置的位置,即: (expand-file-name "~/.emacs.d/elpa")
,因此請發表評論上面的load-path
代碼:
;; (setq load-path
;; (append (list "path/to/polymode/" "path/to/polymode/modes/")
;; load-path))
其他答案已經過時了, polymode
現在提供了一個專門的包來處理.Rmd
文件。 只需使用來自 MELPA的poly-R
包,它的源代碼在 Github 上。
以下內容可以添加到您的init.el
或您使用use-package
的任何地方:
(use-package poly-R
:ensure t
:pin melpa-stable)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.