我想用 Vim 识别超过 80 个字符的行,我找到了这个解决方案:
match ErrorMsg '\%80v.\+'
这适用于 html 文件或 .vimrc 文件,但不适用于 php 文件。我也直接在一个php文件中尝试过,它也没有工作
/\%>80v.\+
有什么建议可以确定问题吗?
我想用 Vim 识别超过 80 个字符的行,我找到了这个解决方案:
match ErrorMsg '\%80v.\+'
这适用于 html 文件或 .vimrc 文件,但不适用于 php 文件。我也直接在一个php文件中尝试过,它也没有工作
/\%>80v.\+
有什么建议可以确定问题吗?
:match
(以及相关的:2match
, )的问题:3match
在于只能有一种模式;以下命令清除前一个。(这就是matchadd()
引入该功能的原因。)
您可以检查您的定义(它有'id': 1
)是否仍然有效
:echo getmatches()
这是一个更灵活的解决方案,使用可切换功能仅突出显示超过 80 个字符的字符。用您喜欢的任何键绑定替换第一行。
nnoremap <leader>h :call ToggleOverLengthHighlight()<CR>
let g:overlength_enabled = 0
highlight OverLength ctermbg=black guibg=#212121
function! ToggleOverLengthHighlight()
if g:overlength_enabled == 0
match OverLength /\%79v.*/
let g:overlength_enabled = 1
echo 'OverLength highlighting turned on'
else
match
let g:overlength_enabled = 0
echo 'OverLength highlighting turned off'
endif
endfunction