#compdef apm if [[ $OSTYPE == linux* ]]; then _arguments -s \ '(-)'{-V,--version}'[print the apm program version and exit immediately]' \ '(-v --verbose)'{-v,--verbose}'[print information about APM BIOS and Linux APM driver version]' \ '(-m --minutes)'{-m,--minutes}'[print total minutes remaining instead of using an hh:mm format]' \ '(-s --suspend)'{-s,--suspend}'[put the machine into suspend mode if possible]' \ '(-S --standby)'{-S,--standby}'[put the machine into standby mode if possible]' \ '(-n --noignore)'{-n,--noignore}'[tell the system not to ignore system-generated APM message]' \ '(-i --ignore)'{-i,--ignore}'[tell the system to ignore system-generated APM message]' && return elif [[ $OSTYPE == freebsd* ]]; then _arguments \ '-a[display AC line status]' \ '-b[display battery status]' \ '-d[disable/enable display suspension]:bool:' \ '-e[disable/enable apm functions]:bool:' \ '-h[disable/enable HLT in kernel context switch]:bool:' \ '-l[display remaining battery percentage]' \ '-r[enable resume wakeup timer]' \ '-s[display status of APM support]' \ '-t[display estimated remaining battery life in seconds]' \ '-Z[transition system into standby mode]' \ '-z[suspend the system]' && return elif [[ $OSTYPE == openbsd* ]]; then _arguments \ '-z[engage suspend mode]' \ '-S[engage stand-by mode]' \ '-l[display estimated battery lifetime percentage]' \ '-m[display estimated battery lifetime minutes]' \ '-b[display battery status]' \ '-a[display AC line status]' \ '-v[verbose]' \ '-f[socket]:sockname:_files' && return fi return 1