私はMac OS Xでoh-my-zshとhomebrew zsh 4.3.12を使用しています。最近奇妙な問題を発見しました。scripts/not-used
複数のファイルがあります.R
。
breakdowns.R eventloop.R process-largeclients.R process-qt.R
reprocess-pinning.R calculate-qt-error.R generate_decision_tree.R process-net.R
process-scalingexp.R
ls scripts/not-used/
ただし、+を試してみると、Tab最初の完成はカーソル位置を表すls scripts/not-used/_.R
完成です_
。もう一度押すと、Tab次のような奇妙な結果が表示されます。
$ ls scripts/not-used/.R
breakdowns.R eventloop.R
この醜い(誤った)動作をどのようにキャンセルできますか?
設定オプションは次のとおりです。
alwaystoend autocd autonamedirs autopushd cdablevars completeinword
correctall extendedglob extendedhistory noflowcontrol
histexpiredupsfirst histignoredups histignorespace histreduceblanks histverify
incappendhistory
interactive login longlistjobs monitor promptsubst
pushdignoredups pushdminus pushdsilent pushdtohome
sharehistory shinstdin zle
ベストアンサー1
問題はzstyle
for matcher リストにあります。
以下を追加すると.zshrc
問題が解決します。
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' 'e:|[._-]=* e:|=*' 'l:|=* e:|=*'
e:
(デフォルトではなく)r:
文字列の最後まで一致するように強制します。
オプションの詳細については、以下で確認できます。ZSH:完全一致制御文書