web-dev-qa-db-ja.com

Xcodeの末尾のスペースを削除する

ファイルを保存するときにXcodeに末尾の空白を削除させる方法はありますか?

それが重要な場合は、バージョン3.1.3を使用しています。

93

スクリプトを作成して、キーボードショートカットにバインドできます。

  • スクリプトメニュー>ユーザースクリプトの編集...を選択します
  • +ボタンを押してNew Shell Scriptを選択します
  • 「Strip Trailing Spaces」などの名前を付け、⌃⇧Rのようなショートカットを付けます。
  • 入力を「選択」に設定し、出力を「選択を置換」に設定します

次に、次のスクリプトを入力します。

#!/usr/bin/Perl

while (<>) {
    s/\s+$//;
    print "$_\n";
}
24
Darren

Xcode 4.4以降、行がすべて空白でない限り、空白はデフォルトで自動的にトリミングされます。 Including whitespace-only linesをアクティブにしてこれを修正することもできます。これはデフォルトではアクティブではありません。

Xcode > Preferences > Text Editing > While editingに移動します

Xcode preferences screenshot

207
Martin Stolz

Mac XcodeプラグインのGoogleツールボックス を使用していますが、保存時に末尾の空白を削除する「保存時に空白を修正」パラメーターを追加します。私はemacsからそれをたくさん逃しました。

24
Maxime

Xcode 8では、 swimat Xcodeプラグインをインストールし、Swiftコードをフォーマットしました。これにより、すべての後続スペースと空白のみの行が削除されました。

インストール方法

  1. Homebrew-caskを介してインストールします。

    brew cask install swimat
    
  2. アプリを直接ダウンロードします。
    https://github.com/Jintin/Swimat/releases/download/v1.3.5/Swimat.Zip

  3. extensionブランチのクローンを作成し、Macアプリにアーカイブします。

使用法

インストールしたら、Editor -> Swimat -> Format経由でXcodeでSwimatを実行できます。

3
moollaza

これはXcode 3.2では不可能です

編集:

これを行う方法がないので、私はこの質問に非常に簡潔に答えました適切に

もちろん、ソフトウェアなので、何でもできます。InputManagerのハッキングや、システム全体のキーボードインターセプトへのコードインジェクションの他の方法から始めて、ローカルシステムをいつでも変更できます。 Applescriptフォルダーアクション(arrgh)を設定するか、起動デーモンとFSEvents機能を使用してソースコードファイルを監視できます。

Xcodeにいくつかのスクリプトを追加することもできます(メニューのユーザースクリプト、ターゲットのスクリプトフェーズ、オーガナイザーのカスタムアクション、スタートアップスクリプトの可能性は非常に不明です)。しかし、これらのソリューションはすべて、ユーザーまたはユーザーのマシン上のカスタムセットアップ。

私は、SCMからプロジェクトをチェックアウトした後に単純に機能するソリューションを知りません。このスクリプトや同様のカスタマイズスクリプトが必要だと考えているため、バグを報告しました(レーダー7203835、「Xcodeワークフローでのユーザースクリプトトリガーの追加」)。まだフィードバックを受け取っていません。

レーダーエントリの全文は次のとおりです。

Xcodeでスクリプトを実行する場所を増やすと便利です。

例:

  1. ビルド前スクリプト
    ビルド前スクリプトを使用して、*。xcconfigファイルやconfig.hヘッダーなどの前提条件をビルドできます。これは、ビルドフェーズがトリガーされる前に依存関係の追跡が行われるため、「スクリプトのビルドフェーズの実行」では不可能です。

  2. ビルド後スクリプト
    上記と同様ですが、ビルドの完了後に実行されます(コード署名などを含む)。追加のパッケージング、有効性チェックなどに役立ちます。

  3. 事前/事後SCMコミットスクリプト。
    プロジェクトの整合性をチェックします。

  4. 事前/事後ファイル保存スクリプト。
    保存する前にファイルをチェック/変更します。例えば。コーディ美人を実行します

  5. カスタムプロジェクトアクション。
    オーガナイザーが任意のアクションを定義できることを知っています。ただし、これはユーザーごとの機能です(プロジェクトの一部ではありません)。ビルドメニューに表示され、プロジェクトの一部であるビルドやクリーンなどのアクションを定義したいと思います。

1
Nikolai Ruhe

Xcode4についてはこちらをご覧ください: http://www.wezm.net/technical/2011/08/strip-trailing-whitespace-xcode-4/

クールなMac用Googleツールボックスに、Xcode4用の「空白のトリミング」オプションが追加されました。

http://code.google.com/p/google-toolbox-for-mac/downloads/list

ありがとう、Google!

1
gregschlom