我是 ~/.vimrc我用这个 syn 排长队
augroup longLines
au!
au! filetype zsh,sh,python,vim,c,cpp
\ syn match ColorColumn /\%>80v.\+/ containedin=ALL
augroup END
但这会用
覆盖其他syn没有
为什么syn
会覆盖其他高亮?
这在最后几行中是臭名昭著的
sys.exit(1)
import settings
有不同的颜色,用syn,线条失去了正常的高亮
最佳答案
我使用以下代码:
highlight TooLongLine term=reverse ctermfg=Yellow ctermbg=Red
autocmd BufEnter,WinEnter * if &tw && !exists('b:DO_NOT_2MATCH') |
\ execute '2match TooLongLine /\S\%>'.(&tw+1).'v/' |
\ endif
autocmd BufLeave,WinLeave * 2match
command -nargs=0 -bar Dm let b:DO_NOT_2MATCH=1 | 2match
command -nargs=0 -bar Sm execute '2match TooLongLine /\S\%>'.(&tw+1).'v/' |
\ silent! unlet b:DO_NOT_2MATCH
如果你不希望能够删除这个突出显示,依赖于文本宽度并坚持突出显示超出限制的空间,那么你可以将其截断为
2match TooLongLine /.\%>80v/
此解决方案使用 match-highlight
不会废弃语法突出显示,但始终会覆盖它。
关于vim highlight remove overwrite others 嗨,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8685612/