notebook

都内でWEB系エンジニアやってます。

ZLEに登録したコマンドを直接シェルから呼び出す

zshのZLEでキーバインドを設定したコマンドに関してはコンソールから直接呼ぼうとするとエラーになる

peco-select-history:zle:11: widgets can only be called when ZLE is active

どうしても直接呼び出したいパターンがあったので調べたら下記で回答がされていた

ZSH: how to ZLE widgets directly? - Super User

superuser.com

キーバインドによってコマンドが違うが直接ZLEに登録しているwidgetを実行できる

  • Emacsキーバインドの場合
    • Esc+x
  • vimキーバインドの場合
    • :

こんな感じで対象コマンドを入力すると実行される

発端はVS Codeでターミナル操作してるとき

history-searchでコマンド引っ張ってくるキーバインドがCtrl+rだったが最近の更新で「2番目のキーを待っています」状態になってしまい実行できなくなってしまったというもの

どうにも不便なので解決策を探したところ現状だとこの方法しかなさそう

これはこれでモヤッとする感じだけどこのためにいろいろ設定変える時間も惜しかったのでとりあえずこのまま行こうと思ってます