对于代码中tab和空格混合缩进的py文件,怎么将他们统一?

初中生
  • 56

好头疼的问题,要改的话要改很久,有没有什么批量解决的方法?

回复
阅读 6.4k
5 个回答
TechliveZheng
  • 2.1k
✓ 已被采纳

试试 retab[!] 命令,会根据你的设置,如 :set et ts=4 sts=4 sw=4,统一修改缩进字符。

: help retab
winterfell
  • 4
新手上路,请多包涵

各种编辑器都有设置吧,我用的Sublime是在用户设置里有tab_to_space设置。

sed -i -e 's/\t/    /g' /path/file.py

可以用vim的宏来实现

:set et ts=4 sts=4 sw=4 //设置tab转换对齐到4个空格
gg //到文件开头
qa //开始录制宏
gqq //将这行的tab转为空格
j //到下一行
q //结束录制
[email protected] //运行宏a 10次。

注意:
1. 分成多行是方便理解,每行的按键结束后不需要按回车。
2. 最后一行的10表示执行@a的次数。这个数字应该不小于文件的行数。

vim下直接使用:%s/\t/ /g就可以替换当前文件,批量的可以考虑用shell

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏