Есть ли способ заставить Xcode обрезать конечные пробелы при сохранении файла?
Я использую версию 3.1.3, если это имеет значение.
Есть ли способ заставить Xcode обрезать конечные пробелы при сохранении файла?
Я использую версию 3.1.3, если это имеет значение.
Вы можете создать script и привязать его к сочетанию клавиш:
Затем введите следующий script:
#!/usr/bin/perl
while (<>) {
s/\s+$//;
print "$_\n";
}
Начиная с Xcode 4.4 пробелы будут автоматически обрезаны по умолчанию, если только строка не является пробелом. Вы также можете активировать Including whitespace-only lines
, чтобы исправить это, что по умолчанию неактивно.
Перейдите к Xcode > Preferences > Text Editing > While editing
Я использую Google Toolbox для Mac Xcode Plugin, он добавляет параметр "Исправить пробел при сохранении", который обрезает конечные пробелы при сохранении, Я пропустил это от emacs.
Это невозможно в Xcode 3.2
Edit:
Я ответил на этот вопрос так кратко, потому что не было никакого способа сделать это должным образом.
Конечно, поскольку это программное обеспечение, вы можете сделать все: начиная с хакеров Input Manager или других способов вворачивания кода в системный перехват клавиатуры, вы можете изменить свою локальную систему, чтобы делать что-либо в любое время. Вы можете настроить действие папки Applescript (arrgh) или использовать демон запуска и средство FSEvents для просмотра файлов исходного кода.
Вы также можете добавить несколько скриптов в Xcode (пользовательские скрипты в меню, script фазы в целевых объектах, пользовательские действия в организаторе, там даже очень неизвестная возможность запуска script), но все эти решения являются ошибочными, поскольку они включают пользовательскую или пользовательскую настройку на пользовательском компьютере.
Я не знаю решения, которое просто работает после проверки проекта из SCM. Я считаю, что для этого и подобных сценариев настройки нужны, поэтому я подал ошибку (радар 7203835, "Feature: больше пользовательских script триггеров в рабочем процессе Xcode" ). Я еще не получал отзывов.
Здесь полный текст радарной записи:
Было бы полезно иметь больше мест для запуска скриптов в Xcode.
Примеры:
Предварительные сценарии сборки
Сценарии предварительной сборки могут использоваться для создания таких предварительных условий, как файлы *.xcconfig или заголовки config.h. Это невозможно с помощью "Запустить script Фазы сборки", поскольку отслеживание зависимостей происходит до того, как будет запущена любая фаза сборки.Пост-скрипты сборки Как и выше, но работает после сборки (включая подписание кода и т.д.). Полезно для дополнительной упаковки, проверка достоверности и т.д.
Предварительные/пост SCM-скрипты.
Чтобы проверить целостность проекта.Сохранить файл Pre/Post Script.
Чтобы проверить/изменить файл перед сохранением. Например. бежать cody beautifiersПользовательские действия проекта.
Я знаю о способности организатора определить произвольные действия. Но это функция пользователя (не часть проекта). Я хотел бы определить действия, такие как сборка или очистка, которые отображаются в меню сборки и которые являются частью проекта.
Смотрите здесь для Xcode4: http://www.wezm.net/technical/2011/08/strip-trailing-whitespace-xcode-4/
Прохладный инструмент Google для Mac теперь добавляет опцию "trim whitespace" для Xcode4.
http://code.google.com/p/google-toolbox-for-mac/downloads/list
Спасибо, Google!
Для Xcode 8 я установил swimat подключаемый модуль Xcode, для форматирования кода Swift, который удалял все конечные пробелы и пробелы единственные линии.
Установить через homebrew-cask:
brew cask install swimat
Загрузите приложение напрямую:
https://github.com/Jintin/Swimat/releases/download/v1.3.5/Swimat.zip
Отладка extension
и архив в Mac App.
После установки вы можете запустить Swimat в Xcode через Editor -> Swimat -> Format
.