JAV*_*AVH 6 vim vim-syntax-highlighting
如何突出以sql_引号开头并在引号内的字符串?
我的日志文件:
MGPostgreSQLConnection.OpenQuery; "sql_p_factory_history"-ExecTime: 47ms
2010-11-12T17:28:18+01:00;custom; MGPostgreSQLConnection.OpenQuery; "sql_p_factory_history"-ExecTime+FetchTime: 47ms
2010-11-12T17:28:18+01:00;custom; MGPostgreSQLConnection.OpenQuery; "sql_factory"-ExecTime: 47ms
2010-11-12T17:28:18+01:00;custom; MGPostgreSQLConnection.OpenQuery; "sql_factory_contactperson"-ExecTime+FetchTime: 62ms
Run Code Online (Sandbox Code Playgroud)
我的vimrc(当然这不起作用):
au BufRead,BufNewFile *.log syn match "sql_*"
au BufRead,BufNewFile *.log hi sql guifg=white guibg=red
Run Code Online (Sandbox Code Playgroud)
你快到了!此版本(工作和)不突出显示引号.
au BufRead,BufNewFile *.log hi sql guifg=white guibg=red ctermfg=white ctermbg=red
au BufRead,BufNewFile *.log syn match sql /"\zssql_\w*\ze"/
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅以下内容
:help :syn-match "用于语法匹配,erm,语法:help /\zs "在那里设定了比赛的开始:help /\ze "在那里设定了比赛的结束:help /\w "字符调试:
该命令:verbose :syn应该给你这样的东西:
--- Syntax items ---
[...]
sql xxx match /"\zssql_\w*\ze"/
Run Code Online (Sandbox Code Playgroud)
而且:verbose :hi:
Last set from ~/.vimrc
[...]
sql xxx cterm=bold ctermfg=7 ctermbg=1 guifg=white guibg=red
Run Code Online (Sandbox Code Playgroud)
它xxx应该与您指定的颜色相同(并且看起来像我的屏幕截图中的突出显示).如果您没有看到,请检查您的.vimrc(或_vimrc在Windows上)是否来自:
:scriptnames
1: /home/javh/.vimrc
[...]
Run Code Online (Sandbox Code Playgroud)
当然这只适用于:
:echo has('syntax')
Run Code Online (Sandbox Code Playgroud)
...返回1(或:version包括+syntax).