github.phpd.cn/thought-machine/please@v12.2.0+incompatible/tools/misc/plz_complete.sh (about)

     1  ####################################################
     2  # plz completion
     3  #
     4  # add
     5  # source <(plz --completion_script)
     6  # to your .bashrc /.zshrc to activate this.
     7  ####################################################
     8  
     9  _plz_complete_bash() {
    10      COMP_WORDBREAKS=${COMP_WORDBREAKS//:}
    11      args=("${COMP_WORDS[@]:1:$COMP_CWORD}")
    12      local IFS=$'\n'
    13      COMPREPLY=($(GO_FLAGS_COMPLETION=1 ${COMP_WORDS[0]} -p -v 0 --noupdate "${args[@]}"))
    14      return 0
    15  }
    16  
    17  _plz_complete_zsh() {
    18      local args=("${words[@]:1:$CURRENT}")
    19      local IFS=$'\n'
    20      local completions=($(GO_FLAGS_COMPLETION=1 ${words[1]} -p -v 0 --noupdate "${args[@]}"))
    21      for completion in $completions; do
    22  	compadd $completion
    23      done
    24  }
    25  
    26  if [ -n "$BASH_VERSION" ]; then
    27      complete -F _plz_complete_bash plz
    28  elif [ -n "$ZSH_VERSION" ]; then
    29      compdef _plz_complete_zsh plz
    30  fi