about summary refs log tree commit diff
path: root/Completion/Zsh/Type/_parameters
diff options
context:
space:
mode:
authorBart Schaefer <barts@users.sourceforge.net>2011-03-08 16:08:37 +0000
committerBart Schaefer <barts@users.sourceforge.net>2011-03-08 16:08:37 +0000
commit07d1d2d402ef01825833f4c09b4de88c2391cc78 (patch)
tree208c42a7448abec401550a9d32498cd756d9a67b /Completion/Zsh/Type/_parameters
parent7bc97b920b74e7d9046c8a4489ecd0a0e646bdde (diff)
downloadzsh-07d1d2d402ef01825833f4c09b4de88c2391cc78.tar.gz
zsh-07d1d2d402ef01825833f4c09b4de88c2391cc78.tar.xz
zsh-07d1d2d402ef01825833f4c09b4de88c2391cc78.zip
Greg Klanderman: 28846: adapt prefix-needed zstyle to handle the
completion function naming convention of a leading underscore.
Diffstat (limited to 'Completion/Zsh/Type/_parameters')
-rw-r--r--Completion/Zsh/Type/_parameters8
1 files changed, 6 insertions, 2 deletions
diff --git a/Completion/Zsh/Type/_parameters b/Completion/Zsh/Type/_parameters
index 097a96760..5156e3e2d 100644
--- a/Completion/Zsh/Type/_parameters
+++ b/Completion/Zsh/Type/_parameters
@@ -6,7 +6,7 @@
 # If you specify a -g option with a pattern, the pattern will be used to
 # restrict the type of parameters matched.
 
-local expl pattern fakes faked tmp
+local expl pattern fakes faked tmp pfilt
 
 pattern=(-g \*)
 zparseopts -D -K -E g:=pattern
@@ -23,8 +23,12 @@ if zstyle -a ":completion:${curcontext}:" fake-parameters tmp; then
   done
 fi
 
+zstyle -t ":completion:${curcontext}:parameters" prefix-needed && \
+ [[ $PREFIX != [_.]* ]] && \
+ pfilt='[^_.]'
+
 _wanted parameters expl parameter \
     compadd "$@" -Q - \
-        "${(@k)parameters[(R)${pattern[2]}~*local*]}" \
+        "${(@M)${(@k)parameters[(R)${pattern[2]}~*local*]}:#${~pfilt}*}" \
         "$fakes[@]" \
         "${(@)${(@M)faked:#${~pattern[2]}}%%:*}"