1 关闭EMACS
C-x C-c 退出
2 浏览文本
C-n 下一行
C-p 上一行
C-b 回退一个字符
C-f 前进一个字符
M-b 回退一个单词
M-f 前进一个单词
C-u 5 C-f 往后移动5个字符
C-u 5 C-v 往上移动8行
C-v 显示下一屏
M-v 显示上一屏
C-a 光标移到行首
C-e 光标移到行尾
M-a 光标移到句首
M-e 光标移到句尾
C-l 屏顶/屏中/屏底显示
3 插入删除
C-d 删除光标所在字符
M-Backspace 删除光标前的单词
M-d 删除光标后的单词
C-k 删除当前行光标后的所有字符
M-k 删除当前句子光标后的所有字符
C-SPACE C-n C-w 选中文本,进行区域删除,C-n可被替换C-b/C-f/C-p etc.
EMACS中有两个概念,delete和kill,killed的数据是可以被yank回来的,上面的一些操作对应于delete的是C-d、M-Backspace、M-d,C-k、M-k则对应kill。
C-y 就是yank操作了,我的理解就是粘贴。如果做了多次的类似C-k操作,则C-y就是被kill掉的所有内容。
C-u 5 * 输入5个*
C-g 取消当前操作,如想输入5个*,做到一半不想做了,取消谅用这个命令。
C-x u 取消上一操作(该操作已经被执行了)。
4 查找替换
C-s 等待输入进行查找,再C-s查找下一个,C-r查找上一个
M-x replace-string 替换操作
5 文件操作
C-x C-f find一个文件,回车后打开,原来打开的文件还存在于EMACS中,此时在EMACS窗口下方的区域称为minibuffer。
C-x C-s 保存文件
C-x C-b 列出buffers
C-x b BUFFER_NAME 打开某个buffer
C-x s 保存某个打开的buffer
6 多窗口
C-x 2 打开2个窗口
C-M v 光标不在的窗口的滚屏操作,下一屏(只包含2个窗口的frame中)
SHIFT-C-M v 光标不在的窗口的滚屏操作,上一屏(同上)
C-x 1 关闭除光标所在的所有窗口
C-x o 切换光标(小写字母o)
C-x 4 C-f 寻找文件,若打开则在新窗口中打开
7 frame
frame相当于一个EMACS的实例
M-x make-frame 打开一个新frame
M-x delete-frame delete选中的frame
C-x C-c 退出
2 浏览文本
C-n 下一行
C-p 上一行
C-b 回退一个字符
C-f 前进一个字符
M-b 回退一个单词
M-f 前进一个单词
C-u 5 C-f 往后移动5个字符
C-u 5 C-v 往上移动8行
C-v 显示下一屏
M-v 显示上一屏
C-a 光标移到行首
C-e 光标移到行尾
M-a 光标移到句首
M-e 光标移到句尾
C-l 屏顶/屏中/屏底显示
3 插入删除
C-d 删除光标所在字符
M-Backspace 删除光标前的单词
M-d 删除光标后的单词
C-k 删除当前行光标后的所有字符
M-k 删除当前句子光标后的所有字符
C-SPACE C-n C-w 选中文本,进行区域删除,C-n可被替换C-b/C-f/C-p etc.
EMACS中有两个概念,delete和kill,killed的数据是可以被yank回来的,上面的一些操作对应于delete的是C-d、M-Backspace、M-d,C-k、M-k则对应kill。
C-y 就是yank操作了,我的理解就是粘贴。如果做了多次的类似C-k操作,则C-y就是被kill掉的所有内容。
C-u 5 * 输入5个*
C-g 取消当前操作,如想输入5个*,做到一半不想做了,取消谅用这个命令。
C-x u 取消上一操作(该操作已经被执行了)。
4 查找替换
C-s 等待输入进行查找,再C-s查找下一个,C-r查找上一个
M-x replace-string 替换操作
5 文件操作
C-x C-f find一个文件,回车后打开,原来打开的文件还存在于EMACS中,此时在EMACS窗口下方的区域称为minibuffer。
C-x C-s 保存文件
C-x C-b 列出buffers
C-x b BUFFER_NAME 打开某个buffer
C-x s 保存某个打开的buffer
6 多窗口
C-x 2 打开2个窗口
C-M v 光标不在的窗口的滚屏操作,下一屏(只包含2个窗口的frame中)
SHIFT-C-M v 光标不在的窗口的滚屏操作,上一屏(同上)
C-x 1 关闭除光标所在的所有窗口
C-x o 切换光标(小写字母o)
C-x 4 C-f 寻找文件,若打开则在新窗口中打开
7 frame
frame相当于一个EMACS的实例
M-x make-frame 打开一个新frame
M-x delete-frame delete选中的frame