`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                                              降低优先级

转载于:https://www.cnblogs.com/papam/archive/2009/08/26/1554551.html

Quick Emacs相关推荐

  1. emacs linux 教程,Emacs教程

    简介 没 有听说过 Emacs 吗?没有关系,花上30分钟就能了解和熟悉这个古老而强大 的编辑器.他被很多人称作世界上最强大的编辑器.用户从无数高手到IT民工到 普通文本编辑器用户,可以符合几乎所有人 ...

  2. Emacs教程 30minutes

    没 有听说过 Emacs 吗?没有关系,花上30分钟就能了解和熟悉这个古老而强大 的编辑器.他被很多人称作世界上最强大的编辑器.用户从无数高手到IT民工到 普通文本编辑器用户,可以符合几乎所有人的需求 ...

  3. gocode+auto-complete搭建emacs的go语言自动补全功能

    上篇随笔记录了在emacs中使用go-mode和goflymake搭建了go语言的简单编程环境(推送门),今天来记录一下使用gocode+auto-complete配置emacs中go语言的自动补全功 ...

  4. 介绍一些Emacs功能强大的函数

    作者: xilbert 1 字符串类 2 hook类函数 3 用来高亮的函数 4 编译类函数 5 将这些函数串起来 1 字符串类 string-match 函数: 用指定的正则表达式去匹配字符串,将匹 ...

  5. effective emacs中文版

    http://blog.csdn.net/delphinew/article/details/2053676  <原文链接> 这是对区区的emacs技术影响极大的文章,在年初里曾想把它译完 ...

  6. Emacs教程(一)

    Emacs Install Emacs 网上太多教程了,在常用的linux,mac,windows操作系统中皆可以安装. The Emacs Tutorial Emacs的官方教程,在emacs中通过 ...

  7. Linux 安装 sbcl emacs slime 搭建 Lisp 开发环境

    安装 SBCL(Steel Bank Common Lisp) SBCL是Lisp的解释器,用于解释执行 Lisp 程序. SBCL的官方网站:http://www.sbcl.org/ SBCL 支持 ...

  8. Golang TDD实践报告:快速排序Quick Sort

    Golang TDD实践报告:快速排序Quick Sort [阅读时间:约5分钟] 0.项目需求 1.编写符合项目输入输出的一个测试 2.尝试运行测试 3.先使用最少的代码来让失败的测试先跑起来 4. ...

  9. emacs 搭建racket开发环境

    emacs 搭建racket开发环境 emacs下搭建开发racket的环境,笔者之前用过下面两种模式:geiser和racket-mode.相对而言,后一种方式要显得简单.本文主要介绍后一种方式环境 ...

最新文章

  1. 【组队学习】【35期】吃瓜教程——西瓜书+南瓜书
  2. Vue-Layout:可视化布局、自动生成代码工具
  3. Spring Boot 最流行的 16 条实践解读!
  4. outlook 2010 记忆式键入不工作的解决办法
  5. boost::geometry::util::is_implemented2用法的测试程序
  6. Discuz论坛架设从零起步之二
  7. 深度学习(18)神经网络与全连接层一: 数据加载
  8. 今天,全网曝光这几个公众号
  9. Android之popWindows底部弹出挡住了华为虚拟键盘问题
  10. POJ1179,P4342-[IOI1998]Polygon【区间dp】
  11. 自动化测试遇到的难点_自动化测试过程中遇到的问题主要有什么?
  12. [vue] vue的属性名称与method的方法名称一样时会发生什么问题?
  13. 【LeetCode笔记】剑指 Offer 06. 从尾到头打印链表(Java、翻转链表)
  14. python使用ddt找不到方法_python使用ddt过程中遇到的问题及解决方案【推荐】
  15. 离线更新VSAN HCL数据库
  16. sed: sed command a expects followed by text
  17. C# File流操作
  18. 防火墙虚拟系统资源分配配置实例
  19. ThinkPHP基础
  20. 数学建模(6)典型相关性分析

热门文章

  1. MySQL的索引创建、删除
  2. android之appwidget(一)简单appwidget
  3. Creating a Google Suggest Style Filter with the AutoComplete Control
  4. DataOutputStream 类 和DatainputStream类 的主要方法简单介绍,及代码演示。
  5. 结合Kubernetes解读微服务的12要素
  6. netty的编解码、粘包拆包问题、心跳检测机制原理
  7. Spring源码分析-从源码看BeanFactory和FactoryBean的区别
  8. Python精通-Python集合操作详解
  9. 【SpringMVC整合MyBatis】整合思路与工程结构
  10. centos8搭建k8s集群