一、按键表示惯例
按照emacs tutorial的习惯,
C-代表按下Ctrl然后按下
M-代表按下Meta(或者Alt,Esc)然后按下
二、开始和退出
要启动emacs只需在终端中键入emacs命令即可,如果是在X11下会默认启动GUI,可以使用emacs -nw启动文本模式。退出emacs使用C-x-c,退出前会提示保存文件,可以使用C-x-s保存文件。
使用emacs命令的时候,如果命令输错或者命令执行一半想暂停,可以使用C-g来取消。
三、移动光标
最基本的是C-p,C-n,C-b,C-f,分别向上(privious)移动一行、向下(next)移动一行、向后(backward)移动一个字符、向前(forward)移动一个字符,示意图如下:
上一行 C-p
:
:
向左移 C-b .... 目前光标位置 .... 向右移 C-f
:
:
下一行 C-n
还有比较常用的就是C-a移动到行首,C-e移动到行尾,C-v向下滚动一屏,C-l刷新屏幕并将光标所在行移动到屏幕中央。
有趣的是,移动光标的时候M-与C-经常有对应的功能,M-b,M-f分别向后、向前移动一个单词,M-a,M-e分别移动到段首和段尾,M-v向上滚动一屏。M-<移动到全文的开头,M->移动到全文的结尾。
使用C-u xxx可以重复操作xxx num次,例如C-u 5 C-n(操作顺序是按下Ctrl和u,然后松开所有键再按下5,然后松开5,然后按下Ctrl和n)向下移动5行。
四、编辑文本
1.删除
[C-] 删除光标前一个字符
C-d 删除光标后一个字符
M- 移除光标前一个单词
M-d 移除光标后一个单词
C-k 移除光标到行尾字符
M-k 移除光标到句尾字符
说明:(1)是Backspace键,如果没有就是Del键;(2)删除和移除是有区别的,删除的内容不能在召回,而移除的内容还在缓冲区中,可以被召回。
2.粘贴
C-y召回(yank)刚刚最近一次被移除的文本,被移除的文本形成一个环,可以在C-y之后使用M-y被循环的召回。
3.撤销
C-/,C-_和C-x u撤销最近的修改,移动光标不算修改,输入字符以20个字符为一组撤销。
4.标记文本块
用C-@或者C-标记一个文本块的开始位置,移动光标到结束位置。两次C-@或者C-启用文本块高亮显示。C-w移除被标记的文本块,M-w复制被标记的文本块。
5.搜索
emacs使用渐进式(incremental)搜索,C-s向前搜索,C-r向后搜索,可重复搜索,按结束搜索。
6.替换
M-x replace-string或者M-%
五、文件操作
1.打开文件 C-x C-f
2.在多个文件之间切换
可以多次用C-x C-f打开多个文件,在文件之间切换可以用C-x C-f 来进行,但是这样要记住文件名,当打开的文件个数较多时不方便。
emacs中编辑的文件都对应一个缓冲区(Buffer),切换文件实际上就是切换缓冲区,可是用C-x-b切换缓冲区,emacs会要求输入缓冲区名,可以使用C-x C-b查看所有缓冲区列表,关闭这个列表用C-x-1。关闭缓冲区用C-x k。
缓冲区名和文件名一般是相同的,在输入的时候都可以用Tab补齐。
3.保存文件
C-x C-s保存当前文件,C-x s保存缓冲区中所有文件。
emacs会定期自动保存文件,自动保存的文件首尾都有一个#,输入 M-x recover file 恢复你的自动保存文件。
六、命令扩展
Emacs 的命令就像天上的星星,数也数不清。把它们都对应到 CONTROL 和 META
组合键上显然是不可能的。Emacs 用扩展(eXtend)命令来解决这个问题,扩展
命令有两种风格:
C-x 字符扩展。 C-x 之后输入另一个字符或者组合键
M-x 命令名扩展。M-x 之后输入一个命令名
七、模式切换
M-x text-mode切入text-mode主(major)模式用于编辑自然语言,M-x auto-fill-mode切入auto-fill-mode辅(minor)模式用于在编辑过程中自动换行。
八、多窗格
emacs支持多个窗格,C-x n打开n个窗格,C-x o在窗格之间切换,C-M-v在另一个窗格中滚动
阅读(1442) | 评论(0) | 转发(0) |