1

我正在从事一个使用多种编程语言的大型项目,但我完全没有使用 Emacs 的经验。我在谷歌上搜索了有关如何-*- this -*-工作的信息,但没有找到任何东西。

例如,如果我有一个文件test.krc,意味着在旧式 K&R C 中,我应该如何在其上标记它以便 Emacs 识别?

如果有人能解释-*- lang -*-标签是如何工作的,我将不胜感激。

谢谢。

4

2 回答 2

6

请参阅指定文件变量

# -*- text -*-

只是一个简写

# -*- mode: text -*-

总结以下注释中的重要部分:
在这种情况下,第一行的以下注释将产生预期的效果:

/* -*- mode: c; c-file-style: "k&r"; -*- */
于 2013-03-03T23:38:46.603 回答
2

另一种选择,如果有问题的文件确实有.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")))
于 2013-03-04T20:56:56.987 回答