이중 대시 뒤에 추가 인수를 허용하는 명령을 사용할 때 이 사실을 발견했습니다. 예를 들면 다음과 같습니다.
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
}