在 ACE 网页编辑器上添加 Pascal 规则

Add a Pascal rule on ACE web editor

我正在使用 ACE 网络编辑器以 Pascal 语言进行编码,并且想在 mode-pascal.js 本机文件中添加规则。

我想要突出显示所有以 'property' 开头并以 ';' 结尾的行中的所有 'read' 和 'write' 关键字。

类似于:

property Lala : Integer read (123) write (456);

但不是:

var read := "write"; 

使用 ACE...我只需要一个正则表达式就可以做到这一点,很有趣。

如果有人有想法,它可以挽救生命!

Ace语法高亮支持类似于textmate和sublime的状态。 这意味着你可以匹配 property 关键字,并切换到突出显示 readwrite 的状态,就像这样:

[
...
{
   regex: /property\b/
   token: "keyword",
   next: [
       {
           regex: /(read|write)\b/
           token: "keyword",
       },
       { include: "start" }, // include other rules if you want
       {
           regex: "$|;", 
           token: "text",
           next: "start" // exit the property state on line end or ;
       }
   ]
}
...