作为Emacs的爱好者,你的基本功真的合格吗?

简介: 都说Emacs的爱好者经常吹嘘自己的Emacs的功能可多了,除了文本编辑,其他的诸如收发邮件、听音乐甚至是打游戏都不在话下,这也说明其的扩展性是极其强大的,往往可以搞定很多软件需要做的事情。虽然如此,但你的Emacs的基本功真的合格了吗?你真的对每一个快捷键都了如指掌了吗?下面就来测试一下吧!
简评:都说Emacs的爱好者经常吹嘘自己的Emacs的功能可多了,除了文本编辑,其他的诸如收发邮件、听音乐甚至是打游戏都不在话下,这也说明Emacs的扩展性是极其强大的,一个Emacs往往可以搞定很多软件需要做的事情。虽然如此,但你的Emacs的基本功真的合格了吗?你真的对每一个快捷键都了如指掌了吗?下面就来测试一下吧,看看你是否能打满分呢?

Emacs的基本功

掌握Emacs的快捷键可以说是Emacs爱好者的基本功,也是提高编辑速度和质量所必备的,但是初学者可能记不住那么多的快捷键必要时可以翻一下,最常用的快捷键数量也就数十个。Emacs的快捷键都是绑定于ctrl和alt(或称meta)上的,例如c-x就是ctrl+x,m-x就是alt+x。当然所有的按键都可以自定义。当要退出编辑时C-x C-c 代表着,先按C-x 再按C-c才可以退出编辑环境.

文件操作

  • C-x C-f 打开文件,出现提示时输入/username@host:filepath可编辑FTP文件
  • C-x C-v 打开一个文件,取代当前缓冲区
  • C-x C-s 保存文件
  • C-x C-w 存为新文件
  • C-x i 插入文件
  • C-x C-q 切换为只读或者读写模式
  • C-x C-c 退出Emacs

编辑操作

  • C-f 前进一个字符
  • C-b 后退一个字符
  • M-f 前进一个字
  • M-b 后退一个字
  • C-a 移到行首
  • C-e 移到行尾
  • M-a 移到句首
  • M-e 移到句尾
  • C-p 后退一行
  • C-n 前进一行
  • M-x goto-line 跳到指定行
  • C-v 向下翻页
  • M-v 向上翻页
  • M-< 缓冲区头部
  • M-> 缓冲区尾部
  • C-M-f 向前匹配括号
  • C-M-b 向后匹配括号
  • C-l 当前行居中
  • M-n or C-u n 重复操作随后的命令n次
  • C-u 重复操作随后的命令4次
  • C-u C-u 重复操作随后的命令8次
  • C-x ESC ESC 执行历史命令记录,M-p选择上一条命令,M-n选择下一条命令
  • C-d 删除一个字符
  • M-d 删除一个字
  • C-k 删除一行
  • M-k 删除一句
  • C-w 删除标记区域
  • C-y 粘贴删除的内容
注意:C-y可以粘贴连续C-k删除的内容;先按C-y,然后按M-y可以选择粘贴被删除的内容
  • C-@ 标记开始区域
  • C-x h 标记所有文字
  • C-x C-x 交换光标位置和区域标记区开头
  • M-w 复制标记区域
  • C-_ or C-x u 撤消操作

执行SHELL命令

  • M-x shell 打开SHELL
  • M-! 执行SHELL命令 (shell-command)
  • M-1 M-! 执行SHELL命令,命令输出插入光标位置,不打开新输出窗口
  • M-| 针对某一特定区域执行命令(shell-command-on-region), 比如 C-x h M-|uuencode

窗口操作

  • C-x 0 关闭本窗口
  • C-x 1 只留下一个窗口
  • C-x 2 垂直均分窗口
  • C-x 3 水平均分窗口
  • C-x o 切换到别的窗口
  • C-x s 保存所有窗口的缓冲
  • C-x b 选择当前窗口的缓冲区
  • C-x ^ 纵向扩大窗口
  • C-x } 横向扩大窗口

缓冲区列表操作

  • C-x C-b 打开缓冲区列表
  • d or k 标记为删除
  • ~ 标记为未修改状态
  • % 标记为只读
  • s 保存缓冲
  • u 取消标记
  • x 执行标记的操作
  • f 在当前窗口打开该缓冲区
  • o 在其他窗口打开该缓冲区

目录操作

  • C-x d 打开目录模式
  • s 按日期/文件名排序显示
  • v 阅读光标所在的文件
  • q 退出阅读的文件
  • d 标记为删除
  • x 执行标记
  • D 马上删除当前文件
  • C 拷贝当前文件
  • R 重命名当前文件
  • + 新建文件夹
  • Z 压缩文件
  • ! 对光标所在的文件执行SHELL命令
  • g 刷新显示
  • i 在当前缓冲区的末尾插入子目录的内容
  • [n]m 标记光标所在的文件,如果指定n,则从光标所在的文件起后n个文件被标记
  • [n]u 取消当前光标标记的文件,n的含义同上
  • t 反向标记文件
  • %-m 正则标记
  • q 退出目录模式
说明:在目录模式中,如果输入!,在命令行中包含*或者?,有特殊的含义。*匹配当前光标所在的文件和所有标记的文件,?分别在每一个标记的文件上执行该命令。

程序编译

  • M-x compile 执行编译操作
  • M-x gdb GDB排错
  • M-x dbx DBX排错
  • M-x xdb XDB排错
  • M-x sdb SDB排错

搜索模式

  • C-s key 向前搜索
  • C-s 查找下一个
  • ENTER 停止搜索
  • C-r key 反向搜索
  • C-s C-w 以光标所在位置的字为关键字搜索
  • C-s C-s 重复上次搜索
  • C-r C-r 重复上次反向搜索
  • C-s ENTER C-w 进入单词搜索模式
  • C-r ENTER C-w 进入反向单词搜索模式
  • M-x replace-string ENTER search-string ENTER 替换
  • M-% search-string ENTER replace-string ENTER 交互替换
  • C-r 在进入查找/替换模式后,该命令进入迭代编辑模式
  • C-M-x 退出迭代编辑模式,返回到查找/替换模式
  • C-M-s 向前正则搜索
  • C-M-r 向后正则搜索
  • C-M-% 正则交互替换

SHELL模式

  • C-c C-c 相当于Bash下的C-c
  • C-c C-z 相当于Bash下的C-z
  • C-c C-d 相当于Bash下的C-d
  • M-p 执行前一条命令
  • C-n 执行下一条命令
  • C-c C-o 删除最后一条命令产生的输出
  • C-c C-r 屏幕滚动到最后一条命令输出的开头
  • C-c C-e 屏幕滚动到最后一套命令输出的结尾
  • C-c C-p 查看前一条命令的输出
  • C-c C-n 查看后一条命令的输出

打印资料

  • M-x print-buffer 先使用pr,然后使用lpr
  • M-x lpr-buffer 直接使用lpr
  • M-x print-region
  • M-x lpr-region

收发邮件

  • M-x mail 发送邮件, C-c C-s 发送,C-c C-c 发送并退出
  • M-x rmail 接受邮件

本文转载自:站长百科 原文有删改
相关文章
|
10月前
|
Oracle Java 关系型数据库
神级程序员都在用什么工具?
神级程序员都在用什么工具?
|
10月前
|
SQL NoSQL 小程序
优秀程序员的习惯有那些?
每一个好习惯都是一笔财富,养成好的习惯,可以让自己避免许多问题,此理论同样适用于日常的开发编码中
80 0
|
12月前
|
前端开发
开心档 - 软件开发入门之
提示框可以使用 .alert 类, 后面加上 .alert-success, .alert-info, .alert-warning, .alert-danger, .alert-primary, .alert-secondary, .alert-light 或 .alert-dark 类来实现:
|
JavaScript 前端开发
开心档-软件开发入门之 开心档-软件开发入门之
本文主要讲解Vue.js v-bind 在处理 class 和 style 时, 专门增强了它。表达式的结果类型除了字符串之外,还可以是对象或数组。
|
Shell 程序员
程序员之路:Shell基础
程序员之路:Shell基础
程序员之路:Shell基础
|
存储 安全 Linux
1.17 想学好Linux,这些习惯必须养成(初学者必读)
不管是在生活还是工作中,每个人都会逐渐养成一些小习惯。坏习惯一旦形成就很难改正,所在在系统学习 Linux之前,给大家一些建议,刻意去培养一些好的习惯,对自己是很有利的。
163 0
1.17 想学好Linux,这些习惯必须养成(初学者必读)
|
前端开发 算法 Java
成功程序员的 14 个优秀习惯,良心推荐!
成功程序员的 14 个优秀习惯,良心推荐!
162 0
|
运维 Linux 云计算
Linux教程:Linux运维工程师必备入门法宝
小编相信你在看到这篇文章的时候,一定是想要学习Linux的,或者已经在学习Linux的路上了,那么对于正在学习得你,一定非常需要这份Linux教程,帮助你快速入门Linux。 成功不易唯有加倍努力!无论是什么原因学习Linux的,方法还是差不多的,想要快速入门,首先你要选择一本基础书籍带你入门。