我正在使用 Ubuntu Linux 上的 Vim 7.3。
当我编辑 YAML 文件时
This:
fnordy fnord: fnord
fnords: super fnord
"fnords"将被着色,但"fnordy fnords"不会。
![fnords then fnordy fnord](https://istack.dev59.com/VA2GE.webp)
![fnordy fnord then fnord](https://istack.dev59.com/Not3Z.webp)
更新:
:color
slate
:echo &ft
yaml
在行首的fnord: fnordy
:yaml块映射键
在行首的fnordy fnord: fnord
:yaml普通标量
我正在使用 Ubuntu Linux 上的 Vim 7.3。
当我编辑 YAML 文件时
This:
fnordy fnord: fnord
fnords: super fnord
:color
slate
:echo &ft
yaml
在行首的fnord: fnordy
:yaml块映射键
在行首的fnordy fnord: fnord
:yaml普通标量
execute 'syn match yamlBlockMappingKey /^\s*\zs'.s:ns_plain_out.'\ze\s*:\%(\s\|$\)/ '.
\'nextgroup=yamlKeyValueDelimiter'
s:ns_plain_out
,这是一个非空格模式。execute 'syn match yamlBlockMappingKey /^\s*\zs.*\ze\s*:\%(\s\|$\)/ '.
这解决了特定的问题。
.
。 - Jack O'Connorautocmd FileType yaml execute
\'syn match yamlBlockMappingKey /^\s*\zs.*\ze\s*:\%(\s\|$\)/'
:echo synIDattr(synID(line("."),col("."),1),"name")
的结果吗?然后请展示 :color
和 :echo &ft
的结果。 - steffen