私はVimmer(Vim使い)です。
プライベートでも会社でも、ずっとVimを使っています。このブログの記事も、ほぼ全てはVim、もしくはVisual Studio CodeのVimプラグインなどを使って書いています。
さて、そんなVimなのですが、世の中にはVim使いがたくさんおりまして、多くの IDEにはVimプラグインがあります。その中の一つに、XVimというXcode用のプラグインがあるのですが、私が愛用しているプラグインの一つです。
私のiOSアプリ開発には、常にXVimの存在がありました。今回は、そんな XVimを振り返っていきます。
XVim2とXVim
XVim2は、XVimの後継として登場しました。しかし、そこには歴史があります。
XVimは、もともとXcodeのVimプラグインとして、デファクトスタンダードの位置付けにありました。私も古くから愛用しておりまして、Swiftが発表される前のObjective-Cの頃から、ずっとVimプラグインを使ってコードを書いてました。
Xcode8になってからは、自己署名で署名をし直さなくてはならないという手間は増えたものの、それでも動作し続け、存続を続けていました。
XVim/INSTALL_Xcode8.md at master · XVimProject/XVim · GitHub
そんなXVimに、一大事件が起こります。Xcode9の登場です。なんと、Xcode9の登場によって、XVimは動かなくなってしまいました。
XVim界隈は大騒ぎになりまして、当時のissueの書き込み総数は、100件を突破しています。
そして、XVim騒動は困り果てた人たちによって、ついには千ドルの懸賞金がかけられる事態にまで発展します。
XVimが使えない間の私はどうしたのか?
私は、XVimが使えない間は、AppCodeでiOSアプリの開発をしていました。
AppCodeは、Android StudioやPhpStormで有名な、歴史のあるJetBrains社製なので、当然Vimプラグインも存在します。
ただし、普段はXCodeで開発していた私にとって、慣れないAppCodeでの開発にはかなり戸惑っていました。
XVimが動かなくなった理由
正確な理由を把握してはいないのですが、私は、XCode9そのものが、Swiftによってスクラッチから書き直されたからだと推測しています。
FirefoxのQuantumアップデートでは、高速化の代償に多くの古いプラグインが使えなくなりました。それと同じ理由なのかなと?
XVim2という朗報
さて、AppCodeで開発を続けていた私ですが、そんな私にXVim2という朗報が舞い降りてきます。
当初のXVim2は、うまく動かない状態だったのですが、修正を重ねることによってXVim2は普通に動くようになりました。XVim2の動作を確認した瞬間は、社内で思わず叫んでしまいました。
まさに、鷲巣がアカギの牌をロンした時のような、アドレナリンとエンドルフィンが全開な状態です。
XVim2のインストール
XVim2のインストールは、基本的にはREADME.mdに書いてある通りです。ただし、一つだけ注意点がありまして、自己署名による再署名が必要です。
XVim2/SIGNING_Xcode.md at master · XVimProject/XVim2 · GitHub
これをやった後は、普通にREADME.mdに書いてある通りに進めてください。再署名には時間がかかりますが、それ以外は3分もあれば完了します。
XVim2/README.md at master · XVimProject/XVim2 · GitHub
さいごに
当時、XVimの不具合を直そうとしてXVimのコードを開いたものの、さっぱり修正することができず挫折に至った記憶も、今では良い思い出です。
・・・というわけでして、XVim2は深い歴史のある、大変にありがたい存在なのです。
ちなみに、私はVimプラグインがないと、プログラミングのスピードが半分くらいにまでダウンします。そういう意味では、もはや単なるプラグインを通り越して、生命線のレベルになりつつありますね(苦笑)。