vim - 仅显示空白以供选择
vim - show whitespace for selection only
是否可以仅在可视模式下显示白色space 字符(space、制表符、换行符),特别是在所选文本中?
或者是否已经有一个不错的插件可以完成这项工作?
Vim 中的 "list" 选项将显示空白字符:
List mode: Show tabs as CTRL-I is displayed, display $ after end of
line. Useful to see the difference between tabs and spaces and for
trailing blanks.
参见:
:help list
话虽这么说...
这不是您想要的,但是 Tim Pope's unimpaired plugin 提供了一种非常简单的方法来关闭 "list" 选项(以及许多其他选项)。
当
因此,如果您需要快速浏览那些空白字符,可以将它们 on/off 切换为:
col
我认为 unimpaired 是一个必不可少的、非常轻量级的插件(基本上只是一组映射)
无法永久切换视觉选择的显示以启用 list
模式,而缓冲区的其余部分没有 list
设置。
然而,解决方法是,在视觉上选择一些行后,按 :,这样命令行看起来像这样::'<,'>
然后只需使用 :list
命令(可以缩写为 :l
)。所以使用 :'<,'>l
将回显选定的行范围,就好像列表设置已打开一样。然而,这只能按行工作,所以不可能只打印块选择区域。
请参阅 :h :l
中的帮助。
根据如何为视觉模式设置突出显示,可以将白色 space 字符的前景色设置为 window 的背景色。
这是一个示例 Normal
高亮组(取自我自己的配色方案),它定义了整个 window:
的背景颜色
hi Normal ctermbg=235 ctermfg=250 guibg=#262626 guifg=#bcbcbc cterm=NONE gui=NONE
我们想要的值是彩色终端 235
和 GUI #262626
。
这是一个示例 Visual
突出显示组。一种背景色上只有一种前景色:
hi Visual ctermbg=110 ctermfg=235 guibg=#8fafd7 guifg=#262626 cterm=NONE gui=NONE
颜色本身并不重要。
这就是我们如何设置 SpecialKey
高亮组,使用上面的值:
hi SpecialKey ctermbg=NONE ctermfg=235 guibg=NONE guifg=#262626 cterm=NONE gui=NONE
它应该是这样的:
您需要编辑您的配色方案才能使其全面工作或将其添加到您的 vimrc
:
augroup colors
autocmd!
autocmd ColorScheme * hi SpecialKey ctermfg=235 guifg=#262626
autocmd ColorScheme * hi NonText ctermfg=235 guifg=#262626
augroup END
当然,以上颜色只是一个例子; YMMV.
是否可以仅在可视模式下显示白色space 字符(space、制表符、换行符),特别是在所选文本中?
或者是否已经有一个不错的插件可以完成这项工作?
Vim 中的 "list" 选项将显示空白字符:
List mode: Show tabs as CTRL-I is displayed, display $ after end of line. Useful to see the difference between tabs and spaces and for trailing blanks.
参见:
:help list
话虽这么说...
这不是您想要的,但是 Tim Pope's unimpaired plugin 提供了一种非常简单的方法来关闭 "list" 选项(以及许多其他选项)。
当
因此,如果您需要快速浏览那些空白字符,可以将它们 on/off 切换为:
col
我认为 unimpaired 是一个必不可少的、非常轻量级的插件(基本上只是一组映射)
无法永久切换视觉选择的显示以启用 list
模式,而缓冲区的其余部分没有 list
设置。
然而,解决方法是,在视觉上选择一些行后,按 :,这样命令行看起来像这样::'<,'>
然后只需使用 :list
命令(可以缩写为 :l
)。所以使用 :'<,'>l
将回显选定的行范围,就好像列表设置已打开一样。然而,这只能按行工作,所以不可能只打印块选择区域。
请参阅 :h :l
中的帮助。
根据如何为视觉模式设置突出显示,可以将白色 space 字符的前景色设置为 window 的背景色。
这是一个示例
的背景颜色Normal
高亮组(取自我自己的配色方案),它定义了整个 window:hi Normal ctermbg=235 ctermfg=250 guibg=#262626 guifg=#bcbcbc cterm=NONE gui=NONE
我们想要的值是彩色终端
235
和 GUI#262626
。这是一个示例
Visual
突出显示组。一种背景色上只有一种前景色:hi Visual ctermbg=110 ctermfg=235 guibg=#8fafd7 guifg=#262626 cterm=NONE gui=NONE
颜色本身并不重要。
这就是我们如何设置
SpecialKey
高亮组,使用上面的值:hi SpecialKey ctermbg=NONE ctermfg=235 guibg=NONE guifg=#262626 cterm=NONE gui=NONE
它应该是这样的:
您需要编辑您的配色方案才能使其全面工作或将其添加到您的 vimrc
:
augroup colors
autocmd!
autocmd ColorScheme * hi SpecialKey ctermfg=235 guifg=#262626
autocmd ColorScheme * hi NonText ctermfg=235 guifg=#262626
augroup END
当然,以上颜色只是一个例子; YMMV.