【问题标题】:Convert all the existing code files in the project from 2 space indentation to 4 space indentation with a Shell Script in XCode使用 XCode 中的 Shell 脚本将项目中的所有现有代码文件从 2 个空格缩进转换为 4 个空格缩进
【发布时间】:2020-11-24 13:30:48
【问题描述】:

了不起的人!!

我有一个需要执行 TechDebt 的项目,所有现有代码文件都有 2 个空格缩进。现在我想将所有 2 个空格缩进转换为 4 个空格缩进,有什么方法可以使这个过程自动化,而不是使用手动方法。

可能在 XCode 编辑器配置设置中使用任何类型的 Shel 脚本,我可以在其中注入该脚本并完成工作。

我们将不胜感激。

非常感谢各位。

【问题讨论】:

    标签: ios xcode shell xcode11 swiftlint


    【解决方案1】:

    我认为在 Xcode Find and Replace 中使用 Regex 后,您应该能够做您想做的事情。使用⌥⇧⌘F 调出Find Navigator,显示检查替换。从Text 切换到Regular Expression(如果尚未显示)并确保选择In Workspace(或更改为所需范围)

    ^\s\s 用于Find,将^\s\s\s\s 用于Replace。这会将每行开头的所有 2 个空格缩进替换为 4 个空格缩进。

    【讨论】:

      【解决方案2】:

      Leon 的答案很接近......但这会将现有的 4-leading-spaces 更改为 6,将 3-leading-spaces 更改为 5,将 6-leading-spaces 更改为 8,等等...

      尝试搜索模式:

      ^  [\S]
      

      这里很难说,但那是 ^ 后跟 两个空格 后跟 [\S] (行首 + 两个空格后跟非空格),

      替换模式:

        $0
      

      这里很难说,但那是 两个空格 + $0(匹配的字符串)

      【讨论】:

        【解决方案3】:

        大家好,@DonMag 和 @Leon Storey

        我做了一些研究,发现了一个重要的解决方案,如下所示:

        1. 安装 SwiftLint brew install swiftlint

        2. 在终端中转到您的项目

        3. 执行下面的命令

          swiftlint autocorrect --format

        你来了!

        这将自动编辑您的所有文件并将它们转换为 4 间距,并且它还将修复您项目中的其他格式错误(如果有)。对我来说,790 个文件在几秒钟内就被执行了。

        谢谢大家的回答。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-03-18
          • 1970-01-01
          • 1970-01-01
          • 2014-06-23
          • 1970-01-01
          • 2016-08-29
          相关资源
          最近更新 更多