.zshrc に
ZLE_REMOVE_SUFFIX_CHARS=
と書けば無効にできます。
ZLE_REMOVE_SUFFIX_CHARS
環境変数はスペースを消す挙動を制御します。これにセットした文字種を入力すると、補完で入力された直前のスペースなどが消えます。何もセットしなければ ZLE_REMOVE_SUFFIX_CHARS=$' \t\n;&|'
と同じ意味です。空文字列をセットすれば無効になります。
参考:
Like!
zshでファイル名が補完されたあとに、自動挿入されたスペースが消失してしまう場合があるのが地味に気になります。
これをbashと同じ挙動に戻すような設定方法があればご教授ください。
_
はカーソル位置を表しています。
bashの場合
$ rm yarn_ <-- ここでタブを入力
$ rm yarn.lock _ <-- ファイル名の後にスペースが挿入される
$ rm yarn.lock && ls_ <-- カーソル位置から次のコマンドが入力できる
zshの場合
% rm yarn_
% rm yarn.lock _ <-- ここまではbashと同じ
% rm yarn.lock&&_ <-- スペースが消失し、前のコマンドにくっついてしまう
コマンドを実行する上でとくに障害があるわけではないですが、何か気持ち悪いです。
% uname -a
Darwin mba2020 20.6.0 Darwin Kernel Version 20.6.0: Wed Jun 23 00:26:27 PDT 2021; root:xnu-7195.141.2~5/RELEASE_ARM64_T8101 arm64
% brew info zsh-completions
zsh-completions: stable 0.33.0 (bottled), HEAD
if type brew &>/dev/null; then
FPATH=$(brew --prefix)/share/zsh-completions:$FPATH
autoload -Uz compinit
compinit
fi
もしご存知の方がいらしたらお教えください。
よろしくお願いいたします。
.zshrc に
ZLE_REMOVE_SUFFIX_CHARS=
と書けば無効にできます。
ZLE_REMOVE_SUFFIX_CHARS
環境変数はスペースを消す挙動を制御します。これにセットした文字種を入力すると、補完で入力された直前のスペースなどが消えます。何もセットしなければ ZLE_REMOVE_SUFFIX_CHARS=$' \t\n;&|'
と同じ意味です。空文字列をセットすれば無効になります。
参考:
@uasi 様
ありがとうございました!出来ました!