我正在从事一个使用多种编程语言的大型项目,但我完全没有使用 Emacs 的经验。我在谷歌上搜索了有关如何-*- this -*-
工作的信息,但没有找到任何东西。
例如,如果我有一个文件test.krc
,意味着在旧式 K&R C 中,我应该如何在其上标记它以便 Emacs 识别?
如果有人能解释-*- lang -*-
标签是如何工作的,我将不胜感激。
谢谢。
请参阅指定文件变量。
# -*- text -*-
只是一个简写
# -*- mode: text -*-
总结以下注释中的重要部分:
在这种情况下,第一行的以下注释将产生预期的效果:
/* -*- mode: c; c-file-style: "k&r"; -*- */
另一种选择,如果有问题的文件确实有.krc
扩展名:
(add-to-list 'auto-mode-alist '("\\.krc\\'" . c-mode))
(add-hook 'c-mode-hook 'my-c-mode-hook)
(defun my-c-mode-hook ()
(when (and buffer-file-name
(equal (file-name-extension buffer-file-name) "krc"))
(c-set-style "k&r")))