【问题标题】:Dealing with code indentation in Vim?处理 Vim 中的代码缩进?
【发布时间】:2010-10-08 23:01:44
【问题描述】:

我在一个由 4 人组成的工程团队工作,主要编写 javascript,偶尔也会涉足 ruby​​ 和 python。所以,作为一个团队,我们一直在共享代码,就像大多数程序员一样,团队的每个成员都有他最喜欢的缩进级别和相关设置。我是团队中使用并喜欢 Vim 作为我的主要代码编辑器的 2 名成员之一。我喜欢我的团队,但我也喜欢 我的缩进,它恰好使用了 4 个空格的制表符。有关更多上下文,这是我在 .vimrc 中使用的内容:

set ts = 4 sts = 4 sw = 4 expandtab " 4 space tabs

由于团队中进行了如此多的代码共享和协作编辑,主要代码文件通常开始显示为大量混合制表符和空格的混乱,因此即使是经典的 Vim 技巧,全选并按下 @987654322 @ to smart indent 没有太大的影响。

无论如何,我的问题是:在 Vim(特别是 MacVim)中,是否有更好(更可靠)的方式将代码文件从混乱的混合缩进转换为我喜欢的缩进?无论是 .vimrc 设置还是我在编辑文件时输入的命令,我都不在乎。

提前感谢您的任何建议!

【问题讨论】:

    标签: vim indentation macvim


    【解决方案1】:

    使用:retab

    话虽如此,我强烈建议您作为一个团队,在协作处理某个项目时同意并使用缩进样式。

    【讨论】:

    • +1。妥协在这里很重要。即使不是每个人都喜欢,也比每个人都同意要好。
    • 优秀..我不知道这个,谢谢它在我的 python 文件中消除了近 1000 个 PEP8 违规错误
    【解决方案2】:

    我们有在同一家商店使用 javascript 和 ruby​​ 的相同案例。

    autocmd FileType * set tabstop=4|set shiftwidth=4
    autocmd FileType ruby set tabstop=2|set shiftwidth=2
    set expandtab
    

    我发现我喜欢 4 个用于 javascript 的空格,但 ruby​​ 看起来更好,只有两个空格。

    我同意 Yaser,您需要设置标准(空格 FTW)

    一旦你决定摆脱所有制表符,使用 grep 来查找文件到 :retab

    grep -P '\t' * -R -c
    

    【讨论】:

      猜你喜欢
      • 2023-04-01
      • 2013-03-09
      • 2012-07-22
      • 2011-06-03
      • 2012-01-19
      • 2021-11-16
      • 2018-04-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多