如何在 vim/gvim 中设置行长度标记?

如何在 vim/gvim 中设置行长度标记?

一些 GUI 文本编辑器有一条垂直线作为行长度标记(它有助于将源代码文件中的行保持在 80 个字符以下)。

在 vim/gvim 中是否有类似的东西?我知道统治者vim 选项,但是在大屏幕上直观地跟踪它并不是很方便。

编辑:当我通过谷歌搜索“colorcolumn”来了解更多信息时,我发现这个问题与https://stackoverflow.com/questions/235439/vim-80-column-layout-concerns

答案1

只需执行此操作

:set colorcolumn=72

您还可以在参数前加上-或,+将许多列的标记放在左侧或右侧textwidth,它接受以逗号分隔的列列表。我认为colorcolumn选项仅在 Vim 7.3 中可用。请参阅

:help colorcolumn

答案2

来自 Damian Conway 的“更即时、更好的 Vim”演讲在 OSCON 2013 上:

highlight ColorColumn ctermbg=magenta
call matchadd('ColorColumn', '\%81v', 100)

DarkCyan这样,当行超过 80 个字符的最大值时,字符就会以洋红色突出显示(屏幕截图为)。

vim 启用高亮显示

对于 gVim:最好将这两行移到最后一部分以确保其能.vimrc正常工作。

答案3

你可以尝试这个:

grep '.\{81\}' file

或者

set colorcolumn=80

(或简写形式)

set cc=80

或如上所述:

match ErrorMsg '\%>80v.\+'

答案4

下面是一个笨拙的技巧黑客 Vim:充分利用最新 Vim 编辑器的指南 作者:Kim Schultz。

它会用ErrorMsg(通常为鲜红色)突出显示超过 80 个字符的任何行。对我来说效果很好。

function! RemoveWidthLimitWarnigns()
    silent! call matchdelete(4)
endfunction
function! InsertWidthLimitWarnings()
    call RemoveWidthLimitWarnigns()
    call matchadd("ErrorMsg", "\\%>79v.\\+", 10, 4)
endfunction

相关内容