0

我正在尝试添加一个 C++ 模式挂钩以将 C++11 关键字添加到适当的关键字列表(在 Emacs 源代码的lisp/progmodes/cc-langs.el中定义)。作为一个最小的例子,我开始c-modifier-kwds尝试将以下内容添加到我的 .emacs 文件中:

(add-hook 'c++-mode-hook
          (lambda ()
            (c-lang-defconst c-modifier-kwds
                             c++
                             (append '("thread_local" "noexcept")
                                     (c-lang-const c-modifier-kwds))))
          t)

(我从这个 C++11 模式实现中复制了c-lang-defconst语句。但是,我不想创建一个全新的模式,我只想添加到常规 C++ 模式。)

那没有用(我也没想到会这样)。我还尝试了以下方法:

(add-hook 'c++-mode-hook
          (lambda ()
            (setq (c-lang-defconst c-modifier-kwds)
                  (append '("thread_local" "noexcept")
                          (c-lang-const c-modifier-kwds))))
          t)

那也没有用。

这样做的正确方法是什么?

如果没有正确的方法,那么这样做的好方法是什么?

4

0 回答 0