我想将所有现有(!)Python文件中的缩进从2空格更改为4空格移位宽度。任何建议如何在 Vim 中执行此操作?
问问题
205 次
4 回答
6
请注意,:set ts=4 sw=4
如果您使用硬制表符(即noexpandtab
),仅此一项就足够了,但我认为情况并非如此。但是,仍然可以通过临时设置来利用此功能noet
:
:set noet | retab! | set ts=4 sw=4 et | retab
这会将现有空格转换为制表符,更改每个制表符的空格数,并恢复为空格。请注意,这retab
可能会影响文件中其他地方的空格序列。
也可以手动将每对前导空格替换为两倍:
:%s/^\(\(\s\{2}\)\+\)/\1\1/g
不过,这种方法并不通用。
于 2013-01-23T13:04:01.560 回答
2
这不是解决您的问题的最佳解决方案,但对于一个文件,您可以重新缩进整个文件(如果您配置了缩进规则以符合您的喜好):
Shift+ V Shift+G =
于 2013-01-23T12:12:13.387 回答
0
如果您只使用了硬制表符(不与空格混合),请尝试在您的 vimrc 文件中将制表位和 shiftwidth 都更改为 4
还可以尝试查看http://vim.wikia.com/wiki/Indenting_source_code以获得更多关于缩进的帮助
于 2013-01-23T11:37:26.967 回答
0
要将缩进级别加倍,可以使用命令
:%s/^\s*/&&/
于 2013-01-24T19:20:19.780 回答