二重ダッシュ(--)が前に付くと、npmオートコンプリートが壊れます。

二重ダッシュ(--)が前に付くと、npmオートコンプリートが壊れます。

二重ダッシュの後に追加の引数を受け入れるコマンドを使用したときにこれが見つかりました。たとえば、次のようになります。

npm test -- spec/blah-spec.js

プリミティブでクリーンなZSH v5.3インストールでは、タブの完成は正常に機能します。

npm test -- spec/blah<TAB>

しかし、.zshrcに次の行を追加するとすぐに:

autoload -U compinit && compinit
zmodload -i zsh/complist

この場合、タブの完成は中止されます(TABは何もしません)。

このユースケースを壊さずに完成をカスタマイズする方法はありますか?

アップデート:提案されているように:

❯ which $_comps[npm]
_npm_completion () {
    local si=$IFS 
    compadd -- $(COMP_CWORD=$((CURRENT-1)) \
                 COMP_LINE=$BUFFER \
                 COMP_POINT=0 \
                 npm completion -- "${words[@]}" \
                 2>/dev/null)
    IFS=$si 
}

ベストアンサー1

おすすめ記事