Package: zsh Version: 4.3.2-17 Severity: wishlist Tags: patch Hi!
Made a completion function for acpitool. Hope you find it useful :) Regards, Ramkumar.
#compdef acpitool local ret=1 selbrands disambig typeset -a brands args if ! zstyle -a ":completion:${curcontext}:" acpi-extensions brands || \ (( $brands[(I)detect] )); then [[ -d /proc/acpi/toshiba ]] && brands+=toshiba [[ -d /proc/acpi/asus ]] && brands+=asus [[ -d /proc/acpi/ibm ]] && brands+=thinkpad elif (( $brands[(I)all] )); then brands=(toshiba asus thinkpad) fi args=( '(-a --ac_adapter)'{-a,--ac_adapter}'[show AC adapter presence]' '-b[show battery status for available batteries]' '(-B --battery)'{-B,--battery}'[show detailed battery status for all batteries found]' '(-c --cpu)'{-c,--cpu}'[show CPU information]' '(-a --ac_adapter -A -b -B --battery -c --cpu -e -f --fan -t --thermal -w)-e[show just about everything]' '(-f --fan)'{-f,--fan}'[show fan status]' '(-h --help)'{-h,--help}'[display help]' '(-s --suspend)'{-s,--suspend}'[suspend machine to memory (sleep state S3)]' '-S[suspend machine to disk (sleep state S4)]' '(-t --thermal)'{-t,--thermal}'[show thermal zone(s) information and trip points]' '-v[show more verbose output]' '(-V --version)'{-V,--version}'[output version information and exit]' '-w[show the wakeup capable devices]' '-W+[toggle enable/disable wakeup capable device]: :_wakeup_capable_devices' ) if (( $brands[(I)asus] )); then disambig= (( $brands[(I)(toshiba|thinkpad)] )) && disambig='Asus ' args+=( '(-A --Asus)'{-A,--Asus}'[show supported Asus ACPI extensions]' '-m+[set mail LED status]:mail LED status:((1\:on 0\:off))' '-n+[set wireless LED status]:wireless LED status:((1\:on 0\:off))' '-o+[set LCD panel status]:LCD panel status:((1\:on 0\:off))' "-z+[set ${disambig}LCD brightness level]:${disambig}LCD brightness level:(0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15)" ) fi selbrands= if (( $brands[(I)toshiba] )); then selbrands=Toshiba args+=( '-F+[force fan on or switch back to auto mode]:fan status:((1\:on 0\:auto))' '(-T --Toshiba)'{-T,--Toshiba}'[show supported Toshiba ACPI extensions]' ) fi if (( $brands[(I)thinkpad] )); then [[ -n $selbrands ]] && selbrands+=/ selbrands=${selbrands}Thinkpad args+=('-j[eject ultrabay device]') fi if [[ -n $selbrands ]]; then disambig= (( $brands[(I)asus] )) && disambig="$selbrands " args+=( "-l+[set ${disambig}LCD brightness level]:${disambig}LCD brightness level:(0 1 2 3 4 5 6 7)" ) fi _arguments -s $args && ret=0 return ret
-- System Information: Debian Release: testing/unstable APT prefers testing APT policy: (101, 'testing') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/dash Kernel: Linux 2.6.16-beyond2 Locale: LANG=en_IN, LC_CTYPE=en_IN (charmap=UTF-8) Versions of packages zsh depends on: ii debconf [debconf-2.0] 1.5.4 Debian configuration management sy ii libc6 2.3.6.ds1-4 GNU C Library: Shared libraries ii libncurses5 5.5-3 Shared libraries for terminal hand Versions of packages zsh recommends: ii libcap1 1:1.10-14 support for getting/setting POSIX. ii libpcre3 6.4-2 Perl 5 Compatible Regular Expressi -- no debconf information -- WARN_(accel)("msg null; should hang here to be win compatible\n"); -- WINE source code