Как выделить значение атрибута некоторых тегов XML в режиме Emacs Web?

Я использую отличный веб-режим в Emacs для редактирования XML-файлов.

Я хотел бы выделить некоторые значения атрибутов из конкретных тегов. Как это возможно?

Например, в следующем файле:

<panel type="console" ds="DS_CONSOLE_EQ" layout="mainLayout">
    <title>Filter</title>
    <field table="eq" id="BL_ID"/>
    <field table="eq" name="fl_id"/>
    <field table="eq" name="rm_id"/>
    <field table="eq" name="eq_id"/>
</panel>

Я хотел бы подчеркнуть значение каждого

  • ds атрибут из panel тег и
  • id атрибут из field тег.

В этом случае, ds_console_eq а также bl_id будет выделен (с 2 разными лицами). Я поместил их в заглавные буквы, чтобы показать результаты.

1 ответ

Вы можете сделать это, используя font-lock-mode, просто измените font-lock-type-face и font-lock-keyword-face на любые лица, которые вы хотите

(add-hook 'web-mode-hook
 (lambda ()
  (font-lock-add-keywords nil
   '(("\\<ds_console_eq\\>" . font-lock-type-face)
     ("\\<bl_id\\>" . font-lock-keyword-face)))))
Другие вопросы по тегам