如何在Emacs中进行永久性自定义?

时间:2010-01-09 17:06:50

标签: emacs customization

我正在学习Vim,现在我正在尝试使用Emacs。例如,在Vim中,我可以通过在_vimrc文件中添加“set”命令来隐藏工具栏。

如果我想隐藏工具栏,Emacs中的自定义方法如何?

3 个答案:

答案 0 :(得分:10)

Emacs是使用自己编写的名为elisp的lisp编程语言变体编写的脚本自定义的。

emacs高级用户进行自定义的常用方法是编写可实现所需效果的片段,并位于其所在区域的.emacs文件中。当emacs启动时,此文件将被加载(类似于vim的.vimrc文件)。

例如,隐藏工具栏是使用

完成的
(tool-bar-mode nil) 

在你的.emacs

我建议您首先浏览manual然后如果您对emacs lisp tutorial感到好奇。


或者,如果您不熟悉编辑elisp,则可以使用内置的自定义系统。您可以使用M-x customize RET启动它(RET在emacs发言中“点击输入”,M-x通过按住(通常)alt键并点击{{1}来完成}})。

自定义界面允许您使用选择要启用的功能禁用(尽管这些功能的绝对数量可能会让人不知所措)并“保存”设置(这些设置只会为您选择的设置写出elisp代码。 emacs文件)。

答案 1 :(得分:1)

我认为你没有尝试

M-x customize

这是最明显的选择 - 也可以通过菜单访问。

编辑:如果要隐藏工具栏,请通过选项 - >尝试菜单。显示/隐藏 - >工具栏。

答案 2 :(得分:1)

此答案解决了Emacs存储自定义设置的位置,以及每次启动Emacs时如何编写自己的自定义设置。

首先,变量user-init-file指定了一个文件,指定在启动时加载哪个特定于用户的文件。它的值是usually the file .emacs within your home directory。某些版本的Emacs在Windows上使用了错误的名称,如 _emacs ,假设前导点无法容忍。有点令人困惑的是,您也可以自定义该变量。

如果没有更改正常行为,Emacs会将您通过其菜单进行的自定义保存到此文件中。因此,许多用户喜欢将他们手工编写的自定义ELisp代码保存在Emacs不会打扰的不同文件中。

〜/ .emacs 文件的头部,我有以下表格:

(load-file "~/.emacs.d/init.el")

在一个单独的目录~/.emacs.d中,我有一大堆上述 init.el 引用的ELisp文件,在不同条件下加载它们。

在共享系统(例如Linux)上运行Emacs时,通常还会加载Emacs加载的与站点相关的自定义文件。这样,管理员可以为所有用户提供一些设置,以后可以在他们自己的自定义文件中覆盖和扩展这些与站点相关的设置。