Emacs技巧收集
Contents
Emacs中的按键说明
C-
: 意思是按住 Ctrol 键- `M-’: 意指 Meta 键 (在大多数键盘上指 Alt 键)
- `DEL’: 意指退格键 (不是 删除(Delete) key)
- `RET’: 意指回车键
- `SPC’: 意指空格键
- `ESC’: 意指Escape键
- `TAB’: 意指Tab键
获取帮助
按下 C-h
后, 接着按以下
k
: 查看某键位的说明f
: 查看某函数的功能m
: 查看当前模式的键盘设置.w
: 查看某个函数设定到哪个键上a
: 查看包含某个字符串的所有函数
Undo 和 Redo
undo
`C-/` 或者 `C-_` 或者 `C-x u`
redo
`C-g C-/` 或者 `C-g C-_` 或者 `C-g C-x u`
redo 的思维就是 “undo undo”.
在光标处插入指定命令的输出结果
`C-u M-! 命令 RET`
打开 emacs 指南
C-h t
或者F1 t
或者M-x help-with-tutorial
如果你想看非英文的指南, 可以使用:
M-x help-with-tutorial-spec-language RET
然后选择你想看要看语种的指南.(有中文的哦)
替换
替换所有
完全匹配(非包含), 大小写敏感
M-x replace-string RET 要替换的字符串 RET 新的字符串 RET
包含匹配, 大小写不敏感
M-x replace-regexp RET 要替换的字符串 RET 新的字符串 RET
查询并替换
完全匹配, 大小写敏感
M-x query-replace RET 要替换的字符串 RET 新的字符串 RET
, 然后按y
或者n
, 决定是否替换.q 或者 RET
为退出.
包含匹配, 大小写不敏感
M-x query-replace-regexp RET 要替换的字符串 RET 新的字符串 RET
, 然后按y
或者n
, 决定是否替换.q 或者 RET
为退出.
搜索
向后搜索
C-r
或者M-x isearch-backward 搜索的字符串 RET
向前搜索
C-s
或者M-x isearch-forward RET 搜索的字符串 RET
统计行数
C-x l
插入一个 tab
有时候, 想输入一个tab字符, 但是tab已经有它自己的作用, 特别是在org-mode, 或者是markdown-mode下, tab表示缩略标题及它的内容.这时如果想插入一个原始的tab字符,一般情况下就不适用了.这时可以按以下的做
C-q TAB
C-q
表示下一个要输入的是原始(RAW)字符.
从当前光标开始删除到下一个指定的字符为止(包括这个字符)
zap-to-char(M-z)
也是vim里的ct
命令.
删除两个单词之间的空格
M-x cycle-spacing
或者 Alt+Space
Ubuntu下要禁用Alt+Space
快捷捷才行.
删除空白行, 只保留一行空白行:
C-x C-o
Emacs中的undo-tree
spacemacs:
M-m a u
命令叫undo-tree-visualize
使用:
b
:左分支
f
:右分支
p
:上一节点
n
:下一节点
q
:退出
删除行尾的空格
M-x delete-trailing-whitespace