アラのアラアラしい日記

こっそりかいてます

xcodeをアップデートしたらXVimとかのプラグインが動かなくなるアレ

こんにちは!忍びの者です。
カレー色のシャツを着てくるインド人の同僚が最近やっと心を開いてくれるようになりました。

今回はxcodeをアップデートした時に毎回プラグインが消えてしまうので、
復活方法のメモです。超自分の為です。
XVimを例に書いていこうと思います。

まずはアップデートxcodeのバージョンにXVimが対応しているかを確認します。
github.com

対応している場合、既にローカルに存在しているXVimディレクトリでmasterをpullしてmakeし直すだけです。

$ cd ~/Library/Application Support/Xcode/plugins/XVim  // このディレクトリは適宜変更してください。
$ git pull origin master
$ make

xcodeを再起動するとプラグインに反応して「Load bundle」が「Skip bundle」を聞いてくるポップアップが表示されるので、
「Load bundle」を選択します。
楽勝ダナコレ

以上の方法で出来なかった場合、xcodeのバージョンに応じたUUIDをプラグインのplistに追加します。
UUIDは以下のコマンドで確認することが出来ます。

$ /usr/libexec/PlistBuddy -c 'Print DVTPlugInCompatibilityUUID' "/Applications/Xcode.app/Contents/Info.plist"

ちなみに、β版xcodeで使いたい場合は以下です。

/usr/libexec/PlistBuddy -c 'Print DVTPlugInCompatibilityUUID' "/Applications/Xcode-beta.app/Contents/Info.plist"

こうすると、0420B86A-AA43-4792-9ED0-6FE0F2B16A13のようなUUIDが取得出来ます。

次に以下のファイルを開きます。

~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/XVim.xcplugin/Contents/Info.plist

すると、<key>DVTPlugInCompatibilityUUIDs</key>というタグの中にUUIDが並んだ箇所が出てくると思うので、その並びに先ほどのUUIDを追加します。

保存をしてxcodeを再起動すると、先ほど説明したようなポップアップが表示されるようになります。

この辺一気にチェックしてアップデートしてくれる何かがあると便利そうですね〜〜〜
という訳で今回はこんな感じで。今日もご飯が美味しいです。