Преобразование всех существующих файлов кода в проекте с отступом в 2 пробела в отступ в 4 пробела с помощью сценария оболочки в XCode.

Удивительные люди!!

У меня есть проект, который требует выполнения TechDebt, где все существующие файлы кода имеют отступ в 2 пробела. Теперь я хочу преобразовать все отступы с 2 пробелами в отступы с 4 пробелами, есть ли способ автоматизировать этот процесс, а не использовать ручной подход.

Потенциально с любым видом сценариев Shel в настройках конфигурации редактора XCode, где я могу внедрить этот сценарий и добиться своей цели.

Помощь будет высоко оценена.

Большое спасибо заранее, ребята.


person Kuldeep    schedule 04.08.2020    source источник


Ответы (3)


Я думаю, вы сможете делать то, что делаете, после использования Regex в Xcode Find and Replace. Используя ⌥⇧⌘F, чтобы вызвать Find Navigator, отображается флажок «Заменить». Переключитесь с Text на Regular Expression, если он еще не показан, и убедитесь, что выбран In Workspace (или измените на требуемую область)

Используйте ^\s\s для Find и ^\s\s\s\s для Replace. Это заменит все отступы в 2 пробела от начала каждой строки на отступы в 4 пробела.

person Leon Storey    schedule 04.08.2020

Ответ Леона близок... но это также изменит существующие 4-ведущие пробелы на 6, 3-ведущие на 5, 6-ведущие на 8 и т. д.

Попробуйте шаблон поиска:

^  [\S]

здесь трудно сказать, но это ^, за которым следуют два пробела, за которыми следует [\S] (начало строки + два пробела, за которыми следует не - пробел),

заменить шаблон:

  $0

здесь сложно сказать, но это два пробела + $0 (совпадающая строка)

person DonMag    schedule 04.08.2020

Привет, ребята @DonMag и @Leon Storey

Я провел небольшое исследование и нашел важное решение, которое приведено ниже:

  1. Установите SwiftLint brew install swiftlint

  2. Перейдите к вашему проекту в терминале

  3. Выполнить команду ниже

    swiftlint autocorrect --format

Вот ты где!

Это автоматически отредактирует все ваши файлы и преобразует их в 4 интервала, а также исправит другие ошибки форматирования внутри вашего проекта, если таковые имеются. Для меня это было 790 файлов, которые выполнялись всего за секунды.

Спасибо за ответы, ребята.

person Kuldeep    schedule 04.08.2020