zshのMagic-spaceコマンドは何をしますか?

zshのMagic-spaceコマンドは何をしますか?

鉱山で次のコマンドを見つけましたが.zshrc、おそらく一部のWebサイトからコピーされた可能性があります。

bindkey " " magic-space # do history expansion on space

次のマニュアルページは非常に簡潔な説明と同じくらい役立ちます。

magic-space
    Perform history expansion and insert a space into the buffer. [...]

それではmagic-space、実際には何をしますか?どのような状況でこの履歴拡張が実行されるのがわかりますか?

答え1

magic-space実装する歴史的拡張!:前のコマンド(部分)を参照するために(or)で始まるコマンドの後にスペースを入力すると、履歴^参照が拡張されます。スペースのみを入力した場合は、を押すと履歴参照が展開されますEnter

$ zsh -f
% echo hello
hello
% !1 world
echo hello world
hello world
% bindkey " " magic-space
% !1

このときを押すと、Spaceラインは次のように変更されます。

% echo hello ¡

¡カーソルの位置を表示します。

関連情報