diff options
| -rw-r--r-- | zsh/pnpm.zsh | 28 | ||||
| -rw-r--r-- | zsh/work.zsh | 1 |
2 files changed, 29 insertions, 0 deletions
diff --git a/zsh/pnpm.zsh b/zsh/pnpm.zsh new file mode 100644 index 0000000..ad44e82 --- /dev/null +++ b/zsh/pnpm.zsh @@ -0,0 +1,28 @@ +#compdef pnpm +###-begin-pnpm-completion-### +if type compdef &>/dev/null; then + _pnpm_completion () { + local reply + local si=$IFS + + IFS=$'\n' reply=($(COMP_CWORD="$((CURRENT-1))" COMP_LINE="$BUFFER" COMP_POINT="$CURSOR" SHELL=zsh pnpm completion-server -- "${words[@]}")) + IFS=$si + + if [ "$reply" = "__tabtab_complete_files__" ]; then + _files + else + _describe 'values' reply + fi + } + # When called by the Zsh completion system, this will end with + # "loadautofunc" when initially autoloaded and "shfunc" later on, otherwise, + # the script was "eval"-ed so use "compdef" to register it with the + # completion system + if [[ $zsh_eval_context == *func ]]; then + _pnpm_completion "$@" + else + compdef _pnpm_completion pnpm + fi +fi +###-end-pnpm-completion-### + diff --git a/zsh/work.zsh b/zsh/work.zsh index dedad74..8b98be6 100644 --- a/zsh/work.zsh +++ b/zsh/work.zsh @@ -1,2 +1,3 @@ source ~/.config/zsh/utils.zsh +source ~/.config/zsh/pnpm.zsh source /usr/share/nvm/init-nvm.sh |
