summaryrefslogtreecommitdiffstats
path: root/Completion/Base/Core
diff options
context:
space:
mode:
authorOliver Kiddle <opk@zsh.org>2021-11-24 23:07:18 +0100
committerOliver Kiddle <opk@zsh.org>2021-11-24 23:09:38 +0100
commit16d5d6a9dae526355caf16f2de9d57d84b5d9993 (patch)
tree6ab30a2ad2596523b85aa553ffa8a4544632fd7a /Completion/Base/Core
parent49586: fix :a and :A modifiers (with PWD="/") on Cygwin⁩ (diff)
downloadzsh-16d5d6a9dae526355caf16f2de9d57d84b5d9993.tar
zsh-16d5d6a9dae526355caf16f2de9d57d84b5d9993.tar.gz
zsh-16d5d6a9dae526355caf16f2de9d57d84b5d9993.tar.bz2
zsh-16d5d6a9dae526355caf16f2de9d57d84b5d9993.tar.lz
zsh-16d5d6a9dae526355caf16f2de9d57d84b5d9993.tar.xz
zsh-16d5d6a9dae526355caf16f2de9d57d84b5d9993.tar.zst
zsh-16d5d6a9dae526355caf16f2de9d57d84b5d9993.zip
49597: add a helper for completing numbers with unit suffixes and separate out defaults, ranges and units in completion descriptions
Diffstat (limited to 'Completion/Base/Core')
-rw-r--r--Completion/Base/Core/_description8
1 files changed, 8 insertions, 0 deletions
diff --git a/Completion/Base/Core/_description b/Completion/Base/Core/_description
index 5b54484c7..368b41ee2 100644
--- a/Completion/Base/Core/_description
+++ b/Completion/Base/Core/_description
@@ -2,6 +2,7 @@
local name nopt xopt format gname hidden hide match opts tag
local -a ign gropt sort
+local -a match mbegin mend
opts=()
@@ -78,6 +79,13 @@ shift 2
if [[ -z "$1" && $# -eq 1 ]]; then
format=
elif [[ -n "$format" ]]; then
+ if [[ -z $2 ]]; then
+ argv+=( h:${1%%( ##\((#b)([^\)]#[^0-9-][^\)]#)(#B)\)|)( ##\((#b)([0-9-]##)(#B)\)|)( ##\[(#b)([^\]]##)(#B)\]|)} )
+ [[ -n $match[1] ]] && argv+=( m:$match[1] )
+ [[ -n $match[2] ]] && argv+=( r:$match[2] )
+ [[ -n $match[3] ]] && argv+=( o:$match[3] )
+ fi
+
zformat -F format "$format" "d:$1" "${(@)argv[2,-1]}"
fi