diff --git a/plugins/npm/.gitignore b/plugins/npm/.gitignore new file mode 100644 index 000000000..9bc147fc8 --- /dev/null +++ b/plugins/npm/.gitignore @@ -0,0 +1 @@ +npm_completion diff --git a/plugins/npm/npm.plugin.zsh b/plugins/npm/npm.plugin.zsh index 3f6fe0fb3..788e929d0 100644 --- a/plugins/npm/npm.plugin.zsh +++ b/plugins/npm/npm.plugin.zsh @@ -1,4 +1,12 @@ -eval "$(npm completion 2>/dev/null)" +__NPM_COMPLETION_DIR="${0:A:h}" +__NPM_COMPLETION_FILE="${__NPM_COMPLETION_DIR}/npm_completion" + +if [[ ! -f $__NPM_COMPLETION_FILE ]]; then + npm completion > $__NPM_COMPLETION_FILE || rm -f $__NPM_COMPLETION_FILE + compinit -i -d "${ZSH_COMPDUMP}" +fi + +source $__NPM_COMPLETION_FILE # Install dependencies globally alias npmg="npm i -g "