【发布时间】:2018-03-16 09:25:32
【问题描述】:
我在 Java 的文件之后有一个语法。它有效,因为我已经定义了一些语法关键字、匹配项和区域,它们已成功突出显示。
不是我想突出显示一些匹配项,这些匹配项位于我之前定义的突出显示区域内。我的意图是首先突出显示该区域,然后在该区域部分进行匹配。
确切的用例是函数/类/...描述,其中包含@author、@version、...等文档关键字,然后我将以下内容写入我的语法文件:
syntax region _Comment start="\/\*" end="\*\/"
syntax match _CommentKey "^\s*\*\s*\zs@\w*\ze\s"
highlight link _Comment Comment
highlight link _CommentKey Special
不,我有两个问题。我独立测试,评论区工作正常。注释键匹配仅在没有 \zs 部分的情况下有效,因此它也突出显示前导 *。一旦我添加了\zs,就不再突出显示任何内容。我该如何解决这个问题?对于其他比赛,这很好。
第二个问题:我没有把它们结合起来。如果我启用这两个规则,则只有整个部分将突出显示为Comment。我把第二条规则放在哪里都没有关系,它不会被突出显示。我还尝试将skip 用于该地区,直到我意识到它是为了不同的东西。
有任何想法吗?谢谢!
要测试的示例代码:
/**
* Function description here.
*
* @param id
* @author Max Mustermann
*/
private static int function foo(final int id) {
return id;
}
【问题讨论】:
标签: vim vim-syntax-highlighting