diff --git a/fish/.config/fish/completions/asdf.bash b/fish/.config/fish/completions/asdf.bash deleted file mode 100644 index 0d57b71..0000000 --- a/fish/.config/fish/completions/asdf.bash +++ /dev/null @@ -1,70 +0,0 @@ -#!/usr/bin/env bash - -_asdf () { - local cur - cur=${COMP_WORDS[COMP_CWORD]} - local cmd - cmd=${COMP_WORDS[1]} - local prev - prev=${COMP_WORDS[COMP_CWORD-1]} - local plugins - plugins=$(asdf plugin-list 2> /dev/null | tr '\n' ' ') - - # We can safely ignore warning SC2207 since it warns that it will uses the - # shell's sloppy word splitting and globbing. The possible commands here are - # all single words, and most likely won't contain special chars the shell will - # expand. - COMPREPLY=() - - case "$cmd" in - plugin-update) - # shellcheck disable=SC2207 - COMPREPLY=($(compgen -W "$plugins --all" -- "$cur")) - ;; - plugin-remove|current|list|list-all) - # shellcheck disable=SC2207 - COMPREPLY=($(compgen -W "$plugins" -- "$cur")) - ;; - plugin-add) - local available_plugins - available_plugins=$( (asdf plugin-list 2> /dev/null && asdf plugin-list-all 2> /dev/null) | sort | uniq -u) - # shellcheck disable=SC2207 - COMPREPLY=($(compgen -W "$available_plugins" -- "$cur")) - ;; - install) - if [[ "$plugins" == *"$prev"* ]] ; then - local versions - versions=$(asdf list-all "$prev" 2> /dev/null) - # shellcheck disable=SC2207 - COMPREPLY=($(compgen -W "$versions" -- "$cur")) - else - # shellcheck disable=SC2207 - COMPREPLY=($(compgen -W "$plugins" -- "$cur")) - fi - ;; - update) - # shellcheck disable=SC2207 - COMPREPLY=($(compgen -W "--head" -- "$cur")) - ;; - uninstall|where|reshim|local|global) - if [[ "$plugins" == *"$prev"* ]] ; then - local versions - versions=$(asdf list "$prev" 2> /dev/null) - # shellcheck disable=SC2207 - COMPREPLY=($(compgen -W "$versions" -- "$cur")) - else - # shellcheck disable=SC2207 - COMPREPLY=($(compgen -W "$plugins" -- "$cur")) - fi - ;; - *) - local cmds='current global help install list list-all local plugin-add plugin-list plugin-list-all plugin-remove plugin-update reshim uninstall update where which ' - # shellcheck disable=SC2207 - COMPREPLY=($(compgen -W "$cmds" -- "$cur")) - ;; - esac - - return 0 -} - -complete -F _asdf asdf diff --git a/fish/.config/fish/completions/asdf.fish b/fish/.config/fish/completions/asdf.fish deleted file mode 100644 index 4f03786..0000000 --- a/fish/.config/fish/completions/asdf.fish +++ /dev/null @@ -1,110 +0,0 @@ -function __fish_asdf_needs_command - set -l cmd (commandline -opc) - if test (count $cmd) -eq 1 - return 0 - end - return 1 -end - -function __fish_asdf_using_command -a current_command - set -l cmd (commandline -opc) - if test (count $cmd) -gt 1 - if test $current_command = $cmd[2] - return 0 - end - end - return 1 -end - -function __fish_asdf_arg_number -a number - set -l cmd (commandline -opc) - test (count $cmd) -eq $number -end - -function __fish_asdf_arg_at -a number - set -l cmd (commandline -opc) - echo $cmd[$number] -end - -function __fish_asdf_list_versions -a plugin - asdf list $plugin 2> /dev/null | sed -e 's/^\s*//' -end - -function __fish_asdf_list_all -a plugin - asdf list-all $plugin 2> /dev/null -end - -function __fish_asdf_plugin_list - asdf plugin-list 2> /dev/null -end - -function __fish_asdf_plugin_list_all - asdf plugin-list-all 2> /dev/null -end - -# plugin-add completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a plugin-add -d "Add git repo as plugin" -complete -f -c asdf -n '__fish_asdf_using_command plugin-add; and __fish_asdf_arg_number 2' -a '(__fish_asdf_plugin_list_all | grep -v \'*\' | awk \'{ print $1 }\')' -complete -f -c asdf -n '__fish_asdf_using_command plugin-add; and __fish_asdf_arg_number 3' -a '(__fish_asdf_plugin_list_all | grep (__fish_asdf_arg_at 3) | awk \'{ print $2 }\')' -complete -f -c asdf -n '__fish_asdf_using_command plugin-add; and __fish_asdf_arg_number 4' - -# plugin-list completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a plugin-list -d "List installed plugins" - -# plugin-list-all completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a plugin-list-all -d "List all existing plugins" - -# plugin-remove completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a plugin-remove -d "Remove plugin and package versions" -complete -f -c asdf -n '__fish_asdf_using_command plugin-remove; and __fish_asdf_arg_number 2' -a '(__fish_asdf_plugin_list)' - -# plugin-update completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a plugin-update -d "Update plugin" -complete -f -c asdf -n '__fish_asdf_using_command plugin-update; and __fish_asdf_arg_number 2' -a '(__fish_asdf_plugin_list)' -complete -f -c asdf -n '__fish_asdf_using_command plugin-update; and __fish_asdf_arg_number 2' -a --all - -# install completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a install -d "Install a specific version of a package" -complete -f -c asdf -n '__fish_asdf_using_command install; and __fish_asdf_arg_number 2' -a '(__fish_asdf_plugin_list)' -complete -f -c asdf -n '__fish_asdf_using_command install; and __fish_asdf_arg_number 3' -a '(__fish_asdf_list_all (__fish_asdf_arg_at 3))' - -# uninstall completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a uninstall -d "Remove a specific version of a package" -complete -f -c asdf -n '__fish_asdf_using_command uninstall; and __fish_asdf_arg_number 2' -a '(__fish_asdf_plugin_list)' -complete -f -c asdf -n '__fish_asdf_using_command uninstall; and __fish_asdf_arg_number 3' -a '(__fish_asdf_list_versions (__fish_asdf_arg_at 3))' - -# current completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a current -d "Display version set or being used for package" -complete -f -c asdf -n '__fish_asdf_using_command current; and __fish_asdf_arg_number 2' -a '(__fish_asdf_plugin_list)' - -# where completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a where -d "Display install path for an installed version" -complete -f -c asdf -n '__fish_asdf_using_command where; and __fish_asdf_arg_number 2' -a '(__fish_asdf_plugin_list)' -complete -f -c asdf -n '__fish_asdf_using_command where; and __fish_asdf_arg_number 3' -a '(__fish_asdf_list_versions (__fish_asdf_arg_at 3))' - -# list completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a list -d "List installed versions of a package" -complete -f -c asdf -n '__fish_asdf_using_command list; and __fish_asdf_arg_number 2' -a '(__fish_asdf_plugin_list)' - -# list-all completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a list-all -d "List all versions of a package" -complete -f -c asdf -n '__fish_asdf_using_command list-all; and __fish_asdf_arg_number 2' -a '(__fish_asdf_plugin_list)' - -# reshim completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a reshim -d "Recreate shims for version of a package" -complete -f -c asdf -n '__fish_asdf_using_command reshim; and __fish_asdf_arg_number 2' -a '(__fish_asdf_plugin_list)' -complete -f -c asdf -n '__fish_asdf_using_command reshim; and __fish_asdf_arg_number 3' -a '(__fish_asdf_list_versions (__fish_asdf_arg_at 3))' - -# local completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a local -d "Set local version for a plugin" -complete -f -c asdf -n '__fish_asdf_using_command local; and __fish_asdf_arg_number 2' -a '(__fish_asdf_plugin_list)' -complete -f -c asdf -n '__fish_asdf_using_command local; and test (count (commandline -opc)) -gt 2' -a '(__fish_asdf_list_versions (__fish_asdf_arg_at 3)) system' - -# global completion -complete -f -c asdf -n '__fish_asdf_needs_command' -a global -d "Set global version for a plugin" -complete -f -c asdf -n '__fish_asdf_using_command global; and __fish_asdf_arg_number 2' -a '(__fish_asdf_plugin_list)' -complete -f -c asdf -n '__fish_asdf_using_command global; and test (count (commandline -opc)) -gt 2' -a '(__fish_asdf_list_versions (__fish_asdf_arg_at 3)) system' - -# misc -complete -f -c asdf -n '__fish_asdf_needs_command' -l "help" -d "Displays help" -complete -f -c asdf -n '__fish_asdf_needs_command' -l "version" -d "Displays asdf version" diff --git a/fish/.config/fish/fishfile b/fish/.config/fish/fishfile index 9c22687..d44f9db 100644 --- a/fish/.config/fish/fishfile +++ b/fish/.config/fish/fishfile @@ -1,6 +1,5 @@ edc/bass jethrokuan/fzf -asdf-vm/asdf 2m/fish-gpg-tty oh-my-fish/plugin-direnv oh-my-fish/theme-bobthefish diff --git a/fish/.config/fish/functions/asdf.fish b/fish/.config/fish/functions/asdf.fish deleted file mode 100644 index afe5c0e..0000000 --- a/fish/.config/fish/functions/asdf.fish +++ /dev/null @@ -1,15 +0,0 @@ -#!/usr/bin/env fish - -set -x ASDF_DIR (dirname (status -f)) -set -l asdf_data_dir ( - if test -n "$ASDF_DATA_DIR"; echo $ASDF_DATA_DIR; - else; echo $HOME/.asdf; end) - -# Add asdf to PATH -set -l asdf_bin_dirs $ASDF_DIR/bin $ASDF_DIR/shims $asdf_data_dir/shims - -for x in $asdf_bin_dirs - if begin not contains $x $fish_user_paths; and test -d $x; end - set -gx fish_user_paths $fish_user_paths $x - end -end