Есть ли способ заставить Xcode обрезать конечные пробелы при сохранении файла?
Я использую версию 3.1.3, если это важно.
Есть ли способ заставить Xcode обрезать конечные пробелы при сохранении файла?
Я использую версию 3.1.3, если это важно.
Ответы:
Вы можете создать сценарий и привязать его к сочетанию клавиш:
Затем введите следующий сценарий:
#!/usr/bin/perl
while (<>) {
s/\s+$//;
print "$_\n";
}
Начиная с Xcode 4.4 пробелы будут автоматически обрезаны по умолчанию, если только строка не состоит из пробелов. Вы также можете активировать, Including whitespace-only lines
чтобы исправить это, что по умолчанию неактивно.
Перейти к Xcode > Preferences > Text Editing > While editing
ctrl-i
во всех существующих файлах позаботится о конечных
Я использую плагин Google Toolbox для Mac Xcode , он добавляет параметр «Исправлять пробелы при сохранении», который обрезает конечные пробелы при сохранении. Я очень скучал по emacs.
~/Library/Application Support/Developer/Shared/Xcode/Plug-ins
(согласно инструкциям Google) мне пришлось вставить его /Applications/Xcode.app/Contents/PlugIns
и перезапустить Xcode.
Для 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.
После установки вы можете запустить Swimat в Xcode через Editor -> Swimat -> Format
.
Это невозможно в Xcode 3.2.
Редактировать:
Я ответил на этот вопрос так кратко, потому что нет возможности сделать это должным образом .
Конечно, поскольку это программное обеспечение, вы можете делать что угодно: начиная с взломов Input Manager или других способов внедрения кода и заканчивая общесистемным перехватом клавиатуры, вы можете изменить свою локальную систему, чтобы делать что угодно в любое время. Вы можете настроить действие папки Applescript (arrgh) или использовать демон запуска и средство FSEvents для просмотра файлов исходного кода.
Вы также можете добавить пару сценариев в Xcode (пользовательские сценарии в меню, этапы сценария в целях, настраиваемые действия в органайзере, есть даже очень неизвестная возможность сценария запуска), но все эти решения ошибочны, поскольку включают пользовательская или настраиваемая настройка на компьютере пользователя.
Я не знаю решения, которое просто работает после проверки проекта в SCM. Я считаю, что есть необходимость в этом и подобных сценариях настройки, поэтому я зарегистрировал ошибку (радар 7203835, «Функция: больше триггеров пользовательских сценариев в рабочем процессе Xcode»). Отзывов пока не получал.
Вот полный текст радиолокационной записи:
Было бы полезно иметь больше мест для запуска скриптов в Xcode.
Примеры:
Предварительные сценарии
сборки Предварительные сценарии сборки могут использоваться для создания предварительных условий, таких как файлы * .xcconfig или заголовки config.h. Это невозможно с помощью «Выполнить этапы сборки сценария», поскольку отслеживание зависимостей происходит до запуска какой-либо фазы сборки.Скрипты после сборки
Аналогичны описанным выше, но выполняются после завершения сборки (включая подписывание кода и т. Д.). Полезно для дополнительной упаковки, проверки действительности и т. Д.Скрипты до / после фиксации SCM.
Проверить целостность проекта.Скрипт до / после сохранения файла.
Чтобы проверить / изменить файл перед сохранением. Например, беги cody beautifiersПользовательские действия над проектом.
Я знаю, что организатор может определять произвольные действия. Но это индивидуальная функция для каждого пользователя (а не часть проекта). Я хотел бы определить действия, такие как сборка или очистка, которые отображаются в меню сборки и являются частью проекта.
См. Здесь для Xcode4: http://www.wezm.net/technical/2011/08/strip-trailing-whitespace-xcode-4/
Отлично, панель инструментов Google для Mac теперь добавляет параметр «обрезать пробелы» для Xcode4.
http://code.google.com/p/google-toolbox-for-mac/downloads/list
Спасибо, Google!
Самый лучший и простой способ без использования скриптов, хаков и многого другого. Просто перейдите в раздел «Найти и заменить». Лучший и простой способ без использования скриптов, хаков и многого другого. Просто перейдите в «Найти и заменить» и нажмите «alt / option + space», затем нажмите кнопку «space» на панели замены, а затем нажмите «Заменить все». Он заменит пробелы обычными пробелами, и предупреждение / ошибка исчезнет !!