- 更新日: 2019年01月17日
- 公開日: 2015年03月17日
今さら聞けない高性能エディタVim入門
サクラエディタなど基本的なエディタに慣れたら、次に気になるのはさらに高性能エディタの代表格、vimではないでしょうか?Vimはプログラムコードやシステム設定ファイルなどの編集で威力を発揮するためエンジニアにファンが多いのも特徴ですが、エンジニアを惚れ込ませるその高性能さは一度惚れてしまうと離れられなくなるほど。慣れるまでは少し大変かもしれない上級者向けエディタですが、今回はその苦労を補って余りある高性能エディタ、vimの魅力をご紹介しようと思います!
vimの特徴
ストレスの少ないマルチプラットフォーム
Vimの大きな特徴のひとつは、OSなど環境に左右されない事(=マルチプラットフォーム)でしょう。WindowsやMacはもちろん、UbuntuやFreeBSDなど様々な環境で同じように使えるのがVimの特徴。例えば会社と自宅でエディタが違うためにショートカットの打ち間違いなどでイライラするなどの事もなく、開発や作業のストレスを軽減してくれます。
とにかく軽くて速い
VimはCUI(command line interface)で動くことが前提なのでとにかく軽くて速い!CUIとは簡単に言うとコマンドラインだけで動かす環境の事です。よくハッカーが画面いっぱいの英語の文字をカタカタやっているシーンがありますが、あれがCUIです。逆にCUIの対となるGUI(graphical user interface)は普段使っているマウスを使って操作をするインターフェイスの事。この普段私達が使っているGUIではディスプレイ解像度やCPUなどある程度のスペックが必要になりますが、CUIでは殆ど必要ないのでCUIベースで動くvimは軽くて速いのです。
基本的にキーボードだけで操作が可能
CUIベースのvimではマウスという概念が存在しないので、基本的にキーボードだけで操作が可能なのは大きな特徴でしょう。普段はあまり意識しないかもしれませんが、マウス操作は意外と時間が取られるものです。特にコーディング時やファイル操作時にはコマンドラインで2〜3行書けば数秒で済む操作もマウスを使えば倍以上に!この点もエンジニアがVimに魅了されてゆく理由のひとつです。そして余談ですが、キーボードだけで全ての操作を完結させるのは一種の快感でもあります。(※GVimと呼ばれるGUI版のVimもあり、こちらにはGUI特有のマウス操作などが実装されています)
基本的な操作方法
Vimではコマンドモードと入力モードという2つのモードを使い分けて操作を行います。ここがちょっとクセのある所で慣れるまでは大変なのですが、快適なコーディングライフの為に頑張って慣れて下さい!
インストール方法
Mac/Ubuntu
MacとUbuntuには最初からインストールされています。もしMacユーザーの方で最新版を入手したい場合などはMacPortsからインストールされるのが良いでしょう。(※標準のVimとインストールしたVimはパスが違うので環境変数PATHを変更するなど対応は行って下さいね)Ubuntuにはviという名前で入っていますが、ご安心ください。中身はVimです。
Windows
配布サイトからインストーラーをダウンロードし、インストールします。vim onlineが公式ですが、日本語自動認識など便利なスクリプトが同梱されている香り屋さんのインストーラーもおすすめです。インストールはダウンロードしたファイルを展開するだけなので、特に心配は不要でしょう。Vimの基本操作
まずはVimを起動してみましょう。Windowsの場合はgVimのショートカットをクリックし、それ以外はターミナルから「vim」または「vi」と入力です。また、この時から日本語入力モードはオフにしておきます。
この時、編集モードになっているので何か文字を打ち込もうとしても打ち込めない事がおわかりでしょう。文字を入力するには入力モードに切り替える必要があり、「i」と入力します。画面下に「INSERT」と表示されればOKです。これで文字が入力できるようになります。
入力モードを終えるには「esc」キーを押下します。この編集モードと入力モードの切り替えが慣れないうちは難しいと思いますが、頑張って慣れて下さい。Vimではこの基本操作に様々なコマンドを加えてファイル編集を行っていきます。それでは次はVimの代表的なコマンドをいくつかご紹介しましょう。
vimの代表的なコマンド
ファイルを開く
「vi ファイル名」と入力すればファイルを開く事ができます。「vi +n ファイル名」とすればn行目から開くという事もでき、「vi -r ファイル名」とすれば壊れたファイルのリカバリも可能。
入力モードへの切り替え
さきほどご紹介した「i」の他にも入力モードへの切り替えコマンドがあります。「i」はカーソルの左から入力開始、「I」は行頭から、「a」はカーソルの右から、「A」は行末から入力開始です。保存&終了
「:wq」で内容をファイルに保存して終了します。「:q」では普通に終了しますが内容が保存されていない場合には警告を出してくれ、「:q!」とすると保存の有無に関わらず強制終了します。カーソル移動
Vimのミソでもあるカーソル移動は、これを習得すれば操作が格段に早くなるスグレモノ。これを覚えてコマンド操作をラクにしちゃいましょう!たくさんあるので一部だけご紹介しますが、例えば「0」で行頭、「h」で1文字戻る、スペースキーで1文字進むなどです。コマンドはこちらのサイトで詳しく紹介されているので、よければ参考にしてみて下さい。vim最高!と叫びたくなる便利なコマンド
ここまででのご紹介ではエンジニア達が魅了されるほどの魅力はお伝えできていませんね。ではここからはエンジニア達がVim中毒になるほどの便利なコマンドをご紹介していきましょう。どれもかゆいところに手が届く仕様でキーボードだけで操作できる事から入力スピードアップが図れるスグレモノです。
%:括弧に移動する
()などの括弧上で%を打つと対応する括弧へ移動してくれます。シンプルな動きながら、複雑なソースコードの編集などのシーンで活躍するコマンドです。数字:好きな行にジャンプする
これも重宝するコマンドですが、数字を打つとその数字の行にジャンプしてくれます。さらに「gg」と打てばファイルの先頭行に、「G」と打てばファイルの最終行へと移動するのでこのコマンドを覚えておけばファイルの中を簡単に移動できるというわけです。これも長いソースコードの編集時に役立ちます。ciw:単語全体を削除する
変数名やclass名などを1文字1文字消すのは面倒なもの。そんな時は「ciw」と打てばすると単語全体を削除してから挿入モードに入ってくれます。こういったちょっとした事がコーディングのスピードに関わるので、重宝しますね。Ctrl-p/Ctrl-n:単語補完
他のテキストエディタでもですが、やはり嬉しいのが補完機能。「Ctrl-p」もしくは「Ctrl-n」と打てば候補となる単語を出してくれるので、こちらも素早い入力に便利。pとnの違いは入力候補文字のソート順なので、あまり気にしなくても良いかもしれません。\Webサイト担当者としてのスキルが身に付く/
まとめ
さて、今回はvimの特徴や基本的な使い方をご紹介しましたがいかがでしたでしょうか?もちろん、vimの魅力はまだまだこれだけではありません。Vimを愛するエンジニア達はコマンドを使いこなしている上に追加機能を入れて更に強力なツールにカスタマイズしています。とはいえ、入力モードや編集モードなどはじめは慣れるのが大変かもしれませんね。少しずつ慣れながらVimの便利さに触れて、快適なコーディングライフを楽しんでみてくださいね!
- この記事を書いた人
- 山崎 響