Vimのモーダル編集とTextObjectは生産性の革命だと思う.
VSCode の拡張機能 vscode-neovim で VSCode の操作を Vim 化している関係で,ターミナル上でもneovimをメインに使っている.以前は Vim 8 をメインに使っていた.
基本的な方針として,ターミナル上でもVSCode上でも使いたいテキスト編集補助系のプラグインは常に読み込まれるようにし,VimのUIをサポートするタイプのプラグインは全てターミナルでneovimを起動したときだけ読み込むようにする.
また,本格的なコーディングはVSCodeで実施するので,neovim側にはLSPなど複雑で外部依存があるものは入れないことにした.neovimを直接起動するのは,ちょっとした設定ファイルを編集したりテキストデータをいじるときだけだからである.
設定ファイルは全てLuaで書くようにし,プラグインは lazy.nvim で管理するようにした.
もしも今まで使っていたvimscriptベースのプラグイン(下記で “vimS” と表記)について,pure lua なものがあるのであればそれに置き換えるようにした.その多くは mini.nvim が実装してくれていて助かった.luaに乗り換えた結果,確かに起動は少し高速になった気がする.余計なプラグインを削ったことのほうが大きいのかもしれないけど.
f/t
でjumpするとき,同じキーで繰り返せるcamelCase
な単語について, w/b
的なモーションを追加してくれるa*/i*
がプリセットで,しかも新規設定も簡単<Plug>textobj-sandwich-auto-a/i
をサポートしない(!)なんと不便な…