Emacs常用命令
1)与光标移动操作有关的命令
  C-f     光标前移一个字符(右)
  C-b     光标后移一个字符(左)
  C-p     光标前移一行(上)
  C-n     光标后移一行(下)
  M-f     前移一个单词
  M-b     后移一个单词
  C-a     移动到行首
  C-e     移动到行尾
  M-e     前移一个句子
  M-a     后移一个句子
  M-}     前移一个段落
  M-{     后移一个段落
  C-v     屏幕上卷一屏
  M-v     屏幕下卷一屏
  C-x ]    前移一页
  C-x [    后移一页
  M-<     前移到文件头
  M->;     后移到文件尾
  C-l     重新绘制屏幕,当前行放在画面中心
  M-n 或者 C-u n  重复执行n次后续命令
2)帮助
C-h i    查看帮助信息文档
C-h f   描述函数
C-h v   描述变量
C-h k   描述快捷键
C-h w 显示命令被绑定到哪些快捷键上
C-h C-f 显示emacs FAQ
C-h p 显示本机Elisp包的信息
3)编程
M C-a 移动光标到函数的开始处
M C-e 移动光标到函数的结尾处
M-;     添加注释
C-c C-q 根据缩进风格缩进整个函数
4)书签
C-x r m 在光标当前位置创建书签
C-x r b 转到书签
M-x bookmark-rename 重命名书签
M-x bookmark-delete 删除书签
M-x bookmark-save 保存书签
C-x r l 列出书签清单
5)窗口
C-x 2 水平分割窗格
C-x 3 垂直分割窗格
(C-u) C-x ^ 加高当前窗口,如果有C-u,则每次加高4行
(C-u) C-x }  加宽当前窗口
(C-u) C-x {  压窄当前窗口
C-x 0 关掉当前窗口
C-x 1 关掉其他窗口
C-x o 跳到另一个窗口
6)终端
M-x ansi-term  打开终端
7)buffer
C-x k  关闭当前buffer
C-x b 切换到前一个编辑的buffer
C-x C-b :列出当前所有buffer
C-x C-s 保存当前buffer
C-x s 保存所有未保存的buffer,会提示你是否需要保存
C-x C-w 文件另存为
8)拷贝 剪切 粘贴
M-space (redefined) 设置mark; C-@ 是默认命令
C-w (redefined)  剪切一块区域如果没有设置mark,则是剪切一行
M-w (redefined) : 拷贝一块区域如果没有设置mark, 则是拷贝一行
C-k  从当前位置剪切到行尾
C-y  粘贴
M-y  用C-y拉回最近被除去的文本后,换成 M-y可以拉回以前被除去的文本。键入多次的M-y可以拉回更早以前被除去的文本
M-@ 复制一个单词
9)文件
C-x C-f  打开文件
C-x C-r 以只读形式打开文件
C-x C-c 保存文件退出
10)查找替换
C-s   向下查找
C-r    向上查找
M-x  replace-string  替换
11)缩放字体
Ctrl-x Ctrl-+ 或 Ctrl-x Ctrl-=  放大字体
Ctrl-x Ctrl– 缩小字体
Ctrl-x Ctrl-0  重置字体