#compdef jls local curcontext=$curcontext state state_descr line typeset -A opt_args _arguments -C -s -w -A '-*' : \ "(-h -N -n -q -s -v *)-c[only check for the jail's existence]" \ '-d[include dying jails]' \ '(-c)-h[print header line]' \ "(-c)-N[print jail's name instead of numeric ID]" \ '(-c)-n[print parameters in ``name=value'\'\'' format]' \ '(-c)-q[quote parameter value when it contains whitespace, quotes or empty string]' \ '(-c)-s[print parameters suitable for passing to jail(8)]' \ '(-c)-v[print a multiple-line summary per jail]' \ '-j[the jid or name of the jail to list]:jail:_jails' \ '*: :->parameters' if [[ $state == parameters ]]; then _values -w -S ' ' 'jail parameter' ${${${(f)"$(sysctl -N security.jail.param)"}%.#}##security.jail.param.#} fi