about summary refs log tree commit diff
path: root/Completion/Unix/Command
diff options
context:
space:
mode:
authorOliver Kiddle <opk@users.sourceforge.net>2003-12-16 16:23:08 +0000
committerOliver Kiddle <opk@users.sourceforge.net>2003-12-16 16:23:08 +0000
commitf8c004aa611908c9134a2174971ba80f9f8a0403 (patch)
treed70531fdcee553e05fbb2ef26cfaa8dd6b4a57a8 /Completion/Unix/Command
parent6eb5f99f1e71e8ea89057c2843f3e8273a0d2fdd (diff)
downloadzsh-f8c004aa611908c9134a2174971ba80f9f8a0403.tar.gz
zsh-f8c004aa611908c9134a2174971ba80f9f8a0403.tar.xz
zsh-f8c004aa611908c9134a2174971ba80f9f8a0403.zip
19299: try to handle completion of devices better
Diffstat (limited to 'Completion/Unix/Command')
-rw-r--r--Completion/Unix/Command/_mount8
1 files changed, 5 insertions, 3 deletions
diff --git a/Completion/Unix/Command/_mount b/Completion/Unix/Command/_mount
index 7c001844d..17bce8023 100644
--- a/Completion/Unix/Command/_mount
+++ b/Completion/Unix/Command/_mount
@@ -771,9 +771,11 @@ devordir)
       'directories:mount point:compadd -a mp_tmp' && ret=0
     ;;
   *)
-    _alternative \
-      'devices:device:_files -P /dev/ -W /dev' \
-      'directories:mount point:_directories' && ret=0
+    if (( ${${(s.,.)opt_args[-o]}[(I)loop(|=*)]} )) ; then
+      _wanted device-files expl 'loop device file' _files && ret=0
+    else
+      _wanted files expl 'device or mount point' _files -g "*(-%,-/)" && ret=0
+    fi
     ;;
   esac
   ;;