文件操作 光标定位 输入删除 复制粘贴 撤销重做

掌握了Emacs的帮助系统,就可以自己随时学习了。但是还是应该有一个主线。尽管Emacs能做的事情很多,但首先Emacs是一个编辑器。所以还是应该从文本编辑的功能开始。完成本节的内容后,可以应付日常的大部分编辑工作。

内容提要

  • 文件操作
  • 光标定位
  • 输入删除
  • 复制粘贴
  • 撤销重做

 

1.文件操作

文件操作的快捷键都集中在C-x"菜单"中:

快捷键(C-x)     命令(M-x)                                          说明
C-x C-f              find-file                                              打开文件或录
C-x C-c             save-buffers-kill-emacs                 保存退出
C-x C-z             iconify-or-deiconify-frame             挂起(最小化)
C-x C-f              find-file                                              打开文件、目录
C-x C-r             find-file-read-only                            以只读模式打开
C-x i                  insert-file                                           插入文件
C-x C-s             save-buffer                                       保存
C-x s                 save-some-buffers                          保存所有未保存的缓冲区
C-x C-w            write-file                                            另存为文件
C-x RET r         revert-buffer-with-coding-system  以指定编码读取文件
C-x RET f         set-buffer-file-coding-system         以指定编码保存文件
revert-buffer                                      恢复到原始状态
C-x d                dired                                                   进入目录列表模式
C-x C-d            list-directory                                      获取文件列表(简洁)

 

2. 光标定位

向前    向后    向下    向上        
翻页                           C-v    M-v
字符        C-f       C-b     C-n    C-p
单词        M-f       M-b
句           M-a      M-e
行           C-a       C-e
段落       M-{        M-}
缓冲区   M-<      M->

其它:
M-g M-g     (goto-line)                      跳转到某行
M-x              (goto-char)                    跳转到字符位置:     
C-M-l          (reposition-window)    将当前行卷至页面中部
C-l               (recenter)                       刷新页面,将将当前行卷至页面中部 (使用数字参数指定行)
M-r M-x      (move-to-window-line) 移动光标至页面中间的行 (使用数字参数指定行)

3.输入删除

输入很简单,在缓冲区直接敲键盘就OK了(这个不像Vim)

删除:

向前        向后
字符     C-d         DEL
单词     M-d        M-DEL
行         C-k(删除至行尾)
整行                   C-S-backspace
按表达式删除    C-M-k
区块     C-w
删除连续空格     M-x delete-horizontal-space

注1:在PC中,用Backspace代替DEL
注2:单词、行、区块的删除是kill,相当于剪切,会被放入kill-ring,字符及空格的删除是delete

4.复制粘贴

复制前要先选择:C-@开始区块选择,然后移动光标,选中的区域会高亮
剪切:前面"删除"的部分包括了一些剪切操作,对区块的剪切用C-w
复制:区块复制用M-w,至于复制1行,复制1个单词之类的功能,自己想办法吧:(
粘贴: C-y:粘贴kill-ring堆栈的最后一次的内容
C-y 之后可以继续M-y, 对Kill-ring中的内容依次召回

5.撤销重做

撤销: C-/  (每插入20个字符,视为一个 undo 的单位)
重做: C-/ 后,依次输入C-g C-/ 就可以redo