Quick Emacs

Quick Emacs

=== 写在前面 ===
`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,    退格键
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-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              去掉其它窗口
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            将当前矩形区域清空

 

=== Planner ===

M-x plan                                           查询所有未完成的工作      
M-x planner-goto-today                             查询当天未完成的工作     
C-c C-t或者M-x planner-create-task-from-buffer     添加任务     
C-c C-x或者M-x planner-update-task                 标记任务完成     
M-x planner-edit-task-description                  修改任务描述     
C-c C-c                                            重新安排一个任务     
M-x planner-replan-task                            Change a plan of task     
M-x planner-delete-task                            Delete a task     
M-p                                                升序
M-n                                                降序 Reordering task     
C-M-p                                              提升优先级;
C-M-n                                              降低优先级     

你可能感兴趣的:(Quick Emacs)