Xcodeのコード完了を無効または変更する方法はありますか?
-
19-09-2019 - |
質問
Xcode Code Code Sense Preferencesに「ポップアップリストで引数を表示する」と「完了のために引数プレースホルダーを挿入する」の両方をチェックしましたが、エディターで「else」(例えば)を入力すると、Xcodeはまだ事前にフォーマットされています。 「else」ブロック。
この機能を完全に無効にする方法はありますか、それともXcodeが挿入するブロックを変更する方法はありますか?デフォルトのxcode "else"ブロックは私のコーディングスタイルと一致しないため、プレースホルダーは実際に支援する代わりに生産性を妨げます。
アップデート: 見つけたばかりです この質問 これについては、コードの完了に使用されるデフォルトのインデントと白面を変更する方法について説明しているため、質問の後半に答えます。
更新#2: 「自動的に提案」を「決して」に設定します。 Outisによって提案されています コードの完了を完全に完全に無効にします。私が探しているものは無効にする方法だと思います 明確な 変数名とメソッド名のすべての通常の完了を保持しながら、コードの完了(「else」ブロックのように)。
解決
既存のコードの完了をオーバーライドし、.xtcmacroファイルを次のものにコピーできます。
/Applications/Xcode.app/Contents/PlugIns/TextMacros.xctxtmacro
(xcode.appを右クリックして、「パッケージの内容を表示」して、端末を使用している場合を除き、ディレクトリチェーンをさらに進む必要があります)
ローカルディレクトリに:
~/Library/Application Support/Developer/Shared/Xcode/Specifications
(おそらく仕様ディレクトリを作成する必要があります)。次に、そこにあるすべての定義を調べるだけで、迷惑な完了を排除するために、 CompletionPrefix
任意のエントリの場合、または挿入されるコードを編集して、好きなように機能します。
サイドノートでは、.xctxtmacroという名前のファイルを任意のファイルを配置して、その仕様ディレクトリに配置すると読み込まれ、非常に便利なカスタムマクロを定義できます。
他のヒント
「テキスト編集」および「インデント」選好セクションには、求める設定がある場合があります。
「自動的に提案」を「Never」に設定できます。