InTheDayDream

gVimのススメ + 私のVim操作

Published on 2025-12-08
Last Modified 2025-12-08

Table Of Contents

はじめに

本エントリは 電通大プログラミング教室 Advent Calendar 2025 の8日目です。 少々用事がありまして公開がクソ遅くなりました。JSTで8日中なのでセーフという説にかけます。

昨日はYamakyuさんの「 バスナムのご案内[成果物紹介] 」でした。 バスの管理番号から詳細情報を見れるということをはじめて知りました。 調布周辺を活動拠点にしている人ならとても便利なアプリケーションですね。あいにく私は電車移動しかしないのですが…

さて、話題を私のエントリの方に変えます。 今日は私がメインで使っているテキストエディタ「vim」の小話をしていきます。 ブログのアーカイブを見ればわかるのですが、競技プログラミング以外の話題を書くのが9カ月ぶりくらいで、かつこのブログをしばらく更新していませんでした。 ということであまりクオリティに自信がありませんが、ぼちぼちやっていこうと思います。

Vimとは

Vim(ヴィム)とは、コマンドラインなどで動作するテキストエディタです。windowsのメモ帳やvscodeなどの仲間です。Microsoft Wordの仲間ではありません。

Vimのwikipedia によると、Vim出生は1987年7月で、ブラム・ムールナーがviという既存のテキストエディタを別の環境で使うために作成したクローン(Vi IMitation)であったそうです。 そこから2025年現在に至るまで実に38年間数えきれないほど多くの人に愛されてきた歴史あるソフトウェアです。

Vimは主にコマンドラインで動作するため、グラフィカル環境のありなしに関わらず、非常に様々な環境にプリインストールされています。 普段GUIテキストエディタを使用している人には「Gitを操作したついでに使わされるやつ」「大学で教えられたけど意味不明で投げ捨てたやつ」「信者が怖いやつ」など様々な見られ方をしているでしょう。

私のお気に入りのVim動画を2つ紹介します。興味があれば見てみてください。

Vim入門の現状

Vimに入門してみよう!という記事はネット上を探すと本当に無限に出てきます。 その要因として、

などがあるでしょう。こんな本もあります。

実践Vim 写真: https://www.amazon.co.jp/dp/4048916599

しかし布教活動もむなしく、Vimは「扱いが難しいテキストエディタ」「古臭いもの」「ガチ勢しか触っていないもの」みたいな印象を持たれているフシがあります。(これは定量的なデータではなく、肌感です。) 今見ているその端末で「Vim 入門」とググってみてください。この入門記事の多さがVimのハードルの高さをそのまま表しています。

Vimは他のテキストエディタとは全く異なる操作感を持っており、いきなり移行、入門をしようとしてもギャップに苦しむことはほぼ確定です。

その要因の一つに「モード」というものがあります。Vimは非GUI環境でも動くソフトウェアですから、全ての操作をキーボードで行える必要があります。 全ての操作というのはカーソルの移動、検索、コマンド実行などを含んでいます。 そのため、「今はカーソル移動だけできるモード」や「今は文字入力だけできるモード」などを適宜切り替えながら使わないといけません。 何も知らない人がVimを使おうとすると、多くの場合一文字も入力することができません。なんならVimを終了することすらできません。

gVim

さて、なぜVimが難しいのかというのをざっくり理解してもらったところで、私が思うVim入門のベターな方法をご紹介します。 それはズバリgVimです。 私はWindowsなのでそれ以外の環境でうまく動くかはよくわかりませんが、Vimの公式webサイトでgVimというGUI版Vimがあります。 ダウンロードページ

現在最新バージョンが9.1.1825のようです。ダウンロードして適当にインストールすると、デスクトップに「gVim 9.1」「gVim Easy 9.1」「gVim Read only 9.1」という3つのショートカットが生成されます。

gvim

これをダブルクリックすることで開くことができます。 全然関係ないんですが、グラセフとスゲー似てます。

gta5

gVim Easy

gVim EasyとはVimから「モード」の概念を取り払った機能制限版です。Windowsのメモ帳とほとんど同じで、クリックや矢印キーでカーソル移動するだけです。 デフォルトでコードハイライトとかをしてくれる(たしかそう)ので、まずはVimと触れ合ってみたい方はここからどうぞ。 アプリケーションの見た目は以下の感じです。

gvimeasy

gVim

つぎにgVimの紹介をします。これはコマンドライン版Vimとほぼ同じ動作をするものです。 ただしコマンドライン版との一番の違いは、上のツールバーから操作を行うことができることと、デフォルトでクリック操作がサポートされていることです。

Vimの基本操作をおぼえて、いざ実践投入してみるというときはこれを使うと良いと思います。 コマンドライン版のVimの場合、よく使う操作のコマンドチートシートを用意していないと、思うように操作できなくてイライラするかと思います。 ですがgVimなら最悪上のメニューからやりたいことを探せば大体できるためストレスフリーだったりします。 全部をいっぺんにではなく、段階的におぼえることが可能ということです。 最初はカーソル移動系を練習することになるかと思いますが、それに慣れるまではファイル保存や編集ファイルの切り替えなどはツールバーから行うといった感じです。 アプリの見た目はgVim Easyと同じです。

gVim Read only

これはgVimを読み込み専用のオプションをつけて開くショートカットです。このショートカットから直接開いたファイルは書き込み時に警告が出ます。 正直無理やり書き込めるし、いらないです。

ということで、Vimに入門してみたい人はgVimおすすめです。いかがでしたか?

Vim経験者向け部分

ここまでで前半は終わりで、以下はVim経験者に向けて自分の知見を共有していこうと思います。

私は大学入学したころにVimに入門して、そこから3年ほどVim一筋でやっています。 しかし他人とVimについての話をあまりしたことがなく、Vim操作がかなりガラパゴス化している可能性があります。

なので自分の認識を正してくれる人を募集するとともに、3年のVim経験を生かして少しでも役立つ情報を発信できればと思う次第です。 前提条件として、vimrcはこんな感じです。(ところどころ壊れていたりするので参考程度にしてほしい)

InTheBloom/vim-config
My vim setting files.

(generated with https://insane.nao-kun.com/github-card )

タイピング動画作りました。いつもこんな感じでVimを使っています。

よく使う便利なコマンドを適当に列挙してみてみます。

カーソル大雑把移動系

カーソル精密移動系

入力系

ヴィジュアルモード系

ウィンドウ系

バッファ系

タブ系

思ったより思い出せなくて驚きました。もう少しある気がしますが、ある程度無意識で使ってみるらしいです。 逆に3年使っている人が覚えているコマンド数がこの程度ということはなかなか意外なのではないでしょうか。 新米Vimmerの役に立てば幸いです。

逆にVim上級者の人は「これ便利なんじゃない」「この入力こうするとサボれる」というのがあれば是非教えてください。

おわりに

Vim使ってみてね。 明日はYamakyuさんの記事で、コメントに「css wakarnai」とあります。お楽しみに。