いいから黙ってVSCodeとVimバインド

  • 05 December 2021
Post image

 さてついにプログラミングを始めるわけだが、あなたはまずエディタを用意する必要がある。要はプログラムコードを書き込むツールだ。エディタと呼ばれるものとIDEと呼ばれるものがあるが、とりあえずはエディタの方を用意しよう。

 この記事によると2021年は"VSCode"が一番人気!しかも他のエディタのシェアは年々減少しているのに対して、VSCodeはすごい勢いでシェアを拡大している。確かにスタバでドヤりながらコーディングしている奴のほとんどはVSCodeの画面を開いている気がする。この記事にたどり着いたあなたもVSCoderである可能性が高いよね。

 初心者のあなたはやはりVSCodeを使用してください。大概のことはこのアプリ1つで大丈夫だ。シェアが高いので拡張機能(Extensions)もたくさん公開されているというのも強味の一つ。しかもあのMicroSoftが胴元ってのが安心感あるよね。これから始める人、まだ経験が浅い人はVSCode一択です。

世代交代で消えていくエディタ達

 私のプログラマー人生の中でも、エディタ・IDEの勃興は激しかった。15年くらい前、一般プログラマーには秀丸やサクラエディタがたくさん使われていた気がする。あとはEclipse(特にJava言語で)。そして当時テクっていた手練れは、EmacsとかViでゴリゴリやっていた。

 その数年後、私の周りでは、“Sublime Text"が次々と広まっていたし、またさらにそのあとJetBrain製のIntelliJや再度Vimの人気が高まりNeoVimを使うユーザーも増えた。かくいう私もNeoVim派で数年戦っていた。しかし、言語やプロジェクトによってエディタ・IDEを変えるってのが普通だった。つまり乱立している状態だったと言える。
ところが現在では、“秀丸"や"Sublime Text"はまるでファックスのような古い存在となり、Eclipseもほとんど見かけない。NeoVimは上級者に好まれていて、サクラエディタはWindows環境でまだまだ現役で細々とやっている感じだ。

 VSCodeが次々と他のエディタを駆逐し、天下統一を計ろうとしているように見える。しかし今までも「NeoVimが最強」「Sublime一つでなんでもできる」とか言って盛り上がっては盛り下がるを繰り返してきたのを見てきた身からするとVSCodeがこれからも覇者であり続けるかどうかについてはいささか懐疑的だ。

とりあえずVSCodeにVimバインド!

 ともあれ2021年現在ではVSCodeが圧倒的に人気で使いやすい。だから初心者はまずVSCodeを使用しよう。加えてVimバインドもした方が良い。
 いいかい?初心者は絶対Vimバインドだ。中級者の人でも特別Vimバインドに反対の理由がなければ、Vimバインドだ。理由はあとで書く。
 もう一度言う。今すぐVSCodeをインストールして、Extensionで"vscodevim"をインストールするんだ!

拡張機能「vscodevim」

 VSCodeを起動したら以下のようにしてExtensionをインストール

ctrlshiftx

入力欄に"vim"と入力して"vscodevim"を選択

vimバインド

「install」を選択

vimバインド
commandshiftx

入力欄に"vim"と入力して"vscodevim"を選択

vimバインド

「install」を選択

vimバインド

 Vimをご存じの方は当然と思うだろうが、ファイルを開いたときに、ノーマルモード(カーソルに幅がある状態)で開かれていれば成功だ。

なぜVimバインドなのか

 理由は以下だ。

  1. コマンドが効率的なものが多い
  2. どうせSSHでファイル操作する時はvi(vim)でしょ
  3. vim操作は他のエディタでも使える→汎用性が高い

 Vimのコマンドが非常に便利で効率的であることは多くのプログラマーが賛同すると思う。そして前回の記事で書いたとおり何気ないエディット操作を何千回、何万回と行っていくのがプログラマーなんだ。Vimのコマンドによってほんの短い秒数を短縮できるだけで、将来にわたって大きな時間を節約できるわけだ。

 また、多くのエンジニアはサーバー(ほとんどがLinuxサーバー)にSSH接続してコマンドで操作するが、その時のエディタコマンドでもVimを使用することが多いため、覚えておいて損はない。

 さらに、これも重要なことなのだが、前述のとおり、VSCodeが将来も人気を維持できるかはわからないうえに、アプリ開発のためにVisual StudioやAndroid Studioを使用する必要があったりと、これからもいろんなエディタを使用することが出てくる。その時に、VSCodeのショートカットや拡張機能ばかり習得していると、他のエディタ・IDEをうまく使いこなせなくなり、VSCode以外に抵抗感を持ってしまう。そしてずるずると、現在でも未だにSubLimeTextを使っているようなおじさんのようになり果てるわけだ。(例として出しただけでSubLimeは悪くないと思うよ)
 ところがVimバインドにより、基本操作の一部をVimで行っていると、Vimバインドした他のエディタ・IDEを使いこなすことに抵抗感が薄れる。Vimバインドする機能はほぼすべてのエディタやIDEに備わっているし、将来Vimが消えてなくなる可能性もかなり低い。つまりVim操作は汎用性が高く、これからもずーっと役立つ可能性が高いのだ。例えるなら"Vim"は本命の恋人で、VSCodeやSublimeその他大勢は愛人って感じだ。その中でも今はVSCodeを一番の遊び相手とするが、Vimだけが本命みたいな。

 Vimの反対派も一定数存在する。彼らは十分にVimを使ってきてなおVimはよくないと主張する。そういう人たちの意見もちょくちょく見て納得することもあるし、私もVimの操作のすべてを肯定できるわけではない。Vimの達人などに話を聞いたときに「やりすぎでしょ笑。逆に非効率じゃん」って思うことも多々ある。しかし、やはりVimの圧倒的人気は当分崩れることはないだろう。

Vim沼へようこそ

 初心者がいきなり、Vimってつらいと思う。この記事ではVimの操作については触れないが、詳しく解説しているサイトやYoutube動画もあるので是非チェックしてほしい。とりあえず2週間Vimバインドの苦行をこなしてみて。2週間後まだVim操作に不慣れでストレスがたまる場合は、一旦VimExtensionはuninstallしてデフォルトに戻せばいい。そしてまた思い立ったときにVimBindの苦行を再開してほしい。

 苦行に耐えているうちに、あら不思議、もうVimなしでは生きられない身体になります。そしてだんだんVimコマンドを使いこなす動作1つ1つで気持ちよくなっていくんだ。Vimってそういうもの。(私はVimの達人ではないです)

今回は無駄にVSCodeを推しているが、開発によっては、VisualStudio、xcode、AndroidStudioなど他の環境を使うこともしばしばだ。全部vimバインドできるのでご安心を。

You May Also Like

初心者プログラマは基本動作だけで年間66時間以上も損しているかも?

初心者プログラマは基本動作だけで年間66時間以上も損しているかも?

 プログラミングの学習って何からスタートするべきと思う?Javaとかで、変数とかforとかifとか?そんなもんは後からでいいんだよ。何から手を付けるべきかというと、プログラミング作業時の将来の時間コストを削減することだ! プログラミングってのは、実装を頭のなかでイメージして、そのイ …

誰でも短期間でプログラマになれる

誰でも短期間でプログラマになれる

 まず私について。これまで長くシステム業界で働き、現在もシステム会社経営しながらプレーヤーとしても活躍してします。子供のころの趣味のプログラミングも合わせると17年以上パソコンカタカタを続けているので、この知識や経験を共有したいと考えてサイトを開設しました。 また、私はWEB開発、イ …