3

一段时间以来,我在源文件中使用了 tabstop=4。现在我写了很多缩进很深的javascript,4个tabstop似乎很浪费,所以我想将它转换为2。问题是我也使用“set expandtab”。所以仅仅设置tabstop = 2,不会有帮助。

关于如何将所有文件快速转换为 tabstop 2 的任何建议?

我当前的相关 .vimrc 设置是

set tabstop=4
set shiftwidth=4
set expandtab
4

2 回答 2

12

你可以做

" convert spaces to tabs first
set noexpandtab
set tabstop=4
set shiftwidth=4
retab!
" now you have tabs instead of spaces, so insert spaces according to
" your new preference
set tabstop=2
set shiftwidth=2
set expandtab
retab!

在 vim 窗口中,它将根据您的喜好重新设置。您可能可以创建一个映射以使这更容易,或者记录一个宏。可能还有另一种方法,但上述方法应该有效。("是评论)

于 2010-08-19T03:43:17.757 回答
6

您可以更改您的设置,全选,然后按=键缩进:

ggVG=

我还建议使用 ftplugin 来指定每个文件类型的设置。

于 2010-08-19T03:43:35.570 回答