Chinaunix
标题:
emacs 快捷键
[打印本页]
作者:
dorainm
时间:
2007-11-08 01:14
标题:
emacs 快捷键
如果直接输入,键盘上的数字、字母以及符号仅仅插入该字符。
常用的函数被绑定到 Ctrl 或者 Meta 键所对应的快捷键上(例如 C-e 到行
尾, C-_ 是撤消, C-y 是粘贴)。
如果绑定到前缀 Ctrl 上的函数操作对象是一个字符,那么绑定到前缀 Meta
上的函数对应的的操作对象则是一个词(如果这快捷键有意义的话)。类似的,
如果前缀 Ctrl 对应的快捷键操作对象是一行,那么前缀 Meta 对应的快捷键
将操纵句子。例如: C-t 互换两个字符,而 M-t 互换两个词。 C-e 移动到
行尾,而 M-e 移动到句子的尾部。
一些不是特别常用的函数绑定到前缀 C-x 上。例如 C-x C-c 退出
Emacs
,
C-x 2 水平分割当前 window 。
与某个 mode 相关的的函数被绑定到前缀 C-c 上。
最不常用的函数根本没有键绑定,而是使用 M-x 然后输入函数名来调用他们。
前缀 C-x 4 被保留作操作另外一个 window 用的函数,例如 C-x 4 C-f 在另
外一个 window 里面打开文件。类似的, C-x 5 被绑定到操纵其他frame 的
函数上面: C-x 5 C-f 才另外一个 frame 里面打开文件。注意到这两个函
数与 C-x C-f (打开文件) 有同样的键绑定,只是在中间插入了 4 或者 5,
这并不是一个巧合。
自己设置快捷键,比如设置F4跳行,F5编译,F6调试
(global-set-key[f4] 'goto-line);
(global-set-key[f5] 'compile);
(global-set-key[f6] 'gdb);
M-! 执行shell命令
直接在终端中运行emacs emacs -nw
C-X 表示按住CTRL键, 然后按X, 再把CTRL, X一起放开.
M-X 等于先按 ESC键, 接著按 X键.
M-X 等于alt键.
C-X或 M-X的X没有大小写分别.
超过两个以上的按键命令, Emacs会在萤幕最下面一行显示你按过什么.这一行叫作mini buffer
结束Emacs按 C-x C-c
取消执行 C-g
C-p 向上移 (previous line)
C-n 向下移(next line)
C-f 向右移 (forward)
C-b 向左移 (backward)
C-v 下一页(view next screen)
M-v 上一页
C-L 重画萤幕
M-f 向前跳一个字(word)
M-b 往后跳一个字(word)
C-a 移到行头
C-e 移到行尾
M-a 移到句首 (M-a 到上一个句点后面,一个句子的起头.)
M-e 移到句尾 (M-e 到句点后面)
M-
M-> 移到档尾
C-d 删除游标目前指的后面的字
DEL 删除游标目前指的前面的字 (Delete键)
M-DEL 往回删一个字(word)
M-d 往前删 (游标后面)
C-k 删至行尾 (kill)
M-k 删到一句子结尾(删到句点) (kill)
C-x u 撤消操作
C-_ 也是撤消操作
C-k 剪切 (kill)
M-k 剪切 (kill)
剪切一段文字的方法: 将光标移到想要剪切的文字段开头, 用 C-@ (或 C-SPC )设标记( Mark set ), 将光标移到想要剪切的文字段末尾, 用 M-w 剪掉那段文字.
C-y 粘贴 (yank) , kill & yank 就是 cut & paste的意思.
C-x C-f 打开文件(可以用tab 或SPC键自动补全文件名)
C-x C-s 保存文件
C-x s 保存所有的文件
C-x i 插入文件(把另外的档案的内容读入目前编辑区内)
C-x 0 关掉目前的视窗
C-x 1 会让目前的视窗占满整个萤幕 (One Window), 取消/关掉其他的视窗.
C-x o 跳到另一个视窗
C-x 2 把目前的视窗切成两个 (水平分割)
C-x 3 (垂直分割)
C-x 4 是一串与视窗有关的指令.
C-x 5 则是扩展到X的视窗, 称为frame.
C-x 5 2 就是再开另一个X视窗 (frame).
C-x C-b 看目前有那些buffer (buffer就是emacs放开起的档案的地方).
C-x b 然后在minibuffer输入buffer的名字, 可以切换编辑buffer, TAB键也有作用. 有些内部的buffer (就是没有档案的buffer), 是用*开头和结束, 这个也要打, 如*scratch*
按 M-x 之后就可以打一个Emacs命令来执行
C-x C-c 就是结束Emacs,比较常用的是C-z
C-z 把Emacs暂停, 回到命令列. 当你下次再需要编辑时, 打fg %emacs 或者 fg 就可以把Emacs唤醒. 在X下, C-z 会把emacs缩成icon.
2007-04-04 00:58
`C-' Control-(即 Ctrl-),按住 Ctrl 键再按其他键
`M-' Meta-(或 Alt-),按住 Alt 键再按其他键;或按一下 ESC,再按其他键
`C-M-' Control-Alt-,按住 Ctrl 和 Alt 两个键再按其他键
point 位点。文档中的一个位置,一般是光标的左下角
mark 标记。由命令设置,用来定义/保存文档中的位置信息
region 区域。在 mark 和 point 之间部分,称为一个 region
RET 回车键
TAB 制表符键
ESC ESC 键
SPC 空格键
Backspace, DEL 退格键
Delete 删除键
=== 如果不知道 ===
C-x C-c 退出并关闭 Emacs
C-z
C-x C-z 退出并挂起 Emacs
C-x C-f 打开文件/目录
C-x i 插入文件内容
C-x C-r 只读方式打开一个文件
C-x u Undo( 想要Redo,动一下光标或按一下 C-g 再Undo :)
C-x C-s 保存文件
C-x s 询问保存所有未存盘文件
C-x C-w 文件另存为…
C-l 刷新窗口,并将当前行移至窗口中心。给定参数,可以设置
当前行的位置,不妨试试 M-0 C-l 或 M-- C-l 或 M-4 C-l
C-g 退出当前命令。如果你不知道Emacs正在干什么呢,多按几次
C-g,就会恢复到正常状态
=== 在线帮助 ===
C-h t TUTORIAL
C-h i Online Info
C-h c 给出键序列(简称键)绑定的命令名字
C-h w 由命令名字给出键的绑定
=== 给命令传参数 ===
C-u 给定参数前缀
M-0
...
M-9 参数0...9
M-- 负参数
=== 光标的移动 ===
C-a 行首
C-e 行尾
C-n 下一行
C-p 上一行
C-f 前进一个字符
C-b 后退一个字符
M-f 前进一个词
M-b 后退一个词
C-M-n C-M-p 括号间跳转
=== 搜索和替换 ===
C-s 增量搜索
C-r 向后增量搜索
M-x search-forward
搜索
M-x search-backward
向后搜索
C-M-s
M-x isearch-forward-regexp
正则表达式增量搜索
C-M-r
M-x isearch-backward-regexp
正则表达式向后增量搜索
M-x search-forward-regexp
正则表达式搜索
M-x search-backward-regexp
正则表达式向后搜索
ESC % 询问替换
M-x query-replace-regexp
正则表达式询问替换
M-x replace-string 替换
M-x replace-regexp 正则表达式替换
===区域的拷贝和粘贴===
* 区域是Mark和Point之间的部分,Point就是光标的左下角,Mark由命令设置。
* `Yanking ring'是一个存放文本的地方,从这里你可以拷贝删除(kill)的文本。
* `Yanking'表示插入刚刚删除(kill)的文本。
C-SPC
C-@
M-x set-mark-command
设置 mark
C-x C-x 交换 mark 和 point
C-w 将区域的文本删除,并放入yanking ring中
M-w 复制区域到yanking ring中
C-y 将yanking ring中最后一个区域插入当前缓冲区
M-y 按一次C-y后,多次按M-y,则用yanking ring中的其他区域替
换刚刚插入的区域
C-o 在光标后面插入空行
C-x C-o 将光标附近的空行去掉,多行的时候,第一次只剩一行,第二
次全部删除
C-d 删除一个字符(不能yank)
M-d 删除光标附近的一个词
C-x h 将整个缓冲区设置为区域(缓冲区尾是mark,首是point)
C-k 删除(kill)从光标处到行尾
=== 基本编辑 ===
C-q 插入下一个的字符,比如插入字符`^X'用“C-q C-x”
C-t 交换两个字符
M-t 交换两个词
C-x C-t 交换两行
C-x = 显示光标所在字符的信息
C-v 向下滚动窗口
M-v 向上滚动窗口
=== 多窗口和多缓冲区 ===
C-x b 转到另一个缓冲区
C-x k 删除缓冲区
C-x 2 水平分个窗口
C-x 3 垂直分割窗口
C-x 1 去掉其它窗口
ESC ESC ESC 同上
C-x 0 去掉当前窗口
C-x o 光标到另一个窗口中
C-M-v 向下滚动另一个窗口,给一个负的参数,则向上滚动
=== 宏 ===
C-x ( 开始一个宏的定义
C-x ) 结束一个宏的定义
C-x e 执行宏
M-x name-last-kbd-macro
给最后一个宏命名
M-x insert-kbd-macro
在当前文件中插入一个已定义并命名过的宏
=== 矩形区域操作 ===
* 矩形区域的两端是由 Mark 和 Point 确定的。
C-x r t 用串填充矩形区域
C-x r o 插入空白的矩形区域
C-x r y 插入之前删除的矩形区域
C-x r k 删除矩形区域
C-x r c 将当前矩形区域清空
;; C-c g f 快速打开文件
(global-set-key (kbd "C-c g f") 'ffap)
本文来自ChinaUnix博客,如果查看原文请点:
http://blog.chinaunix.net/u1/41420/showart_417124.html
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2