summaryrefslogtreecommitdiffstats
path: root/Completion/Base/Core/_description
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Base/Core/_description')
-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