TL;DR
- Xcode 6.3.2 用の DVTPlugInCompatibilityUUIDs を追加する
- Xcode 起動時に Plugin を有効にするポップアップがでるようになった
- 大抵の Plugin はメニューに表示されないが動作は初期設定の動作はする(設定で有効にしないと動かないようなものはダメ)
以下、それぞれの詳細です
DVTPlugInCompatibilityUUIDs を追加
以下のコマンドで一括して DVTPlugInCompatibilityUUIDs(E969541F-E6F9-4D25-8158-72DC3545A6C6
) を追加
$ find ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins -name Info.plist | xargs -IFILE defaults write FILE DVTPlugInCompatibilityUUIDs -array-add E969541F-E6F9-4D25-8158-72DC3545A6C6 |
DVTPlugInCompatibilityUUIDs が異なる
追記 2015/05/22 14:04
FILE
のところには plist を指定すれば問題ありませんでした。
使い方をミスってただけです。お騒がせしました。
$ defaults read /Applications/Xcode.app/Contents/Info.plist DVTPlugInCompatibilityUUID |
追記おわり
普段 defaults read ...
で DVTPlugInCompatibilityUUIDs
を確認してたので無駄にはまった。。。なんで違うのかはよくわかりません。僕の環境だけかもしれませんが defaults read ...
は信じないと心に誓いました。
$ defaults read FILE DVTPlugInCompatibilityUUIDs /Applications/Xcode.app/Contents/Info.plist
(
"9F75337B-21B4-4ADC-B558-F9CADF7073A7"
) |
$ cp /Applications/Xcode.app/Contents/Info.plist ~
$ plutil -convert xml1 ~/Info.plist
$ cat ~/Info.plist
...
<key>DVTPlugInCompatibilityUUID</key>
<string>E969541F-E6F9-4D25-8158-72DC3545A6C6</string>
... |
Xcode 起動時に Plugin を有効にするポップアップがでるようになった
Plugin の数によって多少メッセージが異なりますが大体こんな感じです

これが曲者で、UUID 追加後に Xcode を起動すると初回のみ表示されます。
"Skip Bundle" を選択すると Plugin が無効になり、Xcode を再起動してもポップアップはでてきません。
しかも default が "Skip Bundle" のため、適当に Enter を押すと Plugin が無効になるという悲しさ…
ポップアップを表示する方法
追記 2015/05/22 14:04
Qiita で教えてもらいました。
defaults delete com.apple.dt.Xcode DVTPlugInManagerNonApplePlugIns-Xcode-6.3.4
でもリセットできるみたいです!
Xcode-*
は自分が使っているバージョンを指定すればOKです。
追記終わり
- Xcode を閉じる
~/Application Support/Developer/Shared/Xcode/Plug-ins
の名前を変更する
- Xcode を再起動
~/Application Support/Developer/Shared/Xcode/Plug-ins
に名前を戻す
- Xcode を再起動
こうすれポップアップが表示されるので "Load Bundle" を選択しましょう
メニューを表示する方法
これは Xcode Plugin 開発者用ですね。
どうやら pluginDidLoad:
が呼ばれたタイミングだと -[[NSApp mainMenu] itemWithTitle:]
が nil
を返すようになったのが原因です。
NSMenuDidChangeItemNotification
を Observe するようにしてメニューを設定するようにすれば出るようになります。
Tuna の場合はこんな感じで対応しました。
PR おくれば大抵マージされると思うので空前の GitHub Chance がやってきたわけですね。
みなさんガンガンおくりましょう。
感想
ただただつらい…