学习Gnu Emacs 读书笔记

学习Gnu Emacs 读书笔记

学习Gnu Emacs 读书笔记

1 Emacs的基本概念

快捷键命令功能
C-x C-vfind-alternate-file读取另一个文件来代替刚才诗篇的那一个。
C-x i输入文件。
C-x C-ffind-file查找文件并且打开它。
C-x C-ssave-buffer保存文件.
C-x C-wwrite-file把缓冲区内容写入一个文件。
C-x C-csave-buffers-kill-emacs退出emacs
C-hhelp-command进入emacs的在线帮助系统。
C-h f
C-h k
C-h t
C-h i

2 文件编辑

快捷键命令功能
ESC x goto-line n RET把光标移动到文件的第N行
ESC x goto-char n RET把光标移动到文件的第N个字符
ESC 500 C-n光标移动500行,ESC n 是重复执行命令的意思。
C-uC-u 等于4, C-u C-u 等于16次重复的意思。
C-x u撤消; 同命令还有: C-_ C-/
ESC - C-k删除行首到光标位置之间的东西。
ESC dkill-word删除光标后面的单词。
ESC DELbackward-kill-word删除光标前面的单词。
ESC kkill-sentence删除光标后面的句子。
ESC y恢复上次删除的操作内容。
C-ttranspose-chars交换两个字符的位置。
ESC ttranspose-words交换两个单词的位置。
C-x C-ttranspose-lines交换两个文本行的位置。
ESC ccapitalize-word把单词的首字母改为大写。
ESC uupcase-word把单词的字母全部改为大写。
ESC ldowncase-word把单词的字母全部改为小写。
ESC - ESC cnegtive-argument; capitalize-word把前一个单词的首字母改为大写。
ESC - ESC unegtive-argument; upcase-word把前一个单词的字母全部改为大写。
ESC - ESC lnegtive-argument; downcase-word把前一个单词的字母全部改为小写。
ESC x overwirte-mode RET文本的改写模式,再次输入则取消。实际上直接输入: ESC x ov 用TAB键可以补全。
C-x C-w文件另存为.

3 查找和替换操作

快捷键命令功能
C-sisearch-forward向前递增查找
C-risearch-backward向后递增查找
C-s C-w可以把从光标位置到下一个标点符号或者空格符之间的文本都复制到查找字符串里面去。
C-s C-y光标位置到行尾之间的文本都复制到查找字符串里面去.
C-s ESC y可以把删除环里面的文本复制到查找字符串去。而且在用过这条命令之后,还可以用 ESC p ESC n 进来上下条目查看。
C-s RET C-wword-search-forward单词查找。
C-r RET C-w单词查找。
ESC x replace-string RET recieve RET receive RETEmacs将从光标位置开始,把文件里面所有出现查找字符串(recieve)的地方都替换掉。如果想对整个文件做替换,则使用命令之前移动 ESC < 位置即可。

3.1 查询与替换 (ESC % recieve RET receive RET)

键盘操作动作
ESC %开始查询-替换操作。
SPACE 或 y用新字符串替换查询字符串searchstring, 然后前进到下一个位置。
DEL 或 n不替换; 前进到下一个位置。
.在当前位置做替换后退出查询-替换操作。
,替换并显示替换情况(再按空格键或 "y" 后才移动到下一个位置。)
!对后面的文件内容全部进行替换,不再提问是否要进行替换。
^返回上一次进行了替换的位置。
RET 或 q退出查询-替换操作。
C-r进入递归编辑状态。
C-w删除此处内容并进入递归编辑状态。
ESC C-c退出递归编辑状态,继续完成查询-替换操作。
C-]退出递归编辑状态和查询-替换操作。

3.2 删除命令

快捷键功能
C-d向前detele字符
DEL向后detele字符
ESC d向前delete到字首
ESC DEL向后delete到字尾
ESC 0 C-k向前delte到行首
C-k向后delete到行尾
C-x DEL向前delete到句首
ESC k向后delete到句尾
ESC - C-M-k向前delete到表达式首部
C-M-k向后delete到表达式尾部
C-wkill 区域

3.3 标记(Marking)

快捷键功能
C-SPC (C-@)标记当前位置
C-x C-x以字符为单位使用移动命令动态标记区域
ESC @以字为单位使用移动命令动态标记区域
ESC h标记一段
C-x C-p标记一页
ESC C-@标记一个表达式
ESC C-h标记一个函数
C-x h标记整个缓冲区

3.4 缩进格式

快捷键功能
TAB缩进当前行(与模式有关)
ESC C-\缩进区域(与模式有关)
ESC C-q缩进表达式(与模式有关)
C-x TABIndent region rigidly arg. Columns
C-o在光标后插入一个新的行(有点像vi的'o')
ESC C-o静态地将一行下移
C-x C-o删除光标附近的空行(留下一行)
ESC ^与上一行合并成一行
ESC \删除光标附近的所有空格
ESC SPC删除光标附近的空格(留下一格)
ESC qFill paragraph
C-x fSet fill column
C-x设置每一行开始的前缀

3.5 递增查找

  • 在查找过程之中想取消查找可以需要按 C-g C-g .
  • 用复制办法得到的查找字符串会把原文中的大写字母都转换成小写字母。

4 使.emacs立即生效

ESC x eval-current-buffer

Go On. heheh

Date: 2012-12-23

Author: liweilijie

Org version 7.9.2 with Emacs version 23

Validate XHTML 1.0
原文地址:https://www.cnblogs.com/liweilijie/p/2830153.html