Neovim / LazyVim
2026年6月28日lazyVim
最初にあるexample.luaを小分けにする場合xxx.luaは pluginsフォルダの中に置く。
configフォルダに置いても読み込まれない。新規プラグインや既存プラグインの設定変更はpluginsフォルダの中に置く。
lazyvimを放置している後に固まっている場合の対処 -> Ctrl + c 連打
放置後に補完が出なくなった場合 -> :e
右下に
recording @aのように出て space が効かなくなった場合 ->Nモード + q
()=>{}()の右側に移動するときにNモードに入ってからlで右に移動する必要はない
()と打ってカーソルが真ん中に出来た状態で ) を打つと右にカーソルが映る。{}も同様
mini.pairsプラグイン
頻出
特定の文字まで操作:t (until) / f (find)
className="flex items-center justify-center size-6 cursor-pointer"スペースが含まれるような行で特定の位置まで削除やコピーする場合、t/fはB/Wよりも操作が早い。
dt":"の手前まで削除
yf":"まで含めコピー
検索
ファイル:
space f f (find files)
space s w (search word)
カーソル位置の単語から使われているファイルを検索
ファイル内の文字から検索:VSコードのCtrl + Shift + F
space s g (search grep)
space / も同じ動作
関数や変数:
space g d (go to definition)
定義元に移動
移動
特定の行や塊を移動させる:
alt j/k
塊の作成はVモードで a (around)
ファイル内の特定の文字に移動:
f / F (find) + 文字
見つかった最初の文字の上にNモードでカーソルがある状態になる。
export const Test = () => {
return (
<main className="">
<div> {getNum(1, 5)}</div>
</main>
);
};上記はf = だと3つ = があり、それぞれを移動するには ; 、戻るには ,
ペアへ移動:
%
{} や () 、タグの始まり・終わり間をワープ
スクロール:
Ctrl + d / u
画面半分 down / up
Ctrl + { / }
空行間をワープ
surround
mini.surroundというデフォルトで入っているプラグイン
ci (change inside) や da (delete around) はvim標準のコマンドで中身が消えるので、中身を残す操作をするコマンドにはgs(go surround)でつなげる。
gsa 囲む (add)
gsd 囲みを削除 (delete)
gsr 囲みを変更 (replace)例:
(props: Props){}で()の中身を囲う
gsai({ (go surround around inside )
{}で全体を囲いたい場合は gsaa({ (go surround add around )
大文字
下の行 / 上の行に実行:
o / O :空行の挿入
p / P:ペースト
Vモード:
Vだと行単位で選択される。
W / B:
w (word) / b (back)は大文字だとスペースや改行までを1つの塊とみなすようになる。
className="text-lg font-bold text-black"上記のfont-boldをdiwで消そうとしても - で止まりまとめて消せない為、diWで消す。
-(ハイフン)や.(ドット)はそれ自体が1つの単語扱い
型情報を見る
Nモード K
VSコードのマウスカーソルホバーと似たようなもの
*Spaceは必要ない
複数行消す
3dd , 4dd
const sum = () => {};(を入力した地点でカーソルが()の真ん中にIモードでなる。引数が無い場合はl a で)の右にカーソルを持っていくので => までつなげるのが面倒
-> (の後に )を手入力すると)の右にIモードでつながる。
() , {} , "" あたりは頻繁に使用する。
ツリー
Space + eで開くツリーは snacks.nvimプラグイン
隠しファイルの表示:
H (Hidden files) で隠しファイルの表示(.npmrcなど)
I (Ignored files)で隠しファイルかつ .gitignoreされているファイルの表示 (.envなど)
ファイル、フォルダの移動:
Tabを押して、移動先にカーソルを移動したらm
タグ
複数タグを囲う:
<p>text</p>
<span>fsdfs</span>Vモードで複数行を選択してgsat
Nモードのgsaatt と違いat (around tag)が必要無いのは、複数選択しているので囲う範囲が決まっている為
ghostty
ターミナルを下・右に分割:
Ctrl + Shift + e / o
ターミナルを狭く:
Ctrl + Shift + Super (windowsマーク) + 矢印キー
矢印キーではなくhjklに変えたほうが良い。
ターミナル間の移動:
Ctrl + Shift + 矢印キー
同一ターミナル内の移動:
デフォルトはCtrl + Alt + 矢印キーだが、Ubuntuだとワークスペース間の移動に使われるので、Ctrl + Shift + hjkl 等に変更
Ubuntuでの設定例: config.ghostty
font-size = 13
cursor-style = block
cursor-style-blink = false
theme = One Dark Two
window-padding-x = 12
window-padding-y = 12
maximize = true
copy-on-select = clipboard
window-padding-color = extend
font-family = JetBrainsMono Nerd Font
# 同一ターミナル内の移動
keybind = ctrl+shift+h=goto_split:left
keybind = ctrl+shift+j=goto_split:bottom
keybind = ctrl+shift+k=goto_split:top
keybind = ctrl+shift+l=goto_split:right
# デフォルトのsplitのサイズ変更コマンドは ctrl+shift+super+up/down/left/right
keybind = ctrl+shift+super+h=resize_split:left,80
keybind = ctrl+shift+super+j=resize_split:down,80
keybind = ctrl+shift+super+k=resize_split:up,80
keybind = ctrl+shift+super+l=resize_split:right,80