about summary refs log tree commit diff
diff options
context:
space:
mode:
authorOliver Kiddle <opk@users.sourceforge.net>2012-02-10 17:09:05 +0000
committerOliver Kiddle <opk@users.sourceforge.net>2012-02-10 17:09:05 +0000
commitc5fce37bced3c516bfb47cb84f336598fc26b277 (patch)
tree8636c3ef1f60f92348177a2916781e36fc8b3656
parent32eb4faf7c4295d029533ff85473894887f2bc36 (diff)
downloadzsh-c5fce37bced3c516bfb47cb84f336598fc26b277.tar.gz
zsh-c5fce37bced3c516bfb47cb84f336598fc26b277.tar.xz
zsh-c5fce37bced3c516bfb47cb84f336598fc26b277.zip
30199: add (-.) to many completion _files globs
-rw-r--r--ChangeLog21
-rw-r--r--Completion/Darwin/Command/_defaults2
-rw-r--r--Completion/Darwin/Command/_fink2
-rw-r--r--Completion/Darwin/Command/_hdiutil36
-rw-r--r--Completion/Debian/Command/_dak8
-rw-r--r--Completion/Debian/Command/_debdiff6
-rw-r--r--Completion/Debian/Command/_dpkg2
-rw-r--r--Completion/Debian/Command/_linda2
-rw-r--r--Completion/Debian/Command/_lintian2
-rw-r--r--Completion/Debian/Command/_pbuilder4
-rw-r--r--Completion/Debian/Command/_piuparts2
-rw-r--r--Completion/Linux/Command/_modutils2
-rw-r--r--Completion/Mandriva/Command/_urpmi2
-rw-r--r--Completion/Unix/Command/_bittorrent8
-rw-r--r--Completion/Unix/Command/_bogofilter6
-rw-r--r--Completion/Unix/Command/_cdrdao2
-rw-r--r--Completion/Unix/Command/_cplay2
-rw-r--r--Completion/Unix/Command/_git4
-rw-r--r--Completion/Unix/Command/_hg8
-rw-r--r--Completion/Unix/Command/_ldd4
-rw-r--r--Completion/Unix/Command/_metaflac2
-rw-r--r--Completion/Unix/Command/_pax2
-rw-r--r--Completion/Unix/Command/_rubber4
-rw-r--r--Completion/Unix/Command/_sisu2
-rw-r--r--Completion/Unix/Command/_texinfo2
-rw-r--r--Completion/Unix/Command/_vim2
-rw-r--r--Completion/Unix/Command/_vorbiscomment4
-rw-r--r--Completion/Unix/Command/_xmms22
28 files changed, 82 insertions, 63 deletions
diff --git a/ChangeLog b/ChangeLog
index 3f79f8ac0..7847523ba 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,24 @@
 2012-02-10  Oliver Kiddle  <opk@zsh.org>
 
+	* 30199: Completion/Debian/Command/_pbuilder,
+	Completion/Darwin/Command/_defaults, Completion/Darwin/Command/_fink,
+	Completion/Darwin/Command/_hdiutil, Completion/Debian/Command/_dak,
+	Completion/Debian/Command/_debdiff, Completion/Debian/Command/_dpkg,
+	Completion/Debian/Command/_linda, Completion/Debian/Command/_lintian,
+	Completion/Debian/Command/_piuparts,
+	Completion/Linux/Command/_modutils,
+	Completion/Mandriva/Command/_urpmi,
+	Completion/Unix/Command/_bittorrent,
+	Completion/Unix/Command/_bogofilter, Completion/Unix/Command/_cdrdao,
+	Completion/Unix/Command/_cplay, Completion/Unix/Command/_git,
+	Completion/Unix/Command/_hg, Completion/Unix/Command/_ldd,
+	Completion/Unix/Command/_metaflac, Completion/Unix/Command/_pax,
+	Completion/Unix/Command/_rubber, Completion/Unix/Command/_sisu,
+	Completion/Unix/Command/_texinfo, Completion/Unix/Command/_vim,
+	Completion/Unix/Command/_vorbiscomment,
+	Completion/Unix/Command/_xmms2:
+	add (-.) to many completion _files globs
+
 	* 30197: Completion/Unix/Command/_subversion: complete changelists
 
 	* 30177: Completion/X/Command/_xterm,
@@ -15935,5 +15954,5 @@
 
 *****************************************************
 * This is used by the shell to define $ZSH_PATCHLEVEL
-* $Revision: 1.5579 $
+* $Revision: 1.5580 $
 *****************************************************
diff --git a/Completion/Darwin/Command/_defaults b/Completion/Darwin/Command/_defaults
index e1b8fd923..7818e0379 100644
--- a/Completion/Darwin/Command/_defaults
+++ b/Completion/Darwin/Command/_defaults
@@ -9,7 +9,7 @@ _defaults_domains(){
     _wanted domains expl 'defaults database domain' \
 	compadd -M 'r:|.=* r:|=*' -a list
   else
-    _files -g '*.plist(e:"reply=\${REPLY%.plist}":)'
+    _files -g '*.plist(-.:r)'
   fi
 }
 
diff --git a/Completion/Darwin/Command/_fink b/Completion/Darwin/Command/_fink
index 27ca3740c..55c9e8da5 100644
--- a/Completion/Darwin/Command/_fink
+++ b/Completion/Darwin/Command/_fink
@@ -157,7 +157,7 @@ _fink(){
     #configure)
     #selfupdate)
     validate|check)
-      _wanted files expl 'finkinfo file' _files -g \*.info ;;
+      _wanted files expl 'finkinfo file' _files -g "*.info(-.)" ;;
     #scanpackages)
     #checksums)
     #cleanup)
diff --git a/Completion/Darwin/Command/_hdiutil b/Completion/Darwin/Command/_hdiutil
index c940f4739..13133b1f9 100644
--- a/Completion/Darwin/Command/_hdiutil
+++ b/Completion/Darwin/Command/_hdiutil
@@ -79,7 +79,7 @@ _hdiutil(){
 
   local -A _common_usage_options
   _common_usage_options=(
-    -shadow "-shadow:shadow file:_files -g \*.shadow"
+    -shadow "-shadow:shadow file:_files -g '*.shadow(-.)'"
     -encryption "-encryption:encryption method:(CEncryptedEncoding)"
     -stdinpass "-stdinpass[specify password from standard input]"
     -certificate "-certificate[secondary access certificate]:certificate file:_files"
@@ -89,7 +89,7 @@ _hdiutil(){
     -tgtimagekey "*-tgtimagekey[target image key]: :->keyvalue"
     -insecurehttp "-insecurehttp[ignore SSL host validation failure]"
     -plist "-plist[display output in plist format]"
-    -recover "-recover[keychain to unlock]:keychain file:_files -g \*.keychain"
+    -recover "-recover[keychain to unlock]:keychain file:_files -g '*.keychain(-.)'"
   )
 
   local -a _1st_arguments
@@ -178,7 +178,7 @@ _hdiutil(){
         "(-autoopenro)-noautoopenro" \
         "(-noautoopenrw)-autoopenrw[auto-open read/write volumes]" \
         "(-autoopenrw)-noautoopenrw" \
-        "1:disk image to attach:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)" \
+        "1:disk image to attach:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)\(-.\)" \
         && return 0
       ;;
     detach|eject)
@@ -195,7 +195,7 @@ _hdiutil(){
         "$_common_usage_options[-imagekey]" \
         "$_common_usage_options[-srcimagekey]" \
         "$_common_usage_options[-plist]" \
-        "1:disk image to verify:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)" \
+        "1:disk image to verify:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)\(-.\)" \
         && return 0
       ;;
     create)
@@ -265,7 +265,7 @@ _hdiutil(){
         "-ov[overwrite an existing file]" \
         "-format:format:_hdiutil_imageformat" \
         "-o:target disk image:_files" \
-        "1:source disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)" \
+        "1:source disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)\(-.\)" \
         && return 0
 
       if [[ $state = keyvalue ]]; then
@@ -302,7 +302,7 @@ _hdiutil(){
         "-erase[erase the media]" \
         "-fullerase[erase all sectors of the disc]" \
         "-list[list all burning devices with paths suitable for -device]" \
-        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)" \
+        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)\(-.\)" \
         && return 0
       ;;
     makehybrid)
@@ -343,7 +343,7 @@ _hdiutil(){
         "(-nokernel)-nokernel[attach with a helper process]" \
         "(-kernel)-kernel[attach without a helper process]" \
         "-o:target disk image:_files" \
-        "1:source disk image or directory:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)" \
+        "1:source disk image or directory:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)\(-.\)" \
         && return 0
       ;;
     compact)
@@ -356,7 +356,7 @@ _hdiutil(){
         "$_common_usage_options[-insecurehttp]" \
         "$_common_usage_options[-cacert]" \
         "$_common_usage_options[-plist]" \
-        "1:sparse image:_files -g \*.sparseimage" && return 0
+        "1:sparse image:_files -g '*.sparseimage(-.)'" && return 0
       ;;
     info)
       _arguments "$_common_options[@]" \
@@ -376,7 +376,7 @@ _hdiutil(){
         "$_common_usage_options[-cacert]" \
         "$_common_usage_options[-plist]" \
         "-type:image type:(UDIF-CRC32 UDIF-MD5 DC42 CRC28 CRC32 MD5)" \
-        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)" \
+        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)\(-.\)" \
         && return 0
       ;;
     chpass)
@@ -386,7 +386,7 @@ _hdiutil(){
         "$_common_usage_options[-srcimagekey]" \
         "-oldstdinpass[specify old password from standard input]" \
         "-newstdinpass[specify new password from standard input]" \
-        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)" \
+        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)\(-.\)" \
         && return 0
       ;;
     unflatten)
@@ -395,7 +395,7 @@ _hdiutil(){
         "$_common_usage_options[-encryption]" \
         "$_common_usage_options[-stdinpass]" \
         "$_common_usage_options[-srcimagekey]" \
-        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)" \
+        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)\(-.\)" \
         && return 0
       ;;
     flatten)
@@ -408,7 +408,7 @@ _hdiutil(){
         "(-noxml)-xml" \
         "(-rsrcfork)-norsrcfork[don\'t embed resource fork data]" \
         "(-norsrcfork)-rsrcfork" \
-        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)" \
+        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)\(-.\)" \
         && return 0
       ;;
     hfsanalyze)
@@ -420,7 +420,7 @@ _hdiutil(){
         "$_common_usage_options[-shadow]" \
         "$_common_usage_options[-insecurehttp]" \
         "$_common_usage_options[-cacert]" \
-        "1:disk image or device:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)" \
+        "1:disk image or device:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)\(-.\)" \
         && return 0
       ;;
     mountvol)
@@ -447,7 +447,7 @@ _hdiutil(){
         "$_common_usage_options[-plist]" \
         "-format[just print out the image format]" \
         "-checksum[just print out the image checksum]" \
-        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)" \
+        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)\(-.\)" \
         && return 0
       ;;
     plugins)
@@ -462,7 +462,7 @@ _hdiutil(){
         "$_common_usage_options[-srcimagekey]" \
         "$_common_usage_options[-plist]" \
         "(-yes -no -query)"{-yes,-no,-query} \
-        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)" \
+        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)\(-.\)" \
         && return 0
       ;;
 
@@ -485,7 +485,7 @@ _hdiutil(){
         "-shrinkonly[only allow the image to shrink]" \
         "-nofinalgap[allow elimination of trailing free partition]" \
         "-limits[displays min/current/max size]" \
-        "1:disk image:_files -g \*.dmg\(\|.bin\)" \
+        "1:disk image:_files -g \*.dmg\(\|.bin\)\(-.\)" \
         && return 0
       ;;
     segment)
@@ -501,7 +501,7 @@ _hdiutil(){
         "-firstSegmentSize[first segment size]: :_hdiutil_imagesize" \
         "-restricted[make restricted segments]" \
         "-o[first segment name]:name" \
-        "1:source disk image:_files -g \*.dmg\(\|.bin\)" \
+        "1:source disk image:_files -g \*.dmg\(\|.bin\)\(-.\)" \
         && return 0
       ;;
     pmap)
@@ -514,7 +514,7 @@ _hdiutil(){
         "$_common_usage_options[-insecurehttp]" \
         "$_common_usage_options[-cacert]" \
         "-options[just print out the image checksum]: :->option" \
-        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)" \
+        "1:disk image:_files -g \*.\(dmg\|sparseimage\)\(\|.bin\)\(-.\)" \
         && return 0
 
       case "$state" in
diff --git a/Completion/Debian/Command/_dak b/Completion/Debian/Command/_dak
index 63bf2d06e..5aaaeefbc 100644
--- a/Completion/Debian/Command/_dak
+++ b/Completion/Debian/Command/_dak
@@ -137,7 +137,7 @@ case $cmd in
 (clean-proposed-updates)
     args+=(
    '(-v --verbose)'{-v,--verbose}'[be more verbose about what is being done]'
-   '*:changes or admin file:_files -g "*.(changes|joey)"'
+   '*:changes or admin file:_files -g "*.(changes|joey)(-.)"'
     )
     ;;
 
@@ -151,7 +151,7 @@ case $cmd in
     args+=(
    '(-q --quiet)'{-q,--quiet}'[be quieter about what is being done]'
    '(-v --verbose)'{-v,--verbose}'[be more verbose about what is being done]'
-   '*:changes or deb or admin file:_files -g "*.(changes|deb|joey)"'
+   '*:changes or deb or admin file:_files -g "*.(changes|deb|joey)(-.)"'
     )
     ;;
 
@@ -186,7 +186,7 @@ case $cmd in
 
 (decode-dot-dak)
     args+=(
-    '*:dot-dak file:_files -g "*.dak"'
+    '*:dot-dak file:_files -g "*.dak(-.)"'
     )
     ;;
 
@@ -222,7 +222,7 @@ case $cmd in
     args+=(
   '(-m --message)'{-m,--message=}'[use this message for rejection]:message:'
   '(-s --no-mail)'{-s,--no-mail}'[do not send any mail]'
-  '*:changes file:_files -g "*.changes"'
+  '*:changes file:_files -g "*.changes(-.)"'
     )
     ;;
 
diff --git a/Completion/Debian/Command/_debdiff b/Completion/Debian/Command/_debdiff
index de7b9b9c8..6f8519a4a 100644
--- a/Completion/Debian/Command/_debdiff
+++ b/Completion/Debian/Command/_debdiff
@@ -17,6 +17,6 @@ _arguments \
   '(-h --help)'{-h,--help}'[show help]' \
   '(-v --version)'{-v,--version}'[show version]' \
   '(-q --quiet)'{-q,--quiet}'[be quiet if no differences]' \
-  '--from:debs:_files -g "*.deb"' \
-  '--to:debs:_files -g "*.deb"' \
-  '*:file to compare:_files -g "*.(deb|changes|dsc)"'
+  '--from:debs:_files -g "*.deb(-.)"' \
+  '--to:debs:_files -g "*.deb(-.)"' \
+  '*:file to compare:_files -g "*.(deb|changes|dsc)(-.)"'
diff --git a/Completion/Debian/Command/_dpkg b/Completion/Debian/Command/_dpkg
index e251fbc38..bdb6d5b25 100644
--- a/Completion/Debian/Command/_dpkg
+++ b/Completion/Debian/Command/_dpkg
@@ -73,7 +73,7 @@ _dpkg_options=(
 _dpkg_options_recursive=( '(--recursive -R)'{--recursive,-R}'[recursive]' )
 
 _dpkg_deb_and_query_only_actions=(
-    '(--show -W)'{--show,-W}'[show package info]:Debian package:_files -g \*.u\#deb'
+    '(--show -W)'{--show,-W}'[show package info]:Debian package:_files -g \*.u\#deb(-.)'
 )
 
 _dpkg_deb_and_query_only_options=(
diff --git a/Completion/Debian/Command/_linda b/Completion/Debian/Command/_linda
index d428d18a8..12ca72f3e 100644
--- a/Completion/Debian/Command/_linda
+++ b/Completion/Debian/Command/_linda
@@ -23,4 +23,4 @@ _arguments \
   '(-U --unpack)'{-U,--unpack}':unpack level:' \
   '(-v --verbose)'{-v,--verbose}'[verbose]' \
   '(-V --version)'{-V,--version}'[version]' \
-  ':package:_files -g "*.(changes|u#deb|dsc)"'
+  ':package:_files -g "*.(changes|u#deb|dsc)(-.)"'
diff --git a/Completion/Debian/Command/_lintian b/Completion/Debian/Command/_lintian
index 478d77a63..554be4550 100644
--- a/Completion/Debian/Command/_lintian
+++ b/Completion/Debian/Command/_lintian
@@ -38,7 +38,7 @@ case "$service" in
       '(-s --source)'{-s,--source}'[the following packages are source]' \
       '--udeb[the following packages are udebs]' \
       '(-p --packages-file)'{-p,--packages-file}'[process packages listed in file]:list:_files' \
-      '*:package:_files -g "*.(changes|deb|dsc)"' && return 0
+      '*:package:_files -g "*.(changes|deb|dsc)(-.)"' && return 0
       ;;
 
    (lintian-info)
diff --git a/Completion/Debian/Command/_pbuilder b/Completion/Debian/Command/_pbuilder
index 225744f23..7811d567b 100644
--- a/Completion/Debian/Command/_pbuilder
+++ b/Completion/Debian/Command/_pbuilder
@@ -9,7 +9,7 @@ if (( CURRENT == 2 )); then
 else
   compset -n 1
   _arguments \
-    '--basetgz:location:_files -g "*.tgz"' \
+    '--basetgz:location:_files -g "*.tgz(-.)"' \
     '--buildplace:location:_files -/' \
     '--buildresult:location:_files -/' \
     '--mirror:URL:_urls' \
@@ -28,5 +28,5 @@ else
     '--save-after-login' \
     '--save-after-exec' \
     '--autocleanaptcache' \
-    '*:source package:_files -g "*.dsc"'
+    '*:source package:_files -g "*.dsc(-.)"'
 fi
diff --git a/Completion/Debian/Command/_piuparts b/Completion/Debian/Command/_piuparts
index 83e9ef115..a1b6666a3 100644
--- a/Completion/Debian/Command/_piuparts
+++ b/Completion/Debian/Command/_piuparts
@@ -24,7 +24,7 @@ case "$state" in
       if (( $+opt_args[-a] )); then
           _deb_packages avail
       else
-          _files -g '*.deb'
+          _files -g '*.deb(-.)'
       fi
     ;;
 esac
diff --git a/Completion/Linux/Command/_modutils b/Completion/Linux/Command/_modutils
index 48aeee973..39e00b4b0 100644
--- a/Completion/Linux/Command/_modutils
+++ b/Completion/Linux/Command/_modutils
@@ -117,7 +117,7 @@ _modutils() {
 
 	    _tags files modules
 	    while _tags; do
-		_requested files expl "module file"  _files -g '*.ko' && ret=0
+		_requested files expl "module file"  _files -g '*.ko(-.)' && ret=0
 		_requested modules expl module compadd -a modules && ret=0
 	    done
 	    ;;
diff --git a/Completion/Mandriva/Command/_urpmi b/Completion/Mandriva/Command/_urpmi
index 36982aae8..2468b2318 100644
--- a/Completion/Mandriva/Command/_urpmi
+++ b/Completion/Mandriva/Command/_urpmi
@@ -303,7 +303,7 @@ _urpmi() {
 	"($help --all --interactive  --name)--summary[print tag summary: summary]" \
 	"($help)--uniq[do not print identical lines]" \
 	"($help --all --interactive  --name)--url[print tag url: url]" \
-	"*:hdlist files:_files -g '*.cz'" \
+	"*:hdlist files:_files -g '*.cz(-.)'" \
       && ret=0
     ;;
   esac
diff --git a/Completion/Unix/Command/_bittorrent b/Completion/Unix/Command/_bittorrent
index 8c31a11ae..f7da2047a 100644
--- a/Completion/Unix/Command/_bittorrent
+++ b/Completion/Unix/Command/_bittorrent
@@ -50,18 +50,18 @@ case $service in
       "--max_initiate+[specify peers needed before stopping initiating new connections]:peers:"\
       "--report_hash_failures+[report hash failures to user]:enable:(0 1)"\
       "--rarest_first_priority_cutoff+[specify peers which need to have a piece before other partials take priority over rarest first]:peers:"\
-      ':torrent file:_files -g "*.torrent"' \
+      ':torrent file:_files -g "*.torrent(-.)"' \
       && return 0
   ;;
 
 # Next up are the torrent file manipulation programs.
 
   btshowmetainfo)
-   _files -g "*.torrent" && return 0
+   _files -g "*.torrent(-.)" && return 0
    ;;
 
   btrename)
-   _files -g '*.torrent' && return 0
+   _files -g '*.torrent(-.)' && return 0
   ;;
 
   btmakemetafile)
@@ -74,7 +74,7 @@ case $service in
   ;;
 
   btreannounce)
-   _files -g '*.torrent' && return 0
+   _files -g '*.torrent(-.)' && return 0
   ;;
 
 # Lastly the tracker.
diff --git a/Completion/Unix/Command/_bogofilter b/Completion/Unix/Command/_bogofilter
index 980d3155e..44953cc71 100644
--- a/Completion/Unix/Command/_bogofilter
+++ b/Completion/Unix/Command/_bogofilter
@@ -29,16 +29,16 @@ _bogoutil() {
 	{-y,--timestamp-date=}'[date for when unknown]:date in YYYYMMDD format' \
 	'(--input-file -I)'{-I,--input-file=}'[input file]:input file:_files' \
 	{-x,--debug-flags=}'[debug flags]:debug flags:' \
-	"($_bogoutil_actions)"{-d,--dump=}'[print contents of db]:database file:_files -g "*.db"' \
+	"($_bogoutil_actions)"{-d,--dump=}'[print contents of db]:database file:_files -g "*.db(-.)"' \
   	"($_bogoutil_actions)"{-l,--load=}'[load file into db]:textfile:_files' \
-	"($_bogoutil_actions)"{-u,--upgrade=}'[upgrade wordlist version]:database file:_files -g "*.db"' \
+	"($_bogoutil_actions)"{-u,--upgrade=}'[upgrade wordlist version]:database file:_files -g "*.db(-.)"' \
 	"($_bogoutil_actions)"'-m[perform maintenance functions]:file:_files' \
   	"($_bogoutil_actions)"'-w[display token information]:database file or directory:_files' \
   	"($_bogoutil_actions)"'-p[display token probability information]:database file or directory:_files' \
 	"($_bogoutil_actions)"'-H[print histogram]:database file or directory:_files' \
 	"($_bogoutil_actions)"'-r[recalculate ROBX]:database:_files -/' \
 	"($_bogoutil_actions)"'-R[recalculate and save ROBX]:database:_files -/' \
-	"($_bogoutil_actions)"{-k,--db-cachesize=}'[set Berkeley DB cache size]:size in MB:' \
+	"($_bogoutil_actions)"{-k,--db-cachesize=}'[set Berkeley DB cache size]:size in MB' \
 	"($_bogoutil_actions)"'--db-verify[verify database]:database:_files -/' \
 	"($_bogoutil_actions)"'--db-recover[run regular recovery]:database:_files -/' \
 	"($_bogoutil_actions)"'--db-recover-harder[run catastrophic recovery]:database:_files -/' \
diff --git a/Completion/Unix/Command/_cdrdao b/Completion/Unix/Command/_cdrdao
index e22ceb509..ce3742bc7 100644
--- a/Completion/Unix/Command/_cdrdao
+++ b/Completion/Unix/Command/_cdrdao
@@ -91,7 +91,7 @@ common_args=(
 declare -ga common_toc_args
 common_toc_args=(
   $common_args
-  ':TOC file:_files -g "*.toc"')
+  ':TOC file:_files -g "*.toc(-.)"')
 
 declare -ga common_device_args
 common_device_args=(
diff --git a/Completion/Unix/Command/_cplay b/Completion/Unix/Command/_cplay
index 3b4219173..f1755c1a1 100644
--- a/Completion/Unix/Command/_cplay
+++ b/Completion/Unix/Command/_cplay
@@ -5,4 +5,4 @@ _arguments -s \
   '-r[toggle playlist repeat mode]' \
   '-R[toggle playlist random mode]' \
   '-v[toggle PCM and MASTER volume control]' \
-  '*:playlist or directory or audio file:_files -g "*.(mp3|mp2|ogg|669|amf|ams|dsm|far|it|med|mod|mt2|mtm|okt|s3m|stm|ult|gdm|xm|m3u|pls|spx|wav|au)"'
+  '*:playlist or directory or audio file:_files -g "*.(mp3|mp2|ogg|669|amf|ams|dsm|far|it|med|mod|mt2|mtm|okt|s3m|stm|ult|gdm|xm|m3u|pls|spx|wav|au)(-.)"'
diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index 8a48c04b7..5ed921850 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -3636,7 +3636,7 @@ _git-index-pack () {
     '--stdin[read pack from stdin and instead write to specified file]' \
     $stdin_opts \
     '--strict[die if the pack contains broken objects or links]' \
-    ':pack file:_files -g "*.pack"'
+    ':pack file:_files -g "*.pack(-.)"'
 }
 
 (( $+functions[_git-merge-file] )) ||
@@ -4075,7 +4075,7 @@ _git-pack-redundant () {
     '(:)--all[process all packs]' \
     '--alt-odb[do not require objects to be present in local packs]' \
     '--verbose[output some statistics to standard error]' \
-    '(--all)*::packs:_files -g "*.pack"'
+    '(--all)*::packs:_files -g "*.pack(-.)"'
 }
 
 (( $+functions[_git-rev-list] )) ||
diff --git a/Completion/Unix/Command/_hg b/Completion/Unix/Command/_hg
index aeb64f660..f48598278 100644
--- a/Completion/Unix/Command/_hg
+++ b/Completion/Unix/Command/_hg
@@ -420,8 +420,8 @@ _hg_cmd_backout() {
     '--parent[parent to choose when backing out merge]' \
     '(--user -u)'{-u+,--user}'[record user as commiter]:user:' \
     '(--rev -r)'{-r+,--rev}'[revision]:revision:_hg_tags' \
-    '(--message -m)'{-m+,--message}'[use <text> as commit message]:text:' \
-    '(--logfile -l)'{-l+,--logfile}'[read commit message from <file>]:log file:_files -g \*.txt'
+    '(--message -m)'{-m+,--message}'[specify commit message]:text' \
+    '(--logfile -l)'{-l+,--logfile}'[read commit message from specified file]:log file:_files'
 }
 
 _hg_cmd_bisect() {
@@ -472,8 +472,8 @@ _hg_cmd_clone() {
 _hg_cmd_commit() {
   _arguments -s -w : $_hg_global_opts $_hg_pat_opts \
   '(--addremove -A)'{-A,--addremove}'[mark new/missing files as added/removed before committing]' \
-  '(--message -m)'{-m+,--message}'[use <text> as commit message]:text:' \
-  '(--logfile -l)'{-l+,--logfile}'[read commit message from <file>]:log file:_files -g \*.txt' \
+  '(--message -m)'{-m+,--message}'[specify commit message]:text' \
+  '(--logfile -l)'{-l+,--logfile}'[read commit message from specified file]:log file:_files' \
   '(--date -d)'{-d+,--date}'[record datecode as commit date]:date code:' \
   '(--user -u)'{-u+,--user}'[record user as commiter]:user:' \
   '*:file:_hg_files'
diff --git a/Completion/Unix/Command/_ldd b/Completion/Unix/Command/_ldd
index e739181d6..a22150f86 100644
--- a/Completion/Unix/Command/_ldd
+++ b/Completion/Unix/Command/_ldd
@@ -28,5 +28,5 @@ fi
 
 _arguments $args \
   '*: : _alternative
-    "executables:executable:_files -g \^\*.so\(\*\)"
-      "shared-objects:shared object:_files -g \*.so"'
+    "executables:executable:_files -g \^\*.so\(\-*\)"
+      "shared-objects:shared object:_files -g \*.so\(-.\)"'
diff --git a/Completion/Unix/Command/_metaflac b/Completion/Unix/Command/_metaflac
index e6cd13e13..14095e9f9 100644
--- a/Completion/Unix/Command/_metaflac
+++ b/Completion/Unix/Command/_metaflac
@@ -50,7 +50,7 @@ _metaflac_opers=(
 )
 
 _arguments "$_metaflac_opts[@]" \
-    "*:FLAC file:_files -g \*.flac" \
+    "*:FLAC file:_files -g \*.flac\(-.\)" \
     - "shortcuts" \
     "$_metaflac_shorts[@]" \
     - "(operations)" \
diff --git a/Completion/Unix/Command/_pax b/Completion/Unix/Command/_pax
index 5d0edac88..7ebaa6aa5 100644
--- a/Completion/Unix/Command/_pax
+++ b/Completion/Unix/Command/_pax
@@ -19,7 +19,7 @@ _arguments -s \
   123b 124b 125b 126b)' \
   '-c[match all but specified]' \
   '-d[match only directory but not contents]' \
-  '-f:archive:_files -g "*.(tar|cpio)"' \
+  '-f:archive:_files -g "*.(tar|cpio)(-.)"' \
   '-i[interactively rename files]' \
   '-j[filter archive through bzip2]' \
   '-k[do not overwrite existing files]' \
diff --git a/Completion/Unix/Command/_rubber b/Completion/Unix/Command/_rubber
index 526abaaa8..09e289aa2 100644
--- a/Completion/Unix/Command/_rubber
+++ b/Completion/Unix/Command/_rubber
@@ -43,7 +43,7 @@ case "$service" in
       {-f,--force}'[force at least one compilation]' \
       '--inplace[compile the documents from their source directory]' \
       \*{-W,--warn}'=[report warnings of the given TYPE]:warnings:(all boxes misc refs)' \
-      '*:LaTeX files:_files -g \*.\(tex\|dtx\|lhs\|w\)'
+      '*:LaTeX files:_files -g "*.(tex|dtx|lhs|w)(-.)"'
       return 0
 	;;
 	
@@ -64,7 +64,7 @@ case "$service" in
       '--errors[show all errors that occured during compilation]' \
       '--refs[show the list of undefined references]' \
       '--warnings[show all LaTeX warnings]' \
-      ':LaTeX file:_files -g \*.\(tex\|dtx\|lhs\|w\)'
+      ':LaTeX file:_files -g "*.(tex|dtx|lhs|w)(-.)"'
       return 0
   ;;
 esac
diff --git a/Completion/Unix/Command/_sisu b/Completion/Unix/Command/_sisu
index d3d53275b..6ca2abfaa 100644
--- a/Completion/Unix/Command/_sisu
+++ b/Completion/Unix/Command/_sisu
@@ -59,4 +59,4 @@ _arguments -s -C -M 'r:|[_-]=* r:|=*' \
   '--to=dom[XML dom based input representation, experimental]' \
   '--convert=footnotes[embedded footnotes]' \
   '--to=current[current markup]' \
-  '*:SiSU files:_files -g "*.(sst|ssm)(.)"'
+  '*:SiSU files:_files -g "*.(sst|ssm)(-.)"'
diff --git a/Completion/Unix/Command/_texinfo b/Completion/Unix/Command/_texinfo
index 405de2629..12d964e3f 100644
--- a/Completion/Unix/Command/_texinfo
+++ b/Completion/Unix/Command/_texinfo
@@ -157,7 +157,7 @@ case $state in
     _tags $tags
     while _tags; do
 	if _requested files expl 'info file'; then
-	    _files "$expl[@]" $infopath -g '*.info' && ret=0
+	    _files "$expl[@]" $infopath -g '*.info(-.)' && ret=0
 	fi
 	if _requested items; then
 	    items=(${${(M)${${(f)"$(${info} --output - ${words[1,CURRENT-1]} 2>/dev/null)"}[1,(r)[[:space:]]#--- The Detailed Node Listing ---[[:space:]]#]}:#\* *~\* Menu:*}:/(#b)\*[[:space:]]##([^:]##):(#B)( \(?##\)[^.]#.|(:|))[[:space:]]#(#b)(*)[[:space:]]#/$match[1]${match[2]:+:}$match[2]})
diff --git a/Completion/Unix/Command/_vim b/Completion/Unix/Command/_vim
index 7aec1ecf7..2c9b0a1a4 100644
--- a/Completion/Unix/Command/_vim
+++ b/Completion/Unix/Command/_vim
@@ -46,7 +46,7 @@ arguments=(
   '-D[debugging mode]'
   '-n[no swap file (memory only)]'
   '-nb[start as NetBean server]'
-  {-r,-L}'[list swap files and exit or recover from a swap file]::swap file:_vim_files -g \*.sw\?'
+  {-r,-L}'[list swap files and exit or recover from a swap file]::swap file:_vim_files -g "*.sw?(-.)"'
   '(   -H -F)-A[start in Arabic mode]'
   '(-A    -F)-H[start in Hebrew mode]'
   '(-A -H   )-F[start in Farsi mode]'
diff --git a/Completion/Unix/Command/_vorbiscomment b/Completion/Unix/Command/_vorbiscomment
index 4cefe1a1a..bd7459e04 100644
--- a/Completion/Unix/Command/_vorbiscomment
+++ b/Completion/Unix/Command/_vorbiscomment
@@ -13,6 +13,6 @@ _arguments \
     '(-l)-w[overwrite comments]' \
     '(-l -c)-t[tag and value]:: ' \
     '(-l -t)-c[tag file]::_files' \
-    '1:OGG file:_files -g \*.ogg' \
-    '(-l)2:output OGG file:_files -g \*.ogg' \
+    '1:OGG file:_files -g "*.ogg(-.)"' \
+    '(-l)2:output OGG file:_files -g "*.ogg(-.)"' \
     && return 0
diff --git a/Completion/Unix/Command/_xmms2 b/Completion/Unix/Command/_xmms2
index 95ea04b33..525d5177c 100644
--- a/Completion/Unix/Command/_xmms2
+++ b/Completion/Unix/Command/_xmms2
@@ -198,7 +198,7 @@ _xmms2_radd() {
 _xmms2_addpls() {
   local expl
   _description files expl 'playlist'
-  _files "$expl[@]" -g '*.([mM]3[uU]|[pP][lL][sS])'
+  _files "$expl[@]" -g '*.([mM]3[uU]|[pP][lL][sS])(-.)'
 }
 
 _xmms2() {