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
__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() {
typeset -A opt_args
typeset -a _arguments_options
@ -59,7 +69,7 @@ _arguments "${_arguments_options[@]}" \
'--help[Print help]' \
'-V[Print version]' \
'--version[Print version]' \
':path:' \
':path:__zoxide_list' \
&& ret=0
;;
(delete)
@ -68,7 +78,7 @@ _arguments "${_arguments_options[@]}" \
'--help[Print help]' \
'-V[Print version]' \
'--version[Print version]' \
':path:' \
':path:__zoxide_list' \
&& ret=0
;;
(increment)
@ -77,7 +87,7 @@ _arguments "${_arguments_options[@]}" \
'--help[Print help]' \
'-V[Print version]' \
'--version[Print version]' \
':path:' \
':path:__zoxide_list' \
&& ret=0
;;
(reload)
@ -139,7 +149,7 @@ _arguments "${_arguments_options[@]}" \
'--help[Print help]' \
'-V[Print version]' \
'--version[Print version]' \
'*::paths:_files -/' \
'*::paths:__zoxide_list' \
&& ret=0
;;
esac