【问题标题】:emacs major-mode define font-lock for line preceding regexpemacs 主要模式为正则表达式前面的行定义字体锁定
【发布时间】:2013-10-21 17:09:34
【问题描述】:

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

This is a Colored Heading
=========================

this is a differently-colored sub-heading
-----------------------------------------

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

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

但它不起作用。我认为这意味着:

'.*'任意字符
'\n' 后跟换行符
'=\{3,\}' 后跟 3 个或更多 '=' 字符

我哪里错了?

【问题讨论】:

    标签: regex emacs syntax lisp


    【解决方案1】:

    "\{""\}" 被视为转义序列,但它们不是。 您需要改用"\\{""\\}"

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多