How can I use Emacs ESS mode with R markdown?

狂风中的少年 提交于 2019-12-03 01:28:47

问题


Is there a way to configure Emacs so that it recognizes (and allows execution of) R code chunks within R markdown (.Rmd) files similar to the way it recognizes code chunks in .Rnw (Sweave) or .org (org-mode) files?


回答1:


polymode is being developed which does/will allow you to write markdown with R chunks (for processing with knitr).

Instructions for setting up polymode+rmarkdown are in the README

It is not yet done, but is progressing. See also this discussion on the ess-help mailing list (gmane archive|mailing list archive)


Update: polymode has been released on MELPA, simplifying the installation process by using emacs' existing package mechanism. See the announcement on the ESS mailing list here.




回答2:


Download the zip for polymode from github.com/vitoshka/polymode or, if you are a "git guy", you might use:

git clone https://github.com/vitoshka/polymode.git

Add this function to your Emacs init file:

(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))

Now, if you already have ESS installed, just open your rmd file and type Meta-Xrmd-mode and watch the beauty of Emacs.

Update for MELPA users

polymode from MELPA uses a flat file structure. When you install from an Emacs repository via M-x list-packages or like facilities, you get your package files straight where they ought to, i.e.: (expand-file-name "~/.emacs.d/elpa"), therefore do comment the above load-path code:

;;  (setq load-path 
;;      (append (list "path/to/polymode/" "path/to/polymode/modes/")
;;          load-path))


来源:https://stackoverflow.com/questions/16172345/how-can-i-use-emacs-ess-mode-with-r-markdown

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!