我正在寻找一个正则表达式,以不同的方式突出显示一个星号(例如,红色)和两个星号(例如蓝色)和三个星号(黄色)。我有一个三(3)个工作的例子。但是,只定义一个会影响所有内容,除非有正则表达式排除。
* -- red
** -- blue
*** -- yellow
(defvar lawlist-yellow-jacket-face (make-face 'lawlist-yellow-jacket-face))
(set-face-attribute 'lawlist-yellow-jacket-face nil
:background "black" :foreground "yellow" :underline "red" :bold t)
(add-hook 'text-mode-hook (lambda ()
(font-lock-add-keywords nil (list
(list (concat "lawlist\\|\\*\\*\\*")
'(0 lawlist-yellow-jacket-face t))
))
))
答案 0 :(得分:1)
如果我正确理解你的要求,可以这样做:
(add-hook 'text-mode-hook
(lambda ()
(font-lock-add-keywords
nil
'(("lawlist\\|\\*\\*\\*"
(0 lawlist-yellow-jacket-face))
("lawlist\\|\\*\\*"
(0 'link keep))
("lawlist\\|\\*"
(0 'warning keep))))))