Синтаксис для добавления / удаления ключевых слов блокировки шрифтов в Emacs

Большая часть того, что я делаю с Emacs, написана на Perl, и для этого cperl-mode в основном отлично; одна большая досада в том, что простой my $whatever введение дается свойство font-lock-keyword-face, что исключает преимущество наличия ключевых слов. Я новичок в elisp и поэтому пытаюсь поиграть с добавлением или удалением ключевых слов из font-lock, Хотя и EmacsWiki, и GNU предоставляют синтаксис, регулярные выражения сводят меня с ума. Я получил следующее, чтобы не скулить в моем init:

(font-lock-remove-keywords 'cperl-mode '(("\\<\\(my\\)")))

И это ничего не делает. \\<\\(my\\) немного работает с нуля re-builder так что я думаю, что у меня есть проблема с синтаксисом здесь. Как добавить и удалить ключевые слова?

1 ответ

Решение

font-lock-remove-keywords Функция предназначена для удаления существующего правила блокировки шрифтов, которое в жаргонном выражении шрифта является ключевым словом font-lock.

Если вы примените его к чему-то, что не является точным соответствием существующего правила блокировки шрифтов, то это ничего не делает.

Он не предназначен для удаления языковых ключевых слов.

Лучший способ сделать это - посмотреть на переменную font-lock-keywords и удалите правило, которое вам не нравится font-lock-remove-keywords а затем добавить измененную версию правила, используя font-lock-add-keywords,

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