1. 安装ESS

有两种方法可以安装,一种是直接使用系统自带的包安装系统,比如yum

# yum install emacs-ess

但是,有时可能不是ESS最新版本。所以,推荐第二种方法,使用Emacs自带的包系统,方便、更新及时,设置方法参考,安装ess包。

2. 使用ESS

  • 进入GNU Emacs界面之后,输入M-X R 即可进入R界面。在这个过程中,会询问是否在当前运行目录下运行R,可以选择在不同目录下运行。

    • M-x R
    1. 启动R。R运行的buffer因为是在Emacs编辑器下运行,所以称为inferior(Emacs文档中称之为iESS buffer)。
    2. C-u M-x R RET --no-save RET:启动R并且不保存。
    3. M-x ess-transcript-clean-region:清理R界面。
    4. C-c C-z:强制停止运行的R进程。
    • C-c C-x
    1. 代替ls()函数。
    2. C-c C-s:代替search()函数。
    3. C-c C-d:修改已经建立的对象,非常实用。
    • C-c C-n
    1. 把当前行送到R。
    2. C-c C-c:把当前段送到R。
    3. C-c C-b:把当前整个文件送到R。
    • C-c tab:自动补全R代码。
    • C-x o:滚动屏幕。
    • C--
    1. 自动给出R语言中特有的 <-
    2. C---:连按两下–,则可以显示下划线。
    • C-c C-o C-o
    1. 在函数头按下会激活ESS对R代码的注释功能。
    2. M-x customize-group RET ess RET:配置默认模板,如果需要插入空行,回车没用,猛戳空格。
    3. C-c C-o C-c:将代码注释为roxygen的##'开头格式,特别是注释example的时候很好用。
    4. C-c C-o p:光标跳转到注释段落开头。
    5. 大专栏  Emacs和ESS的使用技巧。

    6. C-c C-o n:光标跳转到注释所在函数段落结尾。
    7. M-q:整理roxygen注释,将多行注释压缩整理。

3. 高级设置

结合Emacs的自动补全、补全括号、颜色显示等功能,设置更加强大的ESS编辑环境。将附加环境设置添加到Emacs设置文件,比如~/.emacs。所需要的包使用M-x list-package安装。

  • 自动补全:auto-complete

  • 代码折叠:hs-minor-mode(系统自带)
  • 括号补全:smartparens
  • 括号颜色:rainbow-delimiters
  • 颜色显示:rainbow-mode

附加内容

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; auto-completion
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(require 'auto-complete)
(require 'auto-complete-config)
(ac-config-default) ;;;;;;;;;;;;;;;;;;;;;;;
; ESS set
;;;;;;;;;;;;;;;;;;;;;;;
(require 'ess-site)
(setq ess-use-auto-complete t) ;;;;;;;;;;;;;;;;;;;;;;;;
;open hs-mode
;;;;;;;;;;;;;;;;;;;;;;;
(add-hook 'ess-mode-hook 'hs-minor-mode) ;;;;;;;;;;;;;;;;;;;;;
;smartparens
;;;;;;;;;;;;;;;;;;;;;
(require 'smartparens-config)
(show-smartparens-global-mode t)
(smartparens-global-mode t) ;;;;;;;;;;;;;;;;;;;;;
;rainbow mode
;;;;;;;;;;;;;;;;;;;;;
(require 'rainbow-mode)
(dolist (hook '(ess-mode-hook inferior-ess-mode-hook))
(add-hook hook 'rainbow-turn-on)) ;;;;;;;;;;;;;;
;rainbow-delimiters
;;;;;;;;;;;;;;
(require 'rainbow-delimiters)
(add-hook 'prog-mode-hook 'rainbow-delimiters-mode)
(add-hook 'ess-mode-hook 'rainbow-delimiters-mode)

Emacs和ESS的使用技巧。的更多相关文章

  1. [emacs] org-mode的一些小技巧

    Table of Contents 1 快速输入 #+BEGIN_SRC … #+END_SRC 2 代码按语法高亮 3 导出成HTML时的一些问题和技巧 3.1 生成目录表 3.2 为每个分节的标题 ...

  2. slickedit的alias配置

    使用slickedit很喜欢它的多语言支持,可以快速查看变量的定义和结构.我一般写verilog较多,使用emcas很方便,但是感觉查看代码结构不太方便(也可能是我不会设置).所以希望能够在slick ...

  3. R2—《R in Nutshell》 读书笔记(连载)

    R in Nutshell 前言 例子(nutshell包) 本书中的例子包括在nutshell的R包中,使用数据,需加载nutshell包 install.packages("nutshe ...

  4. [emacs org-mode小技巧] org-indent-mode 让文档更容易阅读

    刚发现Emacs的org-mode里面一个叫做 org-indent-mode 的minor mode对于阅读org-mode文档很不错,版面看起来清晰多了: 从上图可以看到,org-indent-m ...

  5. emacs技巧

    Table of Contents "ctrl space"设置mark 同时在选中的各行行首添加相同内容 寄存器 跳转到某行 删除光标所在的空格和TAB或空白行 把TAB全部转换 ...

  6. emacs最简单入门,只要10分钟

    macs最简单入门,只要10分钟  windwiny @2013    无聊的时候又看到鼓吹emacs的文章,以前也有几次想尝试,结果都是玩不到10分钟就退出删除了. 这次硬着头皮,打开几篇文章都看完 ...

  7. Vim编辑器运用的五个技巧

    导读 如今 Vim 是每个人最喜欢的 Linux 文本编辑器,也是开发者和系统管理者最喜爱的开源工具.大多数人只是熟悉Vim的最最基本的操作,只能在终端使用 Vim 修改文本,但是它并没有任何一个我想 ...

  8. 手把手教你学会 Emacs 定制

    Table of Contents 1 前言 2 配置Emacs 2.1 设置界面 2.2 全屏以及最大化 2.3 设置周边 2.4 显示时间设置 2.5 设置日历 2.6 设置符合个人的操作习惯 2 ...

  9. Emacs 从入门到精通

    1 前言 不想再说废话了,既然你会阅读这篇文档,说明你多少对Emacs有 些兴趣,或者已 经非常熟悉Emacs的基础操作了,并且希望有所提高.因此我不需要再把"编辑器 之神,还是神的编辑器& ...

随机推荐

  1. Maven--设置Http代理

    <settings> ... <proxies> <proxy> <id>my-proxy</id> <active>true& ...

  2. JavaScript学习笔记 - 入门篇(1)- 准备

    为什么学习JavaScript 一.你知道,为什么JavaScript非常值得我们学习吗? 所有主流浏览器都支持JavaScript. 目前,全世界大部分网页都使用JavaScript. 它可以让网页 ...

  3. StringBuiler和StringBuffer的区别

    String.StringBuiler.和StringBuffer都是可以对字符串进行处理的类,他们3个的主要区别在于,运行的速度,还有运行时的线程安全问题. 运行速度方面,它们的快慢顺序依次为:St ...

  4. 吴裕雄--天生自然 pythonTensorFlow自然语言处理:Attention模型--训练

    import tensorflow as tf # 1.参数设置. # 假设输入数据已经转换成了单词编号的格式. SRC_TRAIN_DATA = "F:\\TensorFlowGoogle ...

  5. 吴裕雄--天生自然 PYTHON3开发学习:XML 解析

    <collection shelf="New Arrivals"> <movie title="Enemy Behind"> <t ...

  6. linux epoll ET边沿触发

    /***EPOLL ET 触发必须使用非阻塞,LT触发可以阻塞/非阻塞.*read 函数 非阻塞读需 忙轮寻 soket关闭返回0,循环读完数据*如果已经读完再读read返回 -1,errno=11( ...

  7. linux操作提示:“Can't open file for writing”或“operation not permitted”的解决办法

    在linux上使用vi命令修改一个文件内容的时候,发现无法保存,每次写完使用":q!"命令可以正常退出但是使用":wq!"命令保存文件并退出时出现一下信息提示: ...

  8. Web 手工测试

    day 1 学习目标: 熟练搭建本地测试环境 掌握熟悉项目的步骤和内容 掌握项目基本的测试流程 基础环境介绍: 项目环境的组成部分: 操作系统 windows win7 win10 Linux Cen ...

  9. P - Atlantis (线段树+扫描线)

      There are several ancient Greek texts that contain descriptions of the fabled island Atlantis. Som ...

  10. PAT甲级——1027 Colors in Mars

    1027 Colors in Mars People in Mars represent the colors in their computers in a similar way as the E ...