Xcode 3.2 でテキストマクロを入力できなくなったら


Xcode では、「編集」→「テキストマクロを挿入」メニューから、あるいは、定義された短縮キーワードを入力した後オートコンプリートさせることによって、テキストマクロを入力することができます。例えば「init」なら init メソッドの定義、とか:

XcodeScreenSnapz012

テキストマクロの内容は、/Developer/Applications/Xcode.app/Contents/PlugIns/TextMacros.xctxtmacro/Contents/Resources/ 以下の *.xctextmacroファイルで定義されており、私はこれを改造して使っていました。

どマイナーな機能だと思うので、ここまでで「それ何の話?」 という方もいらっしゃるかもしれませんが、その説明はまたの機会として(おい)、Xcode 3.2 にしてから前述の短縮キーワードによる入力ができなくなり、とてもしんどいので調べてみました。

前述の *.xctextmacro ファイルはテキスト形式の plist になっている(たぶん)のですが、Xcode 3.2 版とそれ以前のものを見比べてみたところ、Xcode 3.2 版では一部の項目に、OnlyAtBOL = YES; という記述が増えていることに気付きました。

SmultronScreenSnapz0031

逆に、デフォルトのテキストマクロでも、OnlyAtBOL = YES; がついていないものは短縮キーワードによる入力ができなくなっていることを確認しました。

そこで、自分のテキストマクロの項目に OnlyAtBOL = YES; を追加したところ、ひとまず以前と同様に動作することを確認しました。

「OnlyAtBOL」の本来の役割はよくわからない(only at Beginning Of Line?)のですが、今のところこれが、テキストマクロを復活させるおまじないのようです。


“Xcode 3.2 でテキストマクロを入力できなくなったら” への1件のコメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です