Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我如何添加一个";::&引用;运算符到我的VIM语法突出显示文件?_Vim_Syntax Highlighting - Fatal编程技术网

我如何添加一个";::&引用;运算符到我的VIM语法突出显示文件?

我如何添加一个";::&引用;运算符到我的VIM语法突出显示文件?,vim,syntax-highlighting,Vim,Syntax Highlighting,我使用的是一种嵌入Scala内部的语言,它有一个:操作符。我想修改scala.vim语法文件来识别这个新操作符 这就是我尝试过的(第一行工作正常,但我不知道如何向其中添加:操作符): syn-match-COperator“[&| ~>一个现有的scalaOperator:\{2,\}”正在使:的所有序列匹配(如果有两个或更多系列的:),覆盖我自己的syn-match-COperator语句 将::匹配为协同器的解决方案是,只需将与:系列匹配的scalaOperator重命名为协同器: syn

我使用的是一种嵌入Scala内部的语言,它有一个
操作符。我想修改scala.vim语法文件来识别这个新操作符

这就是我尝试过的(第一行工作正常,但我不知道如何向其中添加
操作符):


syn-match-COperator“[&| ~>一个现有的
scalaOperator:\{2,\}”
正在使
的所有序列匹配(如果有两个或更多系列的
),覆盖我自己的
syn-match-COperator
语句

::
匹配为
协同器的解决方案是,只需将与
系列匹配的scalaOperator重命名为协同器:

syn match COperator ":\{2,\}" 

摘要:检查覆盖您自己的匹配规则的现有匹配规则。

看起来第一行模式将按原样匹配
。它不限制字符数,因此
将通过外部
[]中的单个
匹配
字符类。那么,当您已经高亮显示其中的每个
作为运算符时,为什么要显式匹配
,正如@MichaelBerkowski所指出的那样?嗯,“:::”不改变颜色。“:”是否,“:=”是否,但不:::::::::::::::::::“(syn匹配scalaOperator):”?“((syn匹配scalaOperator):{2,\}”这不是一种类型)do?(如果我把它注释掉,我会得到“::”工作,但我对正则表达式不够熟悉,无法精确指出“:”,或者Scala不知道“:”何时出现)。
“:\{2,\}”
意味着“匹配所有系列的
字符,如果2个或更多”。它将匹配
::
::
::
,…@Chris您应该添加您所做的作为问题答案的内容,并将其排除在外。
syn match COperator ":\{2,\}"