Wagomu no Akibako

キーマッピングを設定しないVimmerが居たっていい


この​記事はVim駅伝2023年06月02日の​記事です。

前回の​記事は​ mityu さんの​「Zsh on :terminal on Vim で​カレントディレクトリを​ Vim と​同期する」と​いう​記事でした。

次回の​記事は​ 6/5 に​投稿される​予定です。

はじめに

キーマッピングを​設定せずに​どうやって​コーディングを​しているのか、​どのように​その​問題を​解決しようと​しているのかの​過程です。

まだまだ​手探り状態です。

キーマッピングを​覚えられない

キーマッピングを​設定しない​Vimmerが​居たって​いいんじゃないでしょうか

自分は​設定した​キーマッピングを​よく​忘れます。

全く​覚えられません。

プラグインを​入れていないのか?と​いう​ことは​なく、​そこそ​この​量を​入れています。​それらの​プラグインを​どうやって​使っているのかと​いうと、コマンド補完に​完全に​頼っています。

現在進行形で​nvimの​設定の​プラグインを​再選定を​しているのですが、​プラグインの​設定が​整っておらず、​以前​設定していた​プラグインの​キーマッピングも​消失して​それらも​コマンド補完で​乗り​切っています。​(:Lspsaga code_actionとか、、、​)

ある​種縛りのように​見える​コーディングスタイルですが、​補完プラグインの​一つである、nvim-cmpの​お陰で​そこまで​苦労は​していません。​nvim-cmpにはhrsh7th/cmp-cmdlinedmitmel/cmp-cmdline-historyと​いう​プラグインが​あります。​ これらの​プラグインを​導入する​ことに​よって、​コマンドや​コマンド履歴を​補完する​ことができるので、​一度​入力した​コマンドを​次回入力時に​補完する​ことができて​非常に​助かっています。

解決策は?

キーマッピングを​可視化してくれる​プラグインと​して、which-key.nvimが​あります。​キー入力に​迷った​とき、​自動的に​候補が​ポップアップ表示されると​いう​非常に​便利な​プラグインなのですが、​自分は​どうも​負けた​気が​してしまう​ため直ぐに​消してしまいました。

そして​最近、​某-jpの​timesチャンネルで​キーマッピングの​模索を​してた​ときに、​複数の​方から​「自分は​こういう​運用を​しているよ。​」と​いうのを​教えて​もらいました。

atusyさんは、

telescope.nvimで作る簡易コマンドパレット(VSCodeのCtrl + Shift + Pっぽいの) telescope.nvimはキーマップ、Exコマンド、ファイルなどを検索・活用するためのNeovim用プラグインです。 この内、キーマップ(
ogp

に​書いてあるように、telescope.nvimを​使って​VSコードの​コマンドパレットのような​ものを​再現していました。

yuki yanoさんは、leximaを​拡張して、​EXコマンドを​自動展開させるlexima-alter-command.vimと​いう​プラグインを​使っているとの​ことでした。

そしてmonaqaさんは、

に​書いてあるように、​プラグインを​使わずcabbrevコマンドを​使うことに​よってyuki yanoさんと​ほぼ同等の​ことを​実現していました。

また、​これを​書いている​今日、kuuさんは​コマンド補完とcmdwinを​使っていると​いう​ことを​教えて​もらいました。

どれが​いいだろう?

自分は​アドバイスを​もらったらとりあえずやってみる​タイプなので、​これらを​試そうと​思っています。​(やる​ことが​たまりすぎていて、​まだ​試せていません)

今回の​プラグイン選定ではtelescope.nvimではなくddu.vimを​使おうと​思っているので、​dduで​キーマッピングを​引っぱってくる​ソースを​作ろうと​思います。

まとめ

いかがでしたか?

全く​話が​着地していませんが、​自分の​思いと​しては​これからも​あまり​キーマッピングは​設定しない​方​向性を​続けていこうと​思います。​なにか進展が​あれば​報告しようと​思います。

以上!!