feat(completion/zsh): list zoxide entries for corresponding options

This commit is contained in:
Nuri Jung 2024-04-23 16:49:16 +09:00
parent 5d8a7ea7b2
commit 7b070612da
No known key found for this signature in database
GPG Key ID: D5BDFF67E90BACBE
1 changed files with 14 additions and 4 deletions

View File

@ -2,6 +2,16 @@
autoload -U is-at-least autoload -U is-at-least
__zoxide_list() {
local scored_list
local -a zoxide_list
scored_list="$(
zoxide query --list --score | sed -E 's/^\s+(\S+)\s+(.*)$/\2:\1/g')"
zoxide_list=("${(@f)scored_list}")
_describe -t paths 'zoxide entries' zoxide_list
}
_zoxide() { _zoxide() {
typeset -A opt_args typeset -A opt_args
typeset -a _arguments_options typeset -a _arguments_options
@ -59,7 +69,7 @@ _arguments "${_arguments_options[@]}" \
'--help[Print help]' \ '--help[Print help]' \
'-V[Print version]' \ '-V[Print version]' \
'--version[Print version]' \ '--version[Print version]' \
':path:' \ ':path:__zoxide_list' \
&& ret=0 && ret=0
;; ;;
(delete) (delete)
@ -68,7 +78,7 @@ _arguments "${_arguments_options[@]}" \
'--help[Print help]' \ '--help[Print help]' \
'-V[Print version]' \ '-V[Print version]' \
'--version[Print version]' \ '--version[Print version]' \
':path:' \ ':path:__zoxide_list' \
&& ret=0 && ret=0
;; ;;
(increment) (increment)
@ -77,7 +87,7 @@ _arguments "${_arguments_options[@]}" \
'--help[Print help]' \ '--help[Print help]' \
'-V[Print version]' \ '-V[Print version]' \
'--version[Print version]' \ '--version[Print version]' \
':path:' \ ':path:__zoxide_list' \
&& ret=0 && ret=0
;; ;;
(reload) (reload)
@ -139,7 +149,7 @@ _arguments "${_arguments_options[@]}" \
'--help[Print help]' \ '--help[Print help]' \
'-V[Print version]' \ '-V[Print version]' \
'--version[Print version]' \ '--version[Print version]' \
'*::paths:_files -/' \ '*::paths:__zoxide_list' \
&& ret=0 && ret=0
;; ;;
esac esac