about summary refs log tree commit diff
path: root/Completion/Base/_brace_parameter
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Base/_brace_parameter')
-rw-r--r--Completion/Base/_brace_parameter10
1 files changed, 7 insertions, 3 deletions
diff --git a/Completion/Base/_brace_parameter b/Completion/Base/_brace_parameter
index 3fab8510a..3d663a777 100644
--- a/Completion/Base/_brace_parameter
+++ b/Completion/Base/_brace_parameter
@@ -1,5 +1,9 @@
 #defcomp -brace-parameter-
 
-# Simple but without spiffy suffix handling: compgen -v -S '} '
-
-compadd -S '} ' -r '-:?#%+=[/'  - "${(@)${(@)${(@f)$(set)}%%\=*}:gs/'//}"
+if [[ "$SUFFIX" = *\}* ]]; then
+  ISUFFIX="${SUFFIX#*\}}$ISUFFIX"
+  SUFFIX="${SUFFIX%%\}*}"
+  _parameters -S '} ' -r '-:?#%+=[/'
+else
+  _parameters -S '} ' -r '-:?#%+=[/'
+fi