about summary refs log tree commit diff
path: root/Completion/Unix/Command
diff options
context:
space:
mode:
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
   ;;