Emacs

来自刘东华的维基
跳转至: 导航搜索

概述

听说是神一样的编辑器!
记录使用过程中用到的用法和遇到的问题。
(习惯了VIM,实在用不惯)

用法

说明

'C-' == Ctrl
'M-' == Alt

基本命令

C-x C-f  打开文件
C-x C-c  退出Emacs
C-x C-f  "find"文件, 即在缓冲区打开/新建一个文件
C-x C-s  保存文件
C-x C-w  使用其他文件名另存为文件
C-x C-v  关闭当前缓冲区文件并打开新文件
C-x i    在当前光标处插入文件
C-x b    新建/切换缓冲区
C-x C-b  显示缓冲区列表
C-x k    关闭当前缓冲区
C-z      挂起emacs

编辑命令

C-@       选中某一区域
C-space   选中某一区域
M-w       复制,需要先选中再复制(与QQ快捷键有冲突)
C-y       粘贴
C-d       向后删除一个字符(相当于delete)
M-d       向后删除一个单词
C-k       删除到行末
C-u n C-k 删除到第n行行末

重要命令

C-g    停止当前运行/输入的命令
C-x u  撤销前一个命令

光标命令

C-f  后一个字符
C-b  前一个字符
C-p  上一行
C-n  下一行
M-f  后一个单词
M-b  前一个单词
C-a  行首
C-e  行尾
M-r  跳到屏幕中间
C-v  向下翻一页
M-v  向上翻一页
C-l  向下翻半页
M-<  到文件开头
M->  到文件末尾
M-g g  跳转到指定行数

窗口命令

C-x 2    水平分割窗格
C-x 3    垂直分割窗格
C-x o    切换至其他窗格
C-x 0    关闭窗格
C-x 1    关闭除了光标所在窗格外所有窗格
C-x ^    扩大窗格
M-x shrink-window    缩小窗格
M C-v    滚动其他窗格内容
C-x 4 f  在其他窗格中打开文件
C-x 4 0  关闭当前缓冲区和窗格
C-x 5 2  新建窗口(frame)
C-x 5 f  在新窗口中打开文件
C-x 5 o  切换至其他窗口
C-x 5 0  关闭当前窗口

shell

M-x shell 打开shell模式
C-c C-c   类似unix里的C-c(停止正在运行的程序)
C-d       删除光标后一个字符
C-c C-d   发送EOF
C-c C-z   挂起程序(unix下的C-z)
M-p       显示前一条命令
M-n       显示后一条命令

其它命令

M-x gdb  在另一个的窗格中打开gdb

插件

  1. projectile,项目管理
  2. tabbar,tab页
  3. lua语法高亮: https://github.com/immerrr/lua-mode

常见问题

  • xshell中Alt键无法使用
XshellAltshortcut.jpg
  • M-w,复制没反应
QQ快捷键冲突

参考