Как добавить в списки, определенные с помощью c-lang-defconst?

Я пытаюсь добавить ловушку режима C++ для добавления ключевых слов C++11 в соответствующие списки ключевых слов (которые определены в lisp / progmodes / cc-langs.el в исходном коде Emacs). В качестве минимального примера я начал с 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-lang-defconst утверждение из этой реализации режима C++11. Однако я не хочу создавать совершенно новый режим, я просто хочу добавить его в обычный режим 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)

Это тоже не сработало.

Какой правильный способ сделать это?

Если нет правильного пути, какой хороший хакерский способ сделать это?

0 ответов

Другие вопросы по тегам