about summary refs log tree commit diff
path: root/Completion/BSD/Type/_login_classes
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/BSD/Type/_login_classes')
-rw-r--r--Completion/BSD/Type/_login_classes9
1 files changed, 8 insertions, 1 deletions
diff --git a/Completion/BSD/Type/_login_classes b/Completion/BSD/Type/_login_classes
index 227e3c748..a2e6983a9 100644
--- a/Completion/BSD/Type/_login_classes
+++ b/Completion/BSD/Type/_login_classes
@@ -1,4 +1,11 @@
 #autoload
 
+local expl login_classes
+
+login_classes=(${${(M)${(f)"$(</etc/login.conf)"}:#[^#[:blank:]]*}%%[:|]*})
+if [[ $OSTYPE = openbsd* ]]; then
+  login_classes+=(/etc/login.conf.d/*(N:t))
+fi
+
 _description login-classes expl 'login class'
-compadd "$@" "$expl[@]" - ${${(M)${(f)"$(</etc/login.conf)"}:#[^#[:blank:]]*}%%[:|]*}
+compadd "$@" "$expl[@]" - $login_classes