Linux命令速查 -- Emacs 文本编辑器速查表
简介
Emacs 键绑定使用简写符号:C-表示按住 Ctrl,M-表示按住 Alt(Meta)。例如,C-x C-s表示先按 Ctrl+x,再按 Ctrl+s。使用-nw参数启动 Emacs 可在终端内运行,而不打开新窗口。| 按键 | 说明 |
|---|
| C-x C-f | 打开文件 |
| C-x C-s | 保存当前文件 |
| C-x C-w | 另存为(写入不同文件) |
| C-x C-c | 退出 Emacs |
| C-g | 取消当前命令或操作 |
| C-/ | 撤销上一次更改(也可用 C-x u) |
不小心启动了一个不想执行的命令?C-g几乎可以取消任何操作。内置的交互式教程在C-h t。导航
移动命令成对出现:C-用于小单位移动,M-用于大单位移动。| 按键 | 说明 |
|---|
| C-f | 向前移动一个字符 |
| C-b | 向后移动一个字符 |
| M-f | 向前移动一个单词 |
| M-b | 向后移动一个单词 |
| C-n | 移动到下一行 |
| C-p | 移动到上一行 |
| C-a | 移动到行首 |
| C-e | 移动到行尾 |
| M-a | 移动到句子开头 |
| M-e | 移动到句子结尾 |
| M-{ | 移动到段落开头 |
| M-} | 移动到段落结尾 |
| C-v | 向下滚动一页 |
| M-v | 向上滚动一页 |
| M-< | 移动到缓冲区开头 |
| M-> | 移动到缓冲区结尾 |
| M-g g | 跳转到指定行号 |
| C-M-a | 移动到函数开头 |
| C-M-e | 移动到函数结尾 |
编辑
用C-SPC标记区域起点,然后移动光标选择文本。Emacs 中"kill"表示剪切,"yank"表示粘贴。| 按键 | 说明 |
|---|
| C-SPC | 设置标记(选择起点) |
| C-x h | 选择整个缓冲区 |
| C-w | 剪切(kill)选中区域 |
| M-w | 复制选中区域 |
| C-y | 粘贴(yank)最近剪切的文本 |
| M-y | 在 C-y 之后:循环浏览之前剪切的文本 |
| C-k | 从光标剪切到行尾 |
| C-d | 删除光标下的字符 |
| M-d | 从光标剪切到单词末尾 |
| TAB | 缩进当前行 |
| C-x C-+ | 增大文本大小 |
| C-x C-- | 减小文本大小 |
被剪切的文本会累积到剪切环(kill ring)中,而不仅仅是单个剪贴板。按C-y然后重复按M-y可以逐步回溯最近剪切的全部内容。搜索与替换
Emacs 使用增量搜索:你输入时结果就会实时出现。再次按C-s跳到下一个匹配,按Enter停在当前匹配,或按C-g取消并返回起点。| 按键 | 说明 |
|---|
| C-s | 向前搜索(增量式) |
| C-r | 向后搜索(增量式) |
| M-% | 搜索并替换(查询模式) |
在查询替换中,回答y替换,n跳过,!替换所有剩余匹配,q停止。缓冲区与窗口
每个打开的文件都存在于一个缓冲区中。Emacs 可以将屏幕分割为多个窗口,每个窗口显示一个缓冲区。| 按键 | 说明 |
|---|
| C-x 2 | 上下分割窗口 |
| C-x 3 | 左右分割窗口 |
| C-x 1 | 关闭除当前窗口外的所有窗口 |
| C-x 0 | 关闭当前窗口 |
| C-x o | 切换到下一个窗口 |
| C-x b | 按名称切换到另一个缓冲区 |
| C-x C-b | 列出所有打开的缓冲区 |
| C-x k | 关闭(kill)缓冲区 |
| C-x d | 打开目录浏览器(Dired) |
命令
使用M-x后跟命令名称来运行任意命令。每个键绑定都是这些命令的快捷方式。| 按键 | 说明 |
|---|
| M-x eshell | 在 Emacs 内打开终端 Shell |
| M-x toggle-word-wrap | 切换自动换行 |
| M-x flyspell-mode | 切换拼写检查 |
| M-x display-line-numbers-mode | 切换行号显示 |
| M-x visual-line-mode | 切换视觉行换行 |
| M-x compile | 运行编译命令 |
| M-x package-list-packages | 浏览并安装包 |
获取帮助
Emacs 自带文档系统。帮助系统可以回答"这个键是做什么的"以及"哪个键运行这个命令"。| 按键 | 说明 |
|---|
| C-h t | 打开交互式教程 |
| C-h k | 描述某个按键组合的功能 |
| C-h f | 描述某个函数 |
| C-h v | 描述某个变量 |
| C-h a | 按关键词搜索命令 |