我可以更改emacs的默认编译命令吗?

时间:2011-01-05 20:06:44

标签: emacs dot-emacs

当我运行make -k时,Emacs默认使用命令compile。但是,我几乎永远认为让make在错误后继续有用是非常有用的,所以我总是删除-k标志。有没有办法更改.emacs中的默认值,以便它只是make

2 个答案:

答案 0 :(得分:12)

(setq compile-command“make”)

你的.emacs中的

或类似内容就足够了。

有关详细信息,请键入

C-h f compile

描述了调用M-x编译时使用的变量。

在那里,您应该看到它调用compile-command和

C-h v compile-command

告诉你这个默认为“make -k”。以上所有内容都是简化,但如果您需要进一步挖掘,所有信息都应该在这些命令中。

答案 1 :(得分:4)

由于我需要针对不同模式的不同编译器,我使用以下代码段(此处显示为javascript):

(require 'compile)
(add-hook 'js-mode-hook
          (lambda ()
            (set (make-local-variable 'compile-command)
                 (format "jshint %s" (file-name-nondirectory buffer-file-name)))))

这运行" jshint"作为我的编译命令。然后我也可以为其他语言添加钩子,并根据我的需要自定义每个语言。