Emacs笔记
不是教程,非常不完整 文末我贴了几个不错的链接
Table of Contents
markdown-mode编辑快捷键
- `C-c C-t n`插入hash样式的标题,其中n为1-5,表示第一级到第五级标题
- `C-c C-t t`插入ubderline样式的一级标题
- `C-c C-t s`插入underline样式的二级标题
- `C-c C-a l`插入链接
- `C-c C-i i`插入图像
- `C-c C-s b`插入引用内容
- `C-c C-s c`插入代码
- `C-c C-p b`加粗
- `C-c C-p i`斜体
- `C-c -` 插入水平线
S-TAB可以在大纲视图,目录视图及正常视图之间切换
常用的Emacs缓冲区命令
- `C-x C-s`保存当前缓冲区
- `C-x C-c`要求将未保存的缓冲区保存,并退出
- `C-x C-c`挂起Emacs并使成为后台进程
- `C-x k`杀死一个缓冲区
- `C-x C-q`切换当前状态的可读状态
- `C-x i`在插入点插入文件的内容
- `C-x b`切换缓冲区
连续按两次`C-x C-z`会出现异常
常用的Emacs编辑命令
- `C-d`删除插入点的字符
- `M-d`从插入点开始向后删除字符,直到单词结尾
- `M-Backspace\M-del`从插入点开始向前删除字符,直到单词开头
- `C-\C-x u`撤销上一次的键入或者操作
- `C-g C-`恢复键入和操作
- `C-u 次数 命令`按总的次数(默认4次)连续执行命令
- `M-m`跳转到行首的非空字符
- `M->\M-<`跳转到文末和文首
`C-u 次数 命令`如果命令为移动命令,就可以快速的移动光标
文本调换
- `C-t`调换字母
- `M-t`调换单词
- `C-x C-t`调换行
- `C-u 2 C-x C-t`连续调换两次
转换大小写
- `M-u`将光标处到光标词尾的所有文本转换为大写
- `M-l`将光标处到光标词尾的所有文本转换为小写
- `M-c`转换所在处字母大小写并调到词尾
`C-o`在光标下方打开一个新行而不移动光标
缩进和填充文本
- `C-s 【字符串】【C-w】【C-y】`向前搜索字符串(默认为上一次的搜索字符串),`C-w`使用光标到词尾的文本,`C-y`使用光标到行尾的文本。
- `C-r 【字符串】【C-w】【C-y】`向后,同上
- `C-s Enter C-w 单词或者短语`向前搜索单词和短语(不管他们之间的间隔)
- `C-r Enter C-w 单词或者短语`向后,同上
- `C-M-s/C-M-r`向前和向后搜索正则表达式
- `M-%`向后搜索字符串,并询问替换
- `C-M-%`向后搜索正则表达式,并询问替换
高级文本操作
- `M-n 【操作】`重复执行操作n次
- `M-4 space`输入4个空格
- `M-5 C-n`向下移动5行
执行一个命令,然后`C-x z`重复执行一次,接着就可以通过键入z来反复执行这个命令。 `C-u n`也可以重复执行一个命令
命令行选项
- `emacs +number 文件名`打开文件移动到number的行
- `emacs +3:12 文件名`打开文件,并移动到第3行的第12个字符
- `emacs -nw`以终端模式启动
书签
- `C-x r m bookmark`设置一个名为bookmark的书签
- `C-x r l`列出所有已保存的书签
- `函数bookmark-delete`删除一个书签
- `C-x r b bookmark`跳转到名为bookmark的书签所设置的位置
- `函数bookmark-save`将所有的书签保存到书签文件~/.emacs.bmk
窗口操作
- `C-x 2`水平划分窗口
- `C-x 4 c-o`在另一个窗口显示一个缓冲区(同时保留当前窗口为活动)
- `C-x 4 b`将窗口水平划为2半,并将其作为活动区
- `C-x 4 f`在新的缓冲区打开新的文件,水平划分
- `C-x 4 r`在新的只读缓冲区打开新的文件,水平划分
- `C-M-v`滚动到下一个由`C-x o`切换到的窗口
- `C-x o`光标移动到下一个窗口
- `C-x b`切换到当前窗口的另一个缓冲区
- `C-x 0`删除当前窗口,并将光标移动到使用`C-x o`切换到下一个窗口
- `C-x 1`删除当前窗口之外的所有窗口
- `C-x 4 0`删除当前窗口,并剪切它的缓冲区
- `C-x 3`垂直划分窗口
- `C-x `使当前窗口增加一行的高度
- `C-x }/C-x {`使当前窗口减少或者增加一列的宽度
- `C-x -`缩小当前窗口到最小尺寸
- `C-x +`平衡所有窗口尺寸,使它们大小大致相等
- `函数compare-windows`当前窗口和下一个窗口进行比较
Emacs框架操作命令
- `C-x 5 2`生成一个新的Emacs框架,并使其成为活动框架
- `C-x 5 b`在另一个框架中打开指定的缓冲区,不存在其他框架,则创建
- `C-x 5 f`在另一个框架打开指定文件,不存在其他框架,则创建
- `C-x 5 r`在另一个框架只读缓冲区打开指定文件,不存在其他框架,则创建
- `C-x 5 o`移动到下一个框架,并使下一个框架成为活动框架
- `C-x 5 0`删除当前框架,并使其成为活动框架
- `C-x 5 1`删除当前框架之外的所有框架
- `C-z`图标化当前框架,如果已图标化,则取消它的图标化