如何制作vim节目空间?

时间:2013-04-09 14:31:56

标签: vim

我正在尝试从gedit切换到vim。我试着让vim看起来像gedit:

gedit

特别是,我想用点表示空格。

我目前有:

enter image description here

存在一些差异,但看起来非常相似(这是my current .vimrc file)。但我没有得到那些空格点。

如何制作vim节目空间?

我找到了一些答案(比如this one)似乎建议用特殊的可见字符替换空格然后将其替换回来。我不想每次都这样做。我希望能够打开vim并查看这些空格。

7 个答案:

答案 0 :(得分:13)

我知道这是一个古老的话题,但有可能:

set lcs+=space:·

适用于我的Gvim 7.4。

答案 1 :(得分:7)

虽然你不能完全按照自己的意愿行事,但如果你的推理与我的相似,那么你想要看到那些空格,因为它有助于验证正确的缩进(我在那里有2个空格,还是3?) 。对于Vim> = 7.3,您可以使用indentLine插件在每个缩进处添加标记。太棒了。

如果您使用的是Pathogen,请进行安装:

cd ~/.vim/bundle
git clone https://github.com/Yggdroot/indentLine

enter image description here

答案 2 :(得分:6)

使用undercurl来完成这项工作可能是值得的。

hi WhiteSpaces gui=undercurl guifg=LightGray
match WhiteSpaces / \+/

或者您可以将其放在.vimrc

autocmd ColorScheme * highlight WhiteSpaces gui=undercurl guifg=LightGray | match WhiteSpaces / \+/ 

enter image description here

答案 3 :(得分:5)

有些时候我绝对需要查看哪些空格是标签,哪些是真正的空格字符,以及空格出现在一行的末尾。

当我使用vim时,我使用:

:set list

(我可以使用:set nolist关闭

使用:set list,文字空格显示为空格,标签显示为^I,行尾显示为亮粉红色$。 (因此,您在粉红色$左侧看到的任何空白区域都是真正的空格字符,右侧的空白区域只是行尾之间的“空白”和编辑的右侧。)

这很难看,但效果很好。

我不建议一直使用它 - 只是在那里看到文字空格和文字制表符存在的关键时刻。

答案 4 :(得分:0)

TLDR:你不能。

Vim提供'listchars'选项以显示Tab与空格,以及关键位置的空格字符,即在行尾的尾随。它没有为所有空格提供修改:空白方块是一个空格,句点。

如果您对引用的问题中发布的变通方法不满意,除了修改Vim的源代码和编译自己的二进制文件之外,没有办法实现此目的。

答案 5 :(得分:0)

使用J-L和Cedric Simon的答案。编辑〜/ .vimrc并添加:

set lcs+=space:·
nmap <F2> :set invlist<CR>
imap <F2> <ESC>:set invlist<CR>a

使用vim时,只需按F2

答案 6 :(得分:0)

您无需为此安装任何插件

set listchars=tab:\|\ 
"set listchars=tab:\┊\ 
"set listchars=tab:\┆\ 
"set listchars=tab:\¦\ 
set list