Vim のブログ

テキストエディター Vim の魅力、使い方のコツを初心者にも分かりやすく伝えていきたいと思います。

このブログの目次

はじめに Vim のブログを始めた理由 Vim をオススメしたい理由 先輩 Vim ユーザーの記事に学ぶ 先輩 Vim ユーザーの記事に学ぶ 〜英語編〜 Vim の使い方 基礎編 Vim のインストール Vim のヘルプの使い方 Vim 操作方法まとめ記事のまとめ Vim のモード Vim …

Vim のテキスト編集 〜テキストオブジェクト編〜

Vim は、カーソル前後にある「HTMLタグの内側」、「引用符を含む文字列全体」といった一定の規則を満たしたテキストを、テキストオブジェクトとして一連のコマンドで指定することが出来ます。 Vim では、オペレーターやビジュアルモードの対象となるテキスト…

Vim のテキスト編集 〜ビジュアルモード編〜

ビジュアルモードは、テキスト選択のためのモードです。編集対象となるテキストを事前に「視覚的に」確認することが出来るので、「ビジュアルモード」と呼ばれます。 ビジュアルモードを開始するためのコマンド一覧 ビジュアルモードを開始するためのコマン…

Vim のテキスト編集 〜基礎編〜

Vim はカーソル移動やテキストの挿入以外に、一般的なテキストエディターで言うところのカット、コピー、ペーストといったテキスト編集のためのコマンドも充実しています。 テキスト編集のためのコマンドは、オペレーターと対象テキスト指定とを組み合わせる…

Vim のウィンドウ分割機能

Vim は、ウィンドウを分割することが出来ます。Vim のウィンドウは、バッファと独立に存在する「覗き窓」です。 分割されたウィンドウで、同じバッファ(ファイル)を開くことも、別のバッファを開くことも出来ます。あるファイルを編集しながら、ウィンドウ…

Vim の挿入コマンドとその取り消し、繰り返し

挿入を開始するコマンド テキストの挿入を開始するためのコマンドはなんと6つもあります。(他にも既存のテキストを削除してインサートモードに入る「変更(Change)コマンド」「置換(Substitute/Replace)コマンド」もあるのですが、別のところで紹介します。…

Vim の移動コマンド

Vim のノーマルモードとビジュアルモードで利用できるカーソル移動コマンドをひととおり紹介します。 1文字(1行)単位の移動 Vim ではカーソルキーの代わりに、右手ホームポジションにある hjkl (←↓↑→に対応)の4つのキーを使います。 このキーバインドの起…

Vim のスクロールコマンド

スクロール関連のコマンドを紹介します。すべて、ノーマルモードもしくはビジュアルモードで有効です。 上下スクロール スクロールのコマンドは上下3組で6個ありますが、半画面単位のスクロールを行う <C-u> と <C-d> を覚えたら他のコマンドは不要かもしれません。<C-f> </c-f></c-d></c-u>…

Vim の文字検索移動コマンド

Vim にはカーソル行の中だけに限って、一文字だけを検索して前後に移動する機能があります。他のエディターではあまり見たことがない機能ですが、削除や変更コマンドと組み合わせて使うと非常に便利です。 検索対象となる文字は、ASCII文字であれば何でも良…

Vim のキーワード検索コマンド

Vim はキーワード検索が非常に手軽に行えるので、日常的に移動のコマンドとして活用できます。すべてノーマルモードで有効なコマンドです。 コマンド検索方向説明覚え方 /キーワード<enter> 右下(ファイル末尾に向かう) カーソル位置からファイル末尾方向に向かって</enter>…

このブログでの Vim コマンドの凡例

以下にこのブログでの Vim コマンドの凡例を示します。基本的には一般的な作法に準じているはずです。 コマンド説明 ciw c, i, w の順にキーを押す {数字}G 数字(2桁以上も可)を入力したあと、SHIFT キーを押しながら g キーを押す f{文字} f キーを押し…

Vim のプラグイン紹介 〜 surround.vim でカッコつける 〜

surround.vim は、[], (), {} といった括弧や、'' や "" などの引用符、HTMLタグなど、「テキストを囲うもの」を編集するプラグインです。 「囲われているテキスト」には変更を加えず、「テキストを囲うもの」だけを追加、削除、変更することが出来ます。 (…

Vim のカスタマイズ 〜autocmd で自動処理の実例〜

autocmd による自動処理 の便利な実例を幾つか紹介したいと思います。利用したいスクリプトを.vimrc に書き加えてください。 ファイルを開いた時に、前回のセッション終了時のカーソル位置を復元する function! s:RestoreCursorPostion() if line("'\"") <= …

Vim のカスタマイズ 〜キー割り当て変更の実例〜

こちらのページでは、 Vim のカスタマイズ 〜キー割り当て変更方法〜 に従ってキー割り当て変更の実例を幾つかご紹介したいと思います。.vimrcに追記して下さい。 なるべく個人の好みによらず無難に役立ちそうなものをチョイスしてみました。 ビジュアルモー…

Vim のカスタマイズ 〜autocmd で自動処理〜

Vim の自動処理とイベント .vimrc が読み込まれて中に記述されたコマンドが実行されるのは、Vim の起動時の一度だけです。 しかし、ここに autocmd というコマンドを書き加えることにより、特定のタイミングに対して自動で処理を追加することが出来ます。こ…

Vim のカスタマイズ 〜キー割り当て変更方法〜

キー割り当て変更 vi/Vimは最小限のキー操作で様々な事が行えるように作られています。ですが、「どうしても使いにくいキー配置があるので、変えたい」、「繰り返し行う複雑な操作を簡単に行いたい」ということがあります。そんな時にキー割り当て変更が活躍…

Vim のカスタマイズ 〜カラースキームで好みの配色にしよう〜

カラースキームとは? Vim の表示の配色をまとめたパッケージです。配色は画面の印象を大きく左右します。長時間向かうことになるテキストエディターの画面ですから、好みの配色を見つけることはとても重要です。 前もって必要な準備 プラグイン管理ツールを…

Vim のプラグインを探すのに役立つサイト

ウェブ上には Vim プラグインの情報は膨大にあるのですが、その中で、特に広くいろんなプラグインを見て回りたい場合に参考になるサイトを紹介します。 ワシのVimプラグインは百八式まであるぞ - daisuzu's notesなんと、108 個もプラグインが紹介されていま…

Vim のカスタマイズ 〜 NeoBundle でプラグイン管理! 〜

プラグインとは? Vim の動作は、VimScriptというプログラム言語によって拡張可能です。この VimScript を特定の用途のためにパッケージ化したものをプラグインと呼びます。 インターネット上には、無数の便利なVimプラグインが公開されています。好みのもの…

Vim のカスタマイズ 〜 set コマンド オススメまとめ 〜

画面表示の設定 カーソル移動関連の設定 ファイル処理関連の設定 検索/置換の設定 タブ/インデントの設定 OS/環境との統合関連の設定 コマンドラインの設定 ビープの設定 これまで紹介してきた、set の option をまとめると下の通りです。このまま.vimrc フ…

Vim のカスタマイズ 〜 タブ/インデントの設定 〜

この記事では、.vimrc上でset コマンドを使って vim のコマンドラインモードの設定をするための option を紹介していきたいと思います。 option 名設定対象の説明値の種別オススメの設定 expandtab タブ入力を複数の空白入力に置き換える (既存のタブには影…

Vim のカスタマイズ 〜 動作環境との統合関連の設定 〜

この記事では、.vimrc上でset コマンドを使って vim のコマンドラインモードの設定をするための option を紹介していきたいと思います。 option 名設定対象の説明値の種別オススメの設定 clipboard OSのクリップボードをどのレジスタと関連付けるか。 文字列…

Vim のカスタマイズ 〜 コマンドラインの設定 〜

この記事では、.vimrc上でset コマンドを使って vim のコマンドラインモードの設定をするための option を紹介していきたいと思います。 option 名設定対象の説明値の種別オススメの設定 wildmenu コマンドラインモードで<Tab>キーによるファイル名補完を有効にす</tab>…

Vim のカスタマイズ 〜 ビープの設定 〜

この記事では、.vimrc上でset コマンドを使って vim のビープの設定をするための option を紹介していきたいと思います。 option 名設定対象の説明値の種別オススメの設定 visualbell ビープ音をすべて視覚表示(ビジュアルベル)に置き換える。 オン/オフ オ…

Vim のカスタマイズ 〜 検索/置換の設定 〜

この記事では、.vimrc上でset コマンドを使って vim の検索/置換の設定をするための option を紹介していきたいと思います。 option 名設定対象の説明値の種別オススメの設定 hlsearch 検索文字列をハイライトするか? オン/オフ オン incsearch エンターキ…

Vim のカスタマイズ 〜 ファイル処理関連の設定 〜

この記事では、.vimrc上でset コマンドを使って vim のファイル処理関連の挙動を設定するための option を紹介していきたいと思います。 option 名設定対象の説明値の種別オススメの設定 hidden 編集中で保存されていないファイルがあるときに他のファイルを…

Vim のカスタマイズ 〜 カーソル移動関連の設定 〜

この記事では、.vimrc上でset コマンドを使って vim のカーソル移動の挙動を設定するための option を紹介していきたいと思います。 option 名設定対象の説明値の種別オススメの設定 backspace <BS>キーの影響範囲を指定。詳細はヘルプを参照。 リスト indent,eo</bs>…

Vim のカスタマイズ 〜 画面表示の設定 〜

この記事では、.vimrc上でset コマンドを使って vim の画面表示周りを設定するための option を紹介していきたいと思います。 option 名設定対象の説明値の種別オススメの設定 number 行番号表示 オン/オフ よほど画面が狭いのでなければオン ruler 画面右下…

Vim のカスタマイズ 〜 set コマンド 〜

vim は set というコマンドで様々な項目を設定できます。この設定可能な項目は option と呼び、それぞれの項目は固有のオプション名を持ちます。 option を有効するには、コマンドラインモードで set というコマンドを使います。具体的には、 :set オプショ…

Vim のカスタマイズ 〜導入編〜

vim は非常に柔軟にカスタマイズすることが出来ます。 操作に慣れてきたら、自分好みに使いやすくカスタマイズしていきましょう。 vimのカスタマイズは、 .vimrc というファイルを作成して編集し、保存することで可能になります。.vimrc は下の通り、OSごと…

Vim のモード

モード Vim が他のエディターと大きく違うのは複数のモードを持っている所です。それぞれのモードは出来る事と操作方法が違います。 Vim を正しく使うためには、現在 Vim がどのモードになっているかを意識することは不可欠です。以下に主だったモードを紹介…

Vim 操作方法まとめ記事のまとめ

vim は操作方法が他のどのソフトとも違うので、説明を読まずに使うことは不可能です。 ですが、vim の操作方法に関する情報は膨大にあるので、自分のレベルに応じたまとめを参照しないと、情報の消化不良を起こしてしまい、vim を使うのが嫌になってしまうか…

Vim のヘルプの使い方

vim はヘルプ(=説明書)が充実しているのですが、vim の使い始めの頃はヘルプ自体の使い方が難しいと思いますので、この記事が助けになればと思います。 ヘルプの起動方法 vim のヘルプは、vimを起動した後に、 :help<Enter> もしくは :h<Enter> と入力することで起動できま</enter></enter>…

Vim のインストール

Windows の場合 http://www.kaoriya.net/software/vim でダウンロードしましょう。日本向けに翻訳とカスタマイズがされています。32bit/64bitの違いがわからない場合は、32bit版を利用してください。zip ファイルを展開して、どこか決まったフォルダに配置し…

先輩 Vim ユーザーの記事に学ぶ 〜英語編〜

Vim ユーザーは世界中にいます。日本にかぎらず英語圏にまで目を向ければ、さらに有益な情報を得ることが出来ます。英語を聴いたり、読んだり出来る Vim ユーザーの方々にはさらに下の3つのページをオススメしたいと思います。 Vim Tutorial Videosカナダ在…

先輩 Vim ユーザーの記事に学ぶ

Vim には大勢のユーザーがいるので、ウェブにはたくさんの vim についての記事があります。その中で、特に初心者が最初に vim がどういうエディタであるかを知るのに参考になる記事をピックアップしたいと思います。 今年こそ始める!何度も挫折した人のため…

Vim をオススメしたい理由

Vim の特徴 文書を編集するためのソフト、テキストエディターです。 文書の中でも特にプログラムコードやHTMLなどを編集することに向いており、開発者向けです。 非常に歴史が長いソフトウェアです。最初のリリースは1991年。Vimの前身となる vi は、1976年…

Vim のブログを始めた理由

テキストエディター Vim を使い始めてまだ半年も経っていないのですが、その魅力にすっかりとりつかれてしまいました。 様々な種類のコードを書く開発者の方々には最高のテキストエディターだと思います ある程度使いこなせるようになるまで、情報を求めてい…