![이중 대시(--)가 앞에 붙으면 npm 자동 완성이 깨집니다.](https://linux55.com/image/159503/%EC%9D%B4%EC%A4%91%20%EB%8C%80%EC%8B%9C(--)%EA%B0%80%20%EC%95%9E%EC%97%90%20%EB%B6%99%EC%9C%BC%EB%A9%B4%20npm%20%EC%9E%90%EB%8F%99%20%EC%99%84%EC%84%B1%EC%9D%B4%20%EA%B9%A8%EC%A7%91%EB%8B%88%EB%8B%A4..png)
이중 대시 뒤에 추가 인수를 허용하는 명령을 사용할 때 이 사실을 발견했습니다. 예를 들면 다음과 같습니다.
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
}