项目特定的初始化文件


10

我有一些想用于单个项目的emacs定制,但不会在全球范围内影响emacs。有什么方法可以让emacs从某个目录启动时加载特定的初始化文件,或者自动从其启动目录中加载所有init文件?

Answers:


17

您可能需要看一下Directory变量。基本上,您将需要.dir-locals.el在项目根目录中创建一个文件,其中包含所有项目特定的设置。现在,无论何时在目录或其任何子目录中打开文件,emacs都将在.dir-locals.el文件中应用设置。

因此,例如,假设您只想make package install在项目A中使用as编译命令,则需要在项目的根目录中创建一个名为.dir-locals.el的文件,并添加以下内容

((nil . ((compile-command . "make package install"))))

从此以后,无论何时compile从目录A下的任何文件运行命令,默认值compile-command都是上面指定的命令,但是compile command目录A之外的for文件将保持不变。


2

不流行的替代方法.dir-locals.elEditorConfig标准,该标准具有emacs-package。它不支持几乎所有选项,但是,它允许一组人对某些设置进行标准化,并在不同的编辑器中使用它们。

它的行为几乎相同,.editorconfig在顶层使用特定于项目的文件。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.