当前位置:  开发笔记 > 开发工具 > 正文

用Vim中的空格替换Tab

如何解决《用Vim中的空格替换Tab》经验,为你挑选了7个好方法。

我想将tab转换为gVim中的空格.我向我添加了以下行_vimrc:

set tabstop=2

它可以在两个空格处停止,但它仍然看起来像是插入了一个tab键(我尝试使用h键来计算空格).

我不知道如何将gVim转换为空格?



1> ʞɔıu..:

根据其他答案开启expandtab后,根据新设置转换现有文件的极为方便的方法是:

:retab

它将适用于当前缓冲区.


作为Vim,它也适用于视觉选择区域:)
感谢您教我新事物。在看到您的评论之前,我已经使用了乏味的`:%s / \ t / / g`多年。

2> D.Shawley..:

IIRC,类似于:

set tabstop=2 shiftwidth=2 expandtab

应该做的伎俩.如果您已经有选项卡,那么请使用一个漂亮的全局RE来跟进它,以用双倍空格替换它们.


或者你可以使用:retab
哎呀,那是":%!expand -t2"
这一切意味着什么,[很好地在Vim维基上解释](http://vim.wikia.com/wiki/Converting_tabs_to_spaces).

3> Hank Gay..:

尝试

set expandtab

用于软标签.

要修复预先存在的标签:

:%s/\t/  /g

我使用了两个空格,因为你已经将tabstop设置为2个空格.


而不是做替换,你可以做上面尼克建议的 - 即重新开始.这将保留所有现有选项卡,作为tabstop中设置的空格数.
修复将插入两个空格,其中只需要一个空格.

4> serup..:

这对我有用:

你可以看到首先这样做的标签:

:set list

然后可以替换制表符然后执行以下操作:

:set expandtab

然后

:retab

现在所有选项卡都已替换为空格,然后您可以返回到正常查看,如下所示:

:set nolist



5> Jake Sellers..:

gg=G 将重新注册整个文件,并删除大多数(如果不是所有)我从同事那里得到的文件标签.


@ jes516`gg`将光标移到缓冲区的开头。“ =”是格式,并接受移动命令。“ G”将光标移动到缓冲区的末尾,因此它告诉vim从当前缓冲区的开头到结尾进行格式化。

6> 小智..:

将以下行添加到.vimrc中

set expandtab
set tabstop=4
set shiftwidth=4
map  :retab  :wq! 

在vim中打开文件并按F2键.选项卡将转换为4个空格,文件将自动保存.



7> 小智..:

如果你想保持\t等于8个空格,那么考虑设置:

   set softtabstop=2 tabstop=8 shiftwidth=2

这样每次按下会有两个空格,但\t代码中的实际值仍将被视为8个字符.

推荐阅读
linjiabin43
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有