《简单易懂的GNU Emacs安装教程》这篇文章是 rsreland ( https://rsreland.net )于 2015年1月31日 编写,对应 GNU Emacs 最新的 24.4 版本(也可能适用以上版本),和 Windows 操作系统。(请注意本文的编写时间,及软件版本,来判断本文是否还有效。)
本文是一篇图片为主的软件教程,主要讲述如何下载 GNU Emacs ,以及怎样安装。之后还会说明配置、启动的方法,最后会列出一些使用技巧。
编写本文的原因始于我的一个观点:图片可以比文字传达更多的信息,也能让其他人更容易理解作者的意图及思想。所以希望这篇文章可以让你,轻松的了解 GNU Emacs 的下载、安装及使用。
什么是GNU Emacs
GNU Emacs 中的 Emacs 是英文 Editor Macros 的字母缩写,意思为 宏编辑器 ,是一个文本编辑器家族,拥有着众多分支,其共同点都是无限制的可扩展性。而 GNU Emacs 中的 GNU 则表明了它是 GNU 计划中的一个子项目,所以 GNU Emacs 的意思就是:它是 GNU 版的 Emacs 文本编辑器。
为什么使用GNU Emacs
GNU Emacs 是开源软件,你可以免费使用。
GNU Emacs 拥有无限制的可扩展性。
GNU Emacs 的全部操作都可以在键盘上完成,适合编辑大量的文本。
GNU Emacs 既然是 GNU 的一个项目,理所当然的是一个开源软件,你可以很方便的获得它的源代码,进行修改。
GNU Emacs 还是一个可以高度定制的软件,可以使用专门的扩展语言 Emacs Lisp ,给 GNU Emacs 添加任何功能。例如你编写了一个煮咖啡的 GNU Emacs 扩展程序,并将它与一台咖啡机链接,这时你就可以在用 GNU Emacs 编辑文本的同时,顺手敲了指定的组合命令,让咖啡机自动开始煮咖啡了。
GNU Emacs 与普通的文本编辑器相比最大的优点是:可以不使用鼠标,所有的操作均在键盘上敲击快捷命令完成。这样的设计,对于编辑文字会很方便,双手不用离开键盘去操作鼠标,就可以完成所有操作,这节省了很多时间和额外的手部动作。
GNU Emacs 比起文本编辑器,更像一个操作系统,它本身就自带浏览网页、收发邮件、小游戏等各种各样的功能。本质就是一个平台,只要使用 Emacs Lisp 编写插件,就可以为其添加各种各样的功能,甚至是和文本编辑根本没有关系的功能。
GNU Emacs 的官方网站地址是:https://www.gnu.org/software/emacs 。通过地址到达 GNU Emacs 的首页,我们现在想要下载 GNU Emacs ,于是在首页上找到 Obtaining/Downloading GNU Emacs 这个大标题,如上图所示,它在整个首页的中间部分,从上数是第3个大标题。
在这个大标题下有一段话,其中包含了3个链接,分别是 nearby GNU mirror 、 GNU mirrors 、 main GNU ftp 。其中 nearby GNU mirror 和 main GNU ftp 是可以进入下载页面,区别在于 nearby GNU mirror 会选择进入离你最近的镜像服务器,因此访问速度和下载速度较快。而 main GNU ftp 则会直接进入官方的服务器,虽然速度无法保证,但其内容绝对是最新的。
nearby GNU mirror 、 main GNU ftp 这2个链接,只要任选一个点击进入即可。(因为镜像站点页面各不相同,为了内容统一,我选择了官方的 main GNU ftp 。)
GNU Emacs下载服务器的FTP文件列表
这个页面就是点击 main GNU ftp 链接进入下载服务器后的ftp文件列表,这里列出了适用于 Linux 操作系统的 GNU Emacs 最新版本和过往的历史版本的下载链接,选择自己想下载的版本后,单击对应的链接即可开始下载。
适用于 Windows 操作系统的 GNU Emacs 则在另一个ftp文件列表中,如上图所示,在列表的第1行,有一个 windows/ 链接,单击它就可以转到 Windows 版的 GNU Emacs 的ftp文件下载列表。
Windows版GNU Emacs的ftp文件列表
这个页面就是存放 Windows 版 GNU Emacs 的ftp文件列表,如上图所示,这里同样列出了 GNU Emacs 的最新版本和过往的历史版本。
虽然 GNU Emacs 解压缩后就可以直接运行了,但为了方便使用,还是要创建一个快捷方式。而我们首先要做的就是进入解压后的 GNU Emacs 目录中,其目录结构如上图所示。
这时我们双击 bin 目录,进入其中。
GNU Emacs 的 bin 目录结构
在 bin 目录中我们看到了很多有 exe 后缀名的可执行程序,其中 addpm.exe 就是创建快捷方式的可执行程序,双击运行它,就会在电脑桌面和开始菜单中创建一个 GNU Emacs 的快捷方式。
需要注意,如果只是想直接启动 GNU Emacs,只需要双击运行 runemacs.exe 可执行程序,就可以启动 GNU Emacs 的图形用户界面了。不要运行 emacs.exe 和 emacs-24.4.exe ,它们虽然也可以启动 GNU Emacs 的图形用户界面,但它们是从命令行提示符程序中启动的,这就导致在程序运行期间,命令行提示符这个黑色程序界面会一直存在,非常烦人。
(custom-set-variables ;; custom-set-variables was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(ansi-color-faces-vector [default default default italic underline success warning error]) '(blink-cursor-mode nil) '(column-number-mode t) '(custom-enabled-themes (quote (misterioso))) '(show-paren-mode t) '(tool-bar-mode nil)) (custom-set-faces ;; custom-set-faces was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(default ((t (:family "\320\302\313\316\314\345" :foundry "outline" :slant normal :weight normal :height 113 :width normal)))))
使用GNU Emacs
刚开始使用 GNU Emacs 时,会觉得很不习惯。不过没关系,这是正常现象,因为我们习惯了用鼠标在软件界面上操作,而 GNU Emacs 是完全可以在键盘上完成所有操作。而且 GNU Emacs 的快捷键与现在的通用快捷键完全不同,所以你要重新学习并记忆各个快捷键所代表的意义。
所以我建议在最开始使用之前,先到 Help 菜单中,选择 Emacs Tutorial 这个选项。这会启动 GNU Emacs 自带的快速学习教程,帮你尽快熟悉操作方法。
当你觉得 GNU Emacs 不能满足你的需求时,不要想着换一个编辑器,去上网查找一下 GNU Emacs 的插件和资料吧,你会发现只要下载几个插件,或者写几行 Lisp 代码,就可以给 GNU Emacs 添加你想要的功能了。
常用快捷键提示
GNU Emacs 快捷键命令通常包含 CONTROL 键(有时候以 CTRL 或 CTL 来标示)和 META 键(有时候用 EDIT 或 ALT 来标示)。为了避免每次都要写出全名,我们约定使用下述缩写:
C-[chr] 表示当输入字符 [chr] 时按住 CONTROL 键。因此 C-f 就表示:按住 CONTROL 键再输入 f (一般是按住CONTROL 键的同时再按 f 键)。
C-x k 关闭当前buffer C-xb 显示下一个buffer C-x C-b 显示buffer列表
C-x2 水平分割窗格 C-x3 垂直分割窗格 C-x o 切换至其他窗格 C-x0 关闭窗格 C-x1 关闭除了光标所在窗格外所有窗格 C-x ^ 扩大窗格 M-x shrink-window 缩小窗格 M C-v 滚动其他窗格内容 C-x4 f 在其他窗格中打开文件 C-x40 关闭当前缓冲区和窗格 C-x52 新建窗口(frame) C-x5 f 在新窗口中打开文件 C-x5 o 切换至其他窗口 C-x50 关闭当前窗口
C-x d 文件管理器 C-x C-q 将文件管理器设置为可编辑模式 C 复制 R 移动/重命名 d 标记等待删除 D 立即删除 e 或 f 打开文件或目录 g 刷新当前目录 m 用*标记 n 光标移动到下一行 o 在另一个窗格打开文件并移动光标 C-o 在另一个窗格打开文件但不移动光标 q 退出dired R 重命名文件 u 移除标记 v 显示文件内容 d 标记等待删除 x 删除有D标记的文件 > 移动光标至后一个文件夹 < 移动光标至前一个文件夹 s 切换排序模式(按文件名/日期) + 创建目录 ^ 访问上层目录