微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使现有选项卡在vim中显示为4个空格?

我在git存储库中工作,它的所有缩进都是制表符,但我喜欢在空格中工作(每个缩进4个空格).我不想只是对标签进行文本替换,因为那时我最终会在我的差异中出现可怕的混乱.相反,我希望 vim使标签显示为好像它们是空格.

我在阅读完这个问题后创建了这个问题:

Redefine tab as 4 spaces

其中一个答案(来自Alan Haggai Alavi)说:

set tabstop=4       " The width of a TAB is set to 4.
                    " Still it is a \t. It is just that
                    " Vim will interpret it to be having
                    " a width of 4.

set shiftwidth=4    " Indents will have a width of 4

set softtabstop=4   " Sets the number of columns for a TAB

set expandtab       " Expand TABs to spaces

这似乎表明运行:set expandtab将使选项卡显示为空格.显然情况并非如此.我怎样才能实现我追求的目标?我正在使用vim 7.4.

解决方法

从命令模式,只需调用

:retab

这会将现有标签转换为空格(假设你有:set expandtab,你已经在你的.vimrc中了).另外,由于您已将tabstop值设置为4个空格,因此:retab将使用该值并将现有选项卡替换为4个空格.

有关更多信息,请查看内置帮助

:help retab

如果你想做更多漂亮的事情,请看看这个链接http://vim.wikia.com/wiki/Super_retab

启用expandtab不会将现有选项卡转换为空格,只会扩展新的TAB字符插入.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐