emacs主模式为regexp前面的行定义字体锁定

emacs主模式为regexp前面的行定义字体锁定,regex,emacs,syntax,lisp,Regex,Emacs,Syntax,Lisp,我正在制作一个自定义的emacs主模式,但我对lisp完全不熟悉,所以我很挣扎。我正在尝试添加一个字体锁定,以便突出显示一行重复的“=”或“-”以及上面的行(以便我可以将它们用作标题),即 我已尝试通过以下方式进行设置: (font-lock-add-keywords nil '(("\\(.*\n=\{3,\}\\)" 1 font-lock-warning-face prepend))) 但它不起作用。我认为这意味着: “*”任何字

我正在制作一个自定义的emacs主模式,但我对lisp完全不熟悉,所以我很挣扎。我正在尝试添加一个字体锁定,以便突出显示一行重复的“
=
”或“
-
”以及上面的行(以便我可以将它们用作标题),即

我已尝试通过以下方式进行设置:

(font-lock-add-keywords nil '(("\\(.*\n=\{3,\}\\)"
                             1 font-lock-warning-face prepend)))
但它不起作用。我认为这意味着:

*
”任何字符
\n
”后跟换行符
=\{3,\}
”后跟3个或更多“=”字符

我哪里出错了?

“\{”
“\}”
被视为一个转义序列,而它们不是。 您需要改用
“\\{”
“\\}”

(font-lock-add-keywords nil '(("\\(.*\n=\\{3,\\}\\)"
                             1 font-lock-warning-face prepend)))
“\{”
“\}”
被视为转义序列,但它们不是。 您需要改用
“\\{”
“\\}”

(font-lock-add-keywords nil '(("\\(.*\n=\\{3,\\}\\)"
                             1 font-lock-warning-face prepend)))
“\{”
“\}”
被视为转义序列,但它们不是。 您需要改用
“\\{”
“\\}”

(font-lock-add-keywords nil '(("\\(.*\n=\\{3,\\}\\)"
                             1 font-lock-warning-face prepend)))
“\{”
“\}”
被视为转义序列,但它们不是。 您需要改用
“\\{”
“\\}”

(font-lock-add-keywords nil '(("\\(.*\n=\\{3,\\}\\)"
                             1 font-lock-warning-face prepend)))