仅在选定区域显示VIM的列表

时间:2014-04-07 19:49:38

标签: vim highlight vim-syntax-highlighting

我正在尝试将VIM设置为像任何其他编辑器一样,并仅在选定的文本区域显示特殊字符(制表符,空格),如下所示:

enter image description here

enter image description here

如果我在.vimrc

中设置此项
set list
set listchars=tab:——,trail:⋅,nbsp:⋅

特殊字符将在整个文件中可视化。我的问题是:如何在我附加的图像中显示特殊字符? (只有选定的区域)

2 个答案:

答案 0 :(得分:1)

来自:help 'list'

'list'            boolean (default off)
                  local to window

Vim没有实现仅限于某些行或选择的范围。 你想要的是不可能的。你能做的最好就是解决这个问题,例如:

  • 始终打开'list',但选择颜色的方式是只有当不同的背景颜色(即选择处于活动状态时)才能看到字符。
  • 围绕选择创建两个额外的窗口拆分,并且仅在中间启用'list'。这仅适用于静态选择,您无法再导航。

答案 1 :(得分:0)

我不知道有什么方法可以做这样的事情。我发现通常很难尝试将Vim塑造成像其他编辑一样。更像vim的方法是设置映射以切换'list'可能类似这样的

nnoremap col :set list!<cr>:set list?<cr>

此映射将通过'list'设置col选项(读取更改选项列表)。这个映射和更多有用的映射由Tim Pope的Unimpaired插件提供。