Linux Programming

エディターとしてなぜVimがおすすめなのか【何がいいの?】

更新日:

私、プログラミング暦3年にして、遅まきながらVimの良さを理解しつつあります。「なぜプログラミングエディターとしてVim(Vimプラグイン含む)がおすすめされているのか」、Vim初心者の立場で考えてみました。

非常にとっつきにくく操作が難解に思えるVimですが、やっとその生産性の高さを実感できるようになりましたので、Vimの良さをまとめます。

プログラミングエディターとしてなぜVimがおすすめなのか

Vimおすすめ理由

  • プログラミング速度が上がる
  • Vimしか使えない環境がある
  • IDEでVimキーバインドが使える

Vim初心者の私が感じているVimの利点は上記3点です。エディタとしてVimが最強かどうかより「Vimを導入する必要とメリットがある」と感じ、使うようになりました。

プログラミング速度が上がる

Vimのコマンドを覚えていくと、確実に効率が上がっていることが実感できます。マウスや矢印キーに一切触れずに操作できますので、キーボード上の手の動きは最短距離です。単語検索などの移動が高速で、コピー機能が充実しています。「実践Vim 思考のスピードで編集しよう!」というVim入門書がありますが、まさにこのフレーズに尽きます。

Vim導入時はコマンドが全く分からず、我慢の時期が続きます。しかし、繰り返し使うコマンドは限られますし、IDEにVimを導入するとVim以外で入力できなくなりますので、否が応でも覚えることになります。プログラミングという作業の効率化を目指すなら、この我慢の期間は乗り越える価値があります。

Vimしか使えない環境がある

これはLinux環境のことです。Raspberry PiでPythonを触っていると、どうしてもLinux環境下にログインすることになります。そのときに「ちょっとコードを直したい」「シェルスクリプトを書きたい」といった状況でVimが使えないと作業が進みません。VimはLinux OSの標準エディターですので、自分のやりたいことをやるのにVim操作の習得が必要でした。

Linuxにはnanoという簡易エディターが入っているディストリビューションもありますが、入っていないケースもあります。また、インターネットにつながっていないLinuxや接続制限のあるLinuxサーバーなどでは、nanoをインストールすることすらできません。私のケースでは、Vimの習得は必須でした。

IDEでVimキーバインドが使える

VS CodeやAtomなどの人気IDEでは、Vimのキーバインド(Vimの各種コマンド)を引き継げるプラグインがあります。Vimの機能と完全一致とはいかないまでも、Vimの操作感ほぼそのままにプログラミングできます。

このようにVim操作をLinuxを離れた環境でも利用できる、というのは非常に大きいですね。私のように30歳超えてからプログラミングを始めたような人間にとっては、VimはVim、IDEはIDEのコマンドといった使い分けが覚えられません。やはり覚えることは最小にまとめたいものです。この点で、Vimの操作を他のアプリで使える環境があるのは素晴らしいことだと感じています。

Vimは使いこなせないと意味が無いの?

「思考のスピードで編集」となると、相当使いこなさないとその域には達しません。しかしながら、Vim特有の「ノーマルモード、インサートモード、ヴィジュアルモード」という概念を理解するだけでも編集スピードはあがります。

  • 単語移動
  • カーソルの飛び移動(上下)
  • 行の追加
  • 矩形編集

編集中便利だなと思いながら使っている機能をざっと上げました。無意識で使っているコマンドも多くなっています。マウス操作ではひと手間必要な動きだったので、大変重宝しています。

これらの操作はVimの初歩の初歩ですが、使いこなさなくても今日から使えるコマンド達です。困る頻度が多い操作は、調べたらメモを取るようにして少しずつ覚えれば十分でしょう。使えるコマンド数を他人と競う必要はまったくありませんからね。

見た目のパフォーマンスより、効率を上げることが最重要です。

Vimはどういう人におすすめなのか

授業のためだけにプログラミングに取り組む初心者や、スピードを重視しない方にとってVimは不要でしょう。Vim操作を覚える時間をアイデアを出すクリエイティブな時間に充てた方が有意義です。

私が考える、Vim習得による「高い生産性」を実感できる方は次の2タイプです。

  • Linux環境下での作業が必須の方
  • ソースコードを入力する作業を少しでも効率化したい方

特にプログラミングにおいて、「コードを打ち込む」という作業には付加価値がありません。そのコードで実現するアルゴリズムであったり、機能にこそ価値があります。となると必然的に「コードを編集する作業はなるべく短くしたいよね」、という発想になる方にはVimはうってつけでしょう。

また、プログラミングに常に触れている方で無いとVimのコマンド操作は身に付きません。Vimコマンドは使いつけていないと、端から忘れていきます。「あれどうやるんだっけ~」と調べている時間が非生産的です。プログラミングする周期があまり離れている方には、Vimは向かないでしょうね。

まとめ

Vimについてのまとめ

  • Vimコマンドを習得することで効率が上がる
  • Linux環境下で編集作業ができる
  • Vimの習得難易度は高い
  • Vimをおすすめできない人も居る

私自身も長らくVimの良さがわからず、食わず嫌いをしていました。Linuxに触れる中でVimの効率の高さに気付き、また周りにVimを教えてくれる環境があったことから少しずつコマンドを覚えだした状況です。

思いきらないと、なかなかVimを習得しようとは思えませんが、気持ちが決まれば習得も早いものです。習うより慣れろ!ですね。

おすすめ
初心者がVimをくじけずに覚える方法【使いにくいを乗り越えろ!】

生産性UP、そしてLinux環境下でのファイル編集にVimをマスターしようとしているVim初心者に向けた内容です。 私自身、Vimを触りだしてまだ浅いですが、食わず嫌いしていたVimで何とかファイル編 ...

続きを見る

タグ

カテゴリー

  • この記事を書いた人
アバター

from-age35

中小企業エンジニアです。35歳で急遽プログラミングを覚えることになり、PythonやJavaScriptなどをゆっくりマイペースに覚えています。先端スキルには疎いですが、楽しくコーディングしてます♪最近の興味は【WEB開発】です

-Linux, Programming
-, ,

Copyright© 35からのプログラミング , 2019 All Rights Reserved Powered by AFFINGER5.