繁体   English   中英

字体锁定Emacs-Lisp Regexp组

[英]Font-Lock an Emacs-Lisp Regexp Group

我目前正在为Emacs写一个主模式,并试图弄清楚如何使语法高亮起作用。 我的主模式是一种类似Lisp的语言,如下所示:

[= a 3]
[= [double x] [* x 2]]
[double a]

基本上,我想做的是编写一个正则表达式以匹配所有以[开头但不是[本身突出显示函数调用的单词]。 我已经进行了一些谷歌搜索,发现emacs不支持正则表达式后向搜索,那么我该怎么做?

您可以指定要突出显示的正则表达式组的编号。 因此,您可以构造一个正则表达式来捕获[以及以下函数名称,然后仅通过指定第一个捕获组来突出显示函数名称,例如。

(defvar my-mode-font-lock-keywords
  '(("\\[\\s-*\\([^\][:space:]]+\\)" (1 font-lock-function-name-face))))

(define-derived-mode my-mode prog-mode "MyMode"
  (setq-local font-lock-defaults '(my-mode-font-lock-keywords)))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM