Vim/Neovimの実践的な使い方や設定、開発効率化について書いています。読んだキー操作は、ブラウザ上で動くVim道場でそのまま試せます(インストール・ログイン不要、全36レッスン)。

Articles

vim-python-windows10-howto
~/vim-blue $ less vim-python-windows10-howto.md

WindowsでNeovimをPython開発環境として構築する手順

lazy.nvim・mason.nvim・LSP・blink.cmpでPython向けIDEに仕立てる構成をゼロから解説。

#Neovim #環境構築
vim-sandbox-docker-container
~/vim-blue $ less vim-sandbox-docker-container.md

DockerでVim/Neovimの検証用サンドボックス環境を作る

設定やプラグインを壊れる心配なく試せる、使い捨ての検証環境をDockerで用意する方法。

#Neovim #環境構築
vim-file-reload
~/vim-blue $ less vim-file-reload.md

Vimでファイルとvimrcを再読み込みする(:e! / :source)

:e!でのファイル再読込と、:source $MYVIMRCでの設定反映。autoreadの既定値がVimとNeovimで違う。

#ファイル操作 #Tips
count-words-characters
~/vim-blue $ less count-words-characters.md

Vimでカーソル位置・単語数・文字数を確認する(Ctrl-g / g Ctrl-g)

位置確認のCtrl-gと詳細表示のg Ctrl-g、置換コマンドでの柔軟なカウント方法。

#ファイル操作 #Tips
vim-insert-file-path
~/vim-blue $ less vim-insert-file-path.md

Vimでファイルパスを補完・挿入する方法(Ctrl-x Ctrl-f)

パス補完のCtrl-x Ctrl-fと、OSコマンドの出力を挿入する:r!の使い分け。

#ファイル操作 #Tips
vim-read-file
~/vim-blue $ less vim-read-file.md

Vimで別ファイルの内容をカーソル位置に読み込む(:read)

テンプレートファイルなどを:readで差し込む方法と、挿入位置の指定方法。

#ファイル操作 #Tips
vim-oldfiles-browse
~/vim-blue $ less vim-oldfiles-browse.md

Vimで最近使ったファイルを開く(:oldfiles)

ファイル履歴から開く:bro olコマンドと、:filterによる絞り込み方法。

#ファイル操作 #Tips
bufdo-vimgrep-cwindow
~/vim-blue $ less bufdo-vimgrep-cwindow.md

Vimで開いている全バッファを検索する(bufdo + vimgrep + cwindow)

:bufdo vimgrep + cwindowで、開いている全バッファを一括検索し一覧表示する。

#検索・置換 #ウインドウ
buffers-list
~/vim-blue $ less buffers-list.md

Vimのバッファ一覧(:ls)の読み方と絞り込み方

:lsで表示される記号の意味と、状態やファイル名で絞り込んで表示する方法。

#バッファ #Tips
close-windows
~/vim-blue $ less close-windows.md

Vimでウインドウを閉じる4つの方法の違い

:q/:q!/:close/:hideの違いと、最後のウインドウでVimが終了する条件。

#ウインドウ #Tips
create-windows
~/vim-blue $ less create-windows.md

Vimで画面分割する方法(:split / :vsplit / :new / :vnew)

水平分割・垂直分割それぞれの、既存ファイル分割と新規バッファ用コマンドまとめ。

#ウインドウ #基本操作
move-windows
~/vim-blue $ less move-windows.md

Vimでウインドウ間をカーソル移動する方法(Ctrl-w)

Ctrl-w hjklでの方向移動、Ctrl-w wでの順次移動、特殊移動をまとめて解説。

#ウインドウ #Tips
swap-windows
~/vim-blue $ less swap-windows.md

Vimでウインドウの位置を入れ替える方法(Ctrl-w r/x/K/J/H/L)

ウインドウの回転・入れ替えと、端に移動して最大化するレイアウト変更キー。

#ウインドウ #Tips
vimgrep-files-cwindow
~/vim-blue $ less vimgrep-files-cwindow.md

Vimで複数ファイルを横断検索する(vimgrep + cwindow)

ワイルドカードでファイル指定して検索し、cwindowで結果を一覧表示する方法。

#検索・置換 #Tips
vimgrep-grep-difference
~/vim-blue $ less vimgrep-grep-difference.md

Vimのvimgrepとgrepの違い(内部grepと外部grep)

速度・対象・エンコーディング認識などの違いを比較し、grepprgの変更方法も紹介。

#検索・置換 #Tips
window-only
~/vim-blue $ less window-only.md

Vimで今のウインドウ以外を閉じる方法(Ctrl-w o / :only)

カレントウインドウだけを残して他を全部閉じる方法と、未保存変更時の挙動。

#ウインドウ #Tips
window-size-change
~/vim-blue $ less window-size-change.md

Vimのウインドウサイズを変更する(Ctrl-w と :resize)

広げたサイズが勝手に戻る原因のequalalways、カレントウインドウを自動で広げるwinheightまで実測値つきで。

#ウインドウ #Tips
command-line-window-display
~/vim-blue $ less command-line-window-display.md

Vimのコマンドラインウインドウの使い方(q: / q/)

コマンド・検索履歴をバッファとして編集・再実行できる機能の使い方。

#Exコマンド #Tips
command
~/vim-blue $ less command.md

Vimでユーザー定義コマンドを作る方法(:command)

自作のExコマンドを定義する方法、引数の扱い方、実用的な設定例まとめ。

#設定 #Exコマンド
vim-diff-files
~/vim-blue $ less vim-diff-files.md

Vimでファイル間の差分を表示する(vimdiff / :diffsplit)

vimdiffや:diffsplitで差分を色分け表示し、差分箇所を移動する方法。

#diff #Tips
vim-diff-merge
~/vim-blue $ less vim-diff-merge.md

Vimでファイル間の差分をマージする(:diffget / :diffput)

相手の変更を取り込むdoと、自分の変更を渡すdpの使い方、パッチのマージ方法。

#diff #Tips
change-block-part
~/vim-blue $ less change-block-part.md

Vimで括弧・引用符の中身を書き換える(ci" / ci( / ci{ / ci[)

カーソル位置を気にせず囲みブロックの中身だけを書き換えるテキストオブジェクト。

#テキストオブジェクト #Tips
change-html-tag-value
~/vim-blue $ less change-html-tag-value.md

VimでHTMLタグの中身・属性値を書き換える(cit / dat)

タグの中身を書き換えるcitと、タグごと削除するdatの使い方。

#テキストオブジェクト #Tips
digraph-special-character
~/vim-blue $ less digraph-special-character.md

Vimで特殊記号を入力する方法(文字コード指定 / ダイグラフ)

Ctrl-vでの文字コード直接指定と、2文字の組み合わせで入力するダイグラフ。

#Tips #基本操作