正确匹配文件与 vim 中的特定单词

Correctly matching files with a specific word in vim

我使用以下语法来匹配文件名中带有 *Log 的文件并强制日志突出显示语法(可用 here):

au BufRead,BufNewFile *Log setlocal syntax=log

我想扩展此表达式以捕获所有可能的变体,包括 someNamelog、some_name_LoG、some_session_log_some_date、some_session_log121231 等.实际上,我想捕获 log 这个词的所有实例,而不考虑大小写。最初,我尝试使用:

au BufRead,BufNewFile *(l|L)og setlocal syntax=log

捕获 logLog 但这不起作用。有没有不需要多次 au BufRead,BufNewFile 调用的方法?

您可以使用 globbing,就像在您的 shell:

autocmd! BufRead,BufNewFile *{log,Log,lOg,loG,LOG}* setlocal syntax=log

(我会把剩下的列表留给你)

参见:help file-pattern