我尝试编写自定义隐藏脚本,以==
替换≈
。
但是,我的语法匹配似乎仅在我放=
而不是==
时才有效。
var body = document.body;
if (body == 'body')
console.log('yes');
当我这样做时,一切正常:
syntax match jsEqual "=" conceal cchar=≈
当我将其更改为:
syntax match jsEqual "==" conceal cchar=≈
没有任何东西被隐藏。
答案 0 :(得分:1)
我可以使用vim javascript syntax plugin重现此内容,但不能使用内置语法脚本重现此内容。该扩展语法为javaScriptOpSymbols
定义语法组==
。
找出导致突出显示的语法组。 :syn list
显示所有有效群组,但在安装SyntaxAttr.vim - Show syntax highlighting attributes of character under cursor插件时更容易。
要使隐藏组适用,您需要使其适用于涵盖==
的语法组;这是通过:help :syn-containedin
属性完成的:
syntax match jsEqual "==" conceal cchar=≈ containedin=javaScriptOpSymbols