如果您是编写源文件的唯一编码人员,并且没有强制执行特定样式的编码标准,请使用您喜欢的任何内容。就个人而言(并且符合我们的编码标准),我使用硬标签,以便查看代码的任何人都可以使用自己的偏好。
要进行更改,您只需将所有行首空格更改为两倍大。有很多方法可以做到这一点;在 Vim 文本编辑器中,我可以想到两个:首先:
:%s/^\(\s\{2}\)\+/\=repeat(' ', len(submatch(0))*2)
这是一个简单的正则表达式,它在行首查找一对或多对空格,并将它们替换为找到的空格数的两倍。可以通过以下命令打开 vim 来扩展它来执行所有文件:
vim *.py
(或等价物),后跟(未经测试):
:argdo %s/^\(\s\{2}\)\+/\=repeat(' ', len(submatch(0))*2)/ | w
或者:
" Switch to hard tabs:
:set noexpandtab
" Set the tab stop to the current setting
:set tabstop=2
" Change all spaces to tabs based on tabstop
:retab!
" Change the tab stop to the new setting
:set tabstop=4
" Go back to soft tabs
:set expandtab
" Replace all the tabs in the current file to spaces
:retab
当然,许多其他工具也会提供类似的功能:如果像sed
、或之类的东西不能很容易地做到这一点awk
,我会感到惊讶。perl
python