如何使制表看起来与vim中的空白不同(例如突出显示).
这对Python中的代码很有用.
我使用这样的东西:
set list listchars=tab:»·,trail:·,precedes:…,extends:…,nbsp:?
需要Vim7,我不确定它会在浏览器中显示出来的程度,因为它使用了一些时髦的Unicode字符.使用一些古怪的角色是很好的,这样你就可以将标签与你自己输入的标签区分开来.
除了显示选项卡之外,在行尾显示空格非常有用,因此您知道要删除它们(它们很烦人).
许多其他人提到了'listchars'和'list'选项,但只是添加了另一个有趣的选择:
if &expandtab == 0 execute 'syn match MixedIndentationError display "^\([\t]*\)\@<=\( \{'.&ts.'}\)\+"' else execute 'syn match MixedIndentationError display "^\(\( \{' . &ts . '}\)*\)\@<=\t\+"' endif hi link MixedIndentationError Error
这将查看'expandtab'的当前设置(即,您是否有假装标签的硬标签或空格)并将突出显示任何看起来像正确缩进但形状错误的内容.这些设计用于查看制表位,因此用于缩进的制表符后跟用于简单对齐的空格(不是'tabstop'的倍数)将不会突出显示为错误.
可以使用更简单的选项:如果您只想以鲜红色突出显示错误文件中的任何选项卡(或任何错误颜色),您可以执行以下操作:
syn match TabShouldNotBeThereError display "\t" hi link TabShouldNotBeThereError Error
或者如果您希望行开头的空格被视为错误,您可以执行以下操作:
syn match SpacesUsedForIndentationError display "^ +" hi link SpacesUsedForIndentationError Error
还有一些想法添加到混合...更多信息在这里:
:help 'expandtab' :help 'tabstop' :help 'listchars' :help 'list' :help :exe :help let-option :help :hi-link :help :syn-match :help :syn-display
使用list
和listchars
选项,如下所示:
:set list :set listchars=tab:>-