[{"data":1,"prerenderedAt":427},["ShallowReactive",2],{"content-query-pZo4sUpHEP":3},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":9,"date":10,"tags":11,"eyecatch":12,"eyecatchEmoji":13,"body":14,"_type":421,"_id":422,"_source":423,"_file":424,"_stem":425,"_extension":426},"/article/260529/nvim","260529",false,"","今週覚えた vim コマンド","vim 修行中の僕が今週よく使ったコマンドをまとめて、最終的に俺用チートシート的な使い方にするための記事です。","2026-05-29","IT",null,"🌱",{"type":15,"children":16,"toc":416},"root",[17,25,30,42,47,52,57,64,69,141,147,152,402,406,411],{"type":18,"tag":19,"props":20,"children":21},"element","p",{},[22],{"type":23,"value":24},"text","こんにちは、だいちゃんです。",{"type":18,"tag":19,"props":26,"children":27},{},[28],{"type":23,"value":29},"前回 AstroNvim 入れたよ、という記事を書いてから2ヶ月が経ってしまいましたが、あれからあまり触れて無くて...",{"type":18,"tag":19,"props":31,"children":32},{},[33],{"type":18,"tag":34,"props":35,"children":39},"a",{"href":36,"rel":37},"https://blog.udcxx.me/article/260320/nvim-and-ghostty/",[38],"nofollow",[40],{"type":23,"value":41},"n度目のvimチャレンジ | 無趣味の戯言",{"type":18,"tag":19,"props":43,"children":44},{},[45],{"type":23,"value":46},"というのも、上記の記事を書いてからも AI は進歩し、Antigravity任せでいいなって思ってしまうシチュエーションが多くなり、なかなか自分でコードを書く機会がなかったのが理由です。",{"type":18,"tag":19,"props":48,"children":49},{},[50],{"type":23,"value":51},"ただ、久しぶりにプレーンな HTML で Webページをコーディングするお仕事を請けたので、ここぞとばかりに vim を使って書いてみました。（予想よりも長めに工数いただいた...ｱｻﾞｽ）",{"type":18,"tag":19,"props":53,"children":54},{},[55],{"type":23,"value":56},"Vim 初心者な僕が、今週よく使ったなぁと思ったコマンドをまとめておきます。何より来週の僕のために。",{"type":18,"tag":58,"props":59,"children":61},"h2",{"id":60},"neo-tree-系",[62],{"type":23,"value":63},"neo-tree 系",{"type":18,"tag":19,"props":65,"children":66},{},[67],{"type":23,"value":68},"AstroNeovim に最初からついてるファイラーと呼ばれるプラグインです。VSCode でもおなじみの、左側にファイルツリーが表示されるあれを実現してくれるやつ。",{"type":18,"tag":70,"props":71,"children":72},"ul",{},[73,118],{"type":18,"tag":74,"props":75,"children":76},"li",{},[77,79],{"type":23,"value":78},"開いているファイルのタブに切り替え\n",{"type":18,"tag":70,"props":80,"children":81},{},[82,113],{"type":18,"tag":74,"props":83,"children":84},{},[85,92,94,100,101,106,107],{"type":18,"tag":86,"props":87,"children":89},"code",{"className":88},[],[90],{"type":23,"value":91},"Space",{"type":23,"value":93}," ",{"type":18,"tag":86,"props":95,"children":97},{"className":96},[],[98],{"type":23,"value":99},"b",{"type":23,"value":93},{"type":18,"tag":86,"props":102,"children":104},{"className":103},[],[105],{"type":23,"value":99},{"type":23,"value":93},{"type":18,"tag":86,"props":108,"children":110},{"className":109},[],[111],{"type":23,"value":112},"{タブに表示される文字}",{"type":18,"tag":74,"props":114,"children":115},{},[116],{"type":23,"value":117},"Space-b-b を押すと、タブのところにアルファベットが1文字表示されるので、それを押すと該当のタブがアクティブになる。",{"type":18,"tag":74,"props":119,"children":120},{},[121,123],{"type":23,"value":122},"左のペイン（ファイルツリー）に移る\n",{"type":18,"tag":70,"props":124,"children":125},{},[126],{"type":18,"tag":74,"props":127,"children":128},{},[129,134,135],{"type":18,"tag":86,"props":130,"children":132},{"className":131},[],[133],{"type":23,"value":91},{"type":23,"value":93},{"type":18,"tag":86,"props":136,"children":138},{"className":137},[],[139],{"type":23,"value":140},"o",{"type":18,"tag":58,"props":142,"children":144},{"id":143},"vim-系",[145],{"type":23,"value":146},"vim 系",{"type":18,"tag":19,"props":148,"children":149},{},[150],{"type":23,"value":151},"標準の vim の操作と、neovim 独自の操作が混じってるかも。",{"type":18,"tag":70,"props":153,"children":154},{},[155,204,249,284,312,350],{"type":18,"tag":74,"props":156,"children":157},{},[158,160],{"type":23,"value":159},"\" 〜 \" の中を書き換える\n",{"type":18,"tag":70,"props":161,"children":162},{},[163,186,199],{"type":18,"tag":74,"props":164,"children":165},{},[166,172,173,179,180],{"type":18,"tag":86,"props":167,"children":169},{"className":168},[],[170],{"type":23,"value":171},"c",{"type":23,"value":93},{"type":18,"tag":86,"props":174,"children":176},{"className":175},[],[177],{"type":23,"value":178},"i",{"type":23,"value":93},{"type":18,"tag":86,"props":181,"children":183},{"className":182},[],[184],{"type":23,"value":185},"\"",{"type":18,"tag":74,"props":187,"children":188},{},[189,191,197],{"type":23,"value":190},"Change Inside \" で覚える。HTML 編集時に ",{"type":18,"tag":86,"props":192,"children":194},{"className":193},[],[195],{"type":23,"value":196},"class=\"hoge\"",{"type":23,"value":198}," の hoge を書き換えるときとかに。",{"type":18,"tag":74,"props":200,"children":201},{},[202],{"type":23,"value":203},"c i ( で ( ) 内を書き換えたりもできる。",{"type":18,"tag":74,"props":205,"children":206},{},[207,209],{"type":23,"value":208},"HTML タグ内を書き換える\n",{"type":18,"tag":70,"props":210,"children":211},{},[212,233,238],{"type":18,"tag":74,"props":213,"children":214},{},[215,220,221,226,227],{"type":18,"tag":86,"props":216,"children":218},{"className":217},[],[219],{"type":23,"value":171},{"type":23,"value":93},{"type":18,"tag":86,"props":222,"children":224},{"className":223},[],[225],{"type":23,"value":178},{"type":23,"value":93},{"type":18,"tag":86,"props":228,"children":230},{"className":229},[],[231],{"type":23,"value":232},"t",{"type":18,"tag":74,"props":234,"children":235},{},[236],{"type":23,"value":237},"Change Inside Tag",{"type":18,"tag":74,"props":239,"children":240},{},[241,247],{"type":18,"tag":86,"props":242,"children":244},{"className":243},[],[245],{"type":23,"value":246},"\u003Cp>hogehoge\u003C/p>",{"type":23,"value":248}," の hogehoge を書き換えるときとかに。結構役立った。",{"type":18,"tag":74,"props":250,"children":251},{},[252,254],{"type":23,"value":253},"単語を書き換える\n",{"type":18,"tag":70,"props":255,"children":256},{},[257,272],{"type":18,"tag":74,"props":258,"children":259},{},[260,265,266],{"type":18,"tag":86,"props":261,"children":263},{"className":262},[],[264],{"type":23,"value":171},{"type":23,"value":93},{"type":18,"tag":86,"props":267,"children":269},{"className":268},[],[270],{"type":23,"value":271},"w",{"type":18,"tag":74,"props":273,"children":274},{},[275,277,282],{"type":23,"value":276},"w = word。 ",{"type":18,"tag":86,"props":278,"children":280},{"className":279},[],[281],{"type":23,"value":271},{"type":23,"value":283}," だけだと単語単位の横移動できて便利。",{"type":18,"tag":74,"props":285,"children":286},{},[287,289],{"type":23,"value":288},"単語単位で戻る\n",{"type":18,"tag":70,"props":290,"children":291},{},[292,300],{"type":18,"tag":74,"props":293,"children":294},{},[295],{"type":18,"tag":86,"props":296,"children":298},{"className":297},[],[299],{"type":23,"value":99},{"type":18,"tag":74,"props":301,"children":302},{},[303,305,310],{"type":23,"value":304},"多分 back の意味。 ",{"type":18,"tag":86,"props":306,"children":308},{"className":307},[],[309],{"type":23,"value":271},{"type":23,"value":311}," の逆方向に単語単位で進める。",{"type":18,"tag":74,"props":313,"children":314},{},[315,317],{"type":23,"value":316},"検索\n",{"type":18,"tag":70,"props":318,"children":319},{},[320,329],{"type":18,"tag":74,"props":321,"children":322},{},[323],{"type":18,"tag":86,"props":324,"children":326},{"className":325},[],[327],{"type":23,"value":328},"/{検索ワード}",{"type":18,"tag":74,"props":330,"children":331},{},[332,334,340,342,348],{"type":23,"value":333},"エンターで確定して、 ",{"type":18,"tag":86,"props":335,"children":337},{"className":336},[],[338],{"type":23,"value":339},"n",{"type":23,"value":341}," で次の候補へ。 ",{"type":18,"tag":86,"props":343,"children":345},{"className":344},[],[346],{"type":23,"value":347},"N",{"type":23,"value":349}," で前候補へ。",{"type":18,"tag":74,"props":351,"children":352},{},[353,355],{"type":23,"value":354},"置換\n",{"type":18,"tag":70,"props":356,"children":357},{},[358,367,372,391],{"type":18,"tag":74,"props":359,"children":360},{},[361],{"type":18,"tag":86,"props":362,"children":364},{"className":363},[],[365],{"type":23,"value":366},"/%s/{対象ワード}/{置換後}/g",{"type":18,"tag":74,"props":368,"children":369},{},[370],{"type":23,"value":371},"エンターで置換できる。",{"type":18,"tag":74,"props":373,"children":374},{},[375,381,383,389],{"type":18,"tag":86,"props":376,"children":378},{"className":377},[],[379],{"type":23,"value":380},"%",{"type":23,"value":382}," を入れなければ、 ",{"type":18,"tag":86,"props":384,"children":386},{"className":385},[],[387],{"type":23,"value":388},"v",{"type":23,"value":390}," で選択済みの範囲内だけで置換もできる。",{"type":18,"tag":74,"props":392,"children":393},{},[394,400],{"type":18,"tag":86,"props":395,"children":397},{"className":396},[],[398],{"type":23,"value":399},"/g",{"type":23,"value":401}," を入れなければ、行内で複数出現するときに、最初の1箇所だけを対象にできる。",{"type":18,"tag":403,"props":404,"children":405},"hr",{},[],{"type":18,"tag":19,"props":407,"children":408},{},[409],{"type":23,"value":410},"今回は、Gemini に聞きつつ、横にノートを広げてメモを取りながら手を動かしてみました。やっぱり使わないと馴染まないもんですね。",{"type":18,"tag":19,"props":412,"children":413},{},[414],{"type":23,"value":415},"逆にいうと、大人になってからこんなに始めましてな体験なかなか無いので純粋に楽しめてます。AI にコーディングの楽しい部分が取られてたまるか！な気概で、時間的にも精神的にもゆとりがとれそうな時は積極的に vim の練習しようと思いました。",{"title":7,"searchDepth":417,"depth":417,"links":418},2,[419,420],{"id":60,"depth":417,"text":63},{"id":143,"depth":417,"text":146},"markdown","content:article:260529:nvim.md","content","article/260529/nvim.md","article/260529/nvim","md",1780054924178]