В Emacs, как добавить второй тип комментариев в производный режим CSS?
У меня есть шаблонный тип файла css, который позволяет комментариям начинаться с "##", независимо от того, что я пытаюсь, хотя, кажется, он не распознает это в моем производном режиме. Вот что у меня так далеко
(define-derived-mode cheetah-css-mode css-mode "cheetah-css"
(make-face 'cheetah-css-variable-face)
(font-lock-add-keywords
nil
'(("\\(##.*\\)\n" font-lock-comment-face)) (font-lock-mode 1)))
1 ответ
Решение
Что вы на самом деле хотите сделать, это изменить таблицу синтаксиса для вашего режима, чтобы определить ##
в качестве комментария. Тогда Emacs сможет рассматривать его как таковой во всех отношениях (а не просто выделять).
Увидеть:
- M-:
(info "(elisp) Syntax Descriptors")
RET - M-:
(info "(elisp) Syntax Flags")
RET - M-:
(info "(elisp) Syntax Class Table")
RET
Попробуйте это в своем определении производного режима:
(modify-syntax-entry ?# "' 12b" cheetah-css-mode-syntax-table)
(modify-syntax-entry ?\n "> b" cheetah-css-mode-syntax-table)