feat(rbenv): provide completion for `rbenv` command

Ref https://github.com/rbenv/rbenv/#shell-completions
This commit is contained in:
Masafumi Koba 2025-01-06 10:39:05 +09:00
parent d82669199b
commit 0f1294812d
No known key found for this signature in database
GPG Key ID: 1B09AB165112EE52
2 changed files with 8 additions and 0 deletions

View File

@ -3,6 +3,8 @@
The primary job of this plugin is to provide `rbenv_prompt_info` which can be added to your theme to include Ruby The primary job of this plugin is to provide `rbenv_prompt_info` which can be added to your theme to include Ruby
version and gemset information into your prompt. version and gemset information into your prompt.
Additionally, this plugin provides completion for the `rbenv` command. See also <https://github.com/rbenv/rbenv/#shell-completions>.
Some functionality of this plugin will not work unless you also have the rbenv plugin *gemset* installed. Some functionality of this plugin will not work unless you also have the rbenv plugin *gemset* installed.
https://github.com/jf/rbenv-gemset https://github.com/jf/rbenv-gemset

View File

@ -2,6 +2,7 @@
# the 'rbenv_prompt_info' function. # the 'rbenv_prompt_info' function.
FOUND_RBENV=$+commands[rbenv] FOUND_RBENV=$+commands[rbenv]
RBENV_ROOT=''
if [[ $FOUND_RBENV -ne 1 ]]; then if [[ $FOUND_RBENV -ne 1 ]]; then
rbenvdirs=("$HOME/.rbenv" "/usr/local/rbenv" "/opt/rbenv" "/usr/local/opt/rbenv") rbenvdirs=("$HOME/.rbenv" "/usr/local/rbenv" "/opt/rbenv" "/usr/local/opt/rbenv")
@ -9,6 +10,7 @@ if [[ $FOUND_RBENV -ne 1 ]]; then
if [[ -d $dir/bin ]]; then if [[ -d $dir/bin ]]; then
export PATH="$dir/bin:$PATH" export PATH="$dir/bin:$PATH"
FOUND_RBENV=1 FOUND_RBENV=1
RBENV_ROOT="$dir"
break break
fi fi
done done
@ -24,6 +26,10 @@ if [[ $FOUND_RBENV -ne 1 ]]; then
fi fi
if [[ $FOUND_RBENV -eq 1 ]]; then if [[ $FOUND_RBENV -eq 1 ]]; then
if [[ -d "$RBENV_ROOT/completions" ]]; then
fpath+=("$RBENV_ROOT/completions")
fi
eval "$(rbenv init --no-rehash - zsh)" eval "$(rbenv init --no-rehash - zsh)"
alias rubies="rbenv versions" alias rubies="rbenv versions"