ちょっと前にgithub-cliをインストールしてたのだけど、気がつくと補完が効かない・・・
$ gh cre-bash: _get_comp_words_by_ref: command not found
補完は.bash_profileに以下のように指定していました。
eval "$(gh completion -s bash)"
なんかバグってんのかな?と思いつつ、github-cliのドキュメントを見てみた。
When installing GitHub CLI through a package manager, however, it's possible that no additional shell configuration is necessary to gain completion support. For Homebrew, see https://docs.brew.sh/Shell-Completion
何もしなくていいの???ということで、homebrewのドキュメントを見てみると、homebrewの補完はこういうのを.bash_profileなり.bashrcに追加すればよいらしい。
if type brew &>/dev/null; then
HOMEBREW_PREFIX="$(brew --prefix)"
if [[ -r "${HOMEBREW_PREFIX}/etc/profile.d/bash_completion.sh" ]]; then
source "${HOMEBREW_PREFIX}/etc/profile.d/bash_completion.sh"
else
for COMPLETION in "${HOMEBREW_PREFIX}/etc/bash_completion.d/"*; do
[[ -r "$COMPLETION" ]] && source "$COMPLETION"
done
fi
fi
で、${HOMEBREW_PREFIX}/etc/bash_completion.d/ をのぞいてみたら・・・
$ ls ${HOMEBREW_PREFIX}/etc/bash_completion.d/
aws_bash_completer gibo-completion.bash hugo.sh
brew gio m
eksctl git-completion.bash minikube
gapplication git-prompt.sh nodebrew
gdbus gresource npm
gh gsettings vagrant
おお、パッケージ追加するとここに入れられて、勝手に読んでくれるのかー!!!
homebrew長く使ってるけど全然知らなかったよ・・・○iitaあたりの手順を鵜呑みにして設定してはいけないってことね・・・
ただし、パッケージ側でやってない場合は手動が必要な場合もあるみたい。