emacs 快捷键

【转载自emacs china

光标的移动是编辑器中最常用的操作所以必须熟知。

  • C-f 为前移一个字符, f 代表 forward。
  • C-b 为后移一个字符, b 代表 backward。
  • C-p 为上移至前一行, p 代表 previous。
  • C-n 为上移至下一行, n 代表 next。
  • C-a 为移至行首, a 代表 ahead。
  • C-e 为移至行尾, e 代表 end。

常用的文件操作快捷键组合也必须熟记。

  • C-x C-f 为打开目标文件, f 代表 find/file
  • C-x C-s 为保存当前缓冲区(Buffer), s 代表 save

C-x 是 Emacs 的快捷键中常用的前缀命令。这些前缀命令常常代表了一系列有关联的指 令,十分重要,请特别牢记。其它常见的还有 C-cC-h 。打断组合键为 C-g ,它 用于终端取消之前的指令。快捷键就是用预先绑定好的方式告诉 Emacs 去执行指定的命令。 (之后会介绍到更多有关绑定的内容)

内置功能

Emacs 功能强大,但是部分功能默认情况下并未开启。下面就有几个例子,

编辑器内显示行号可使用 M-x linum-mode 来开启。

获取帮助

Emacs 是一个富文档编辑器(Self document, extensible editor)而下面的三种方法在学 习 Emacs 的过程中也非常重要。他们分别是,

  • C-h k 寻找快捷键的帮助信息
  • C-h v 寻找变量的帮助信息
  • C-h f 寻找函数的帮助信息

 

在开始配置之前让我们先来区别 Emacs 中 Major Mode 与 Minor Mode 的区别。Major Mode 通常是定义对于一种文件类型编辑的核心规则,例如语法高亮、缩进、快捷键绑定等。 而 Minor Mode 是除去 Major Mode 所提供的核心功能以外的额外编辑功能(辅助功能)。 例如在下面的配置文件中 tool-bar-mode 与 linum-mode 等均为 Minor Mode*。

简单来说就是,一种文件类型同时只能存在一种 Major Mode 但是它可以同时激活一种或多 种 Minor Mode。如果你希望知道当前的模式信息,可以使用 C-h m 来显示当前所有开启 的全部 Minor Mode 的信息。

下面是一些简单的编辑器配置信息,你需要做的就是将其写入你的配置文件中 ( ~/.emacs.d/init.el )即可。

;; 关闭工具栏,tool-bar-mode 即为一个 Minor Mode
(tool-bar-mode -1)

;; 关闭文件滑动控件
(scroll-bar-mode -1)

;; 显示行号
(global-linum-mode 1)

;; 更改光标的样式(不能生效,我们需要区分 setq 与 setq-default : setq 设置当前缓冲区(Buffer)中的变量值, setq-default 设 置的为全局的变量的值)
;; (setq cursor-type 'bar)
(setq-default cursor-type 'bar)
;; 关闭启动帮助画面 (setq inhibit-splash-screen 1)
;;
通常我们的配置文件以及项目文件均使用版本控制系统,所以自动生成的备份文件就显 得有些多余。我们还可以禁止 Emacs 自动生成备份文件,例如 init.el~ 
(setq make-backup-files nil)

;; 更改显示字体大小 16pt
;; http://stackoverflow.com/questions/294664/how-to-set-the-font-size-in-emacs
(set-face-attribute 'default nil :height 160)

;; 快速打开配置文件
(defun open-init-file()
  (interactive)
  (find-file "~/.emacs.d/init.el"))

;; 这一行代码,将函数 open-init-file 绑定到 <f2> 键上
(global-set-key (kbd "<f2>") 'open-init-file)

在每次编辑配置文件后,刚刚做的修改并不会立刻生效。这时你需要重启编辑器或者重新加 载配置文件。重新加载配置文件你需要在当前配置文件中使用 M-x load-file 双击两次 回车确认默认文件名,或者使用 M-x eval-buffer 去执行当前缓冲区的所有 Lisp 命令。 你也可以使用 C-x C-e 来执行某一行的 Lisp 代码。这些可使刚刚修改的配置文件生效。 当然你也可以将这些函数绑定为快捷键。

 

关于分屏的使用,如果你已经读过 Emacs 自带的教程,现在你应该已经掌握了基本的分屏 操作方法了。关于分屏的更多内容你可以在这里找到。

  • C-x 1 仅保留当前窗口
  • C-x 2 将当前窗口分到上边
  • C-x 3 将当前窗口分到右边

posted on 2020-03-26 00:22  一直工作的小白鼠  阅读(532)  评论(0编辑  收藏  举报

导航