Emacs目录变量问题

4

我正在使用最新版本的NTEmacs。 我编写了一个名为“.dir-locals.el”的文件,内容如下。

((nil . ((tab-width . 8)
        (fill-column . 70)))
 (c-mode . ((c-file-style . "GNU"))))

当我在子目录中打开一个c文件时,遇到了错误提示:

目录本地变量错误: (wrong-type-argument listp message)

我无法找出代码哪里有问题。

2个回答

5
表达式的第二部分是变量列表,因此您需要更多的括号。
((nil . 
  ((tag-width . 8)
  (fill-column . 70)))
 (c-mode . 
 ((c-file-style . "GNU"))))

这对我很有帮助。为了使其正常工作,我在开头添加了引号并评估了表达式,然后从那里跟踪它。

当它工作时,再删除引号。


我尝试了那个精确括号的代码,但仍然显示相同的内容。 - kjshim
你可能错过了我几分钟前的编辑,因为第一次尝试粘贴出现了错误。 - justinhj
5
告诉一个写Lisp语言的人最好的建议是:“……你需要更多的括号。” - kjfletch

1
我遇到了一个非常类似的问题:Emacs在一个带有类似内容的.dir-locals.el文件上抱怨相同的错误。我的情况是文件中存在看不见的空格字符。(我注意到Skype聊天有时会在文本中引入奇怪的空格字符。)一旦我删除了所有额外的空格,它就可以正常工作了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接