autoload -Uz log_debug log_error local -r _usage="Usage: %B${0}%b Set log level, following levels are supported: 0 (quiet), 1 (normal), 2 (verbose), 3 (debug)" if (( ! # )); then log_error 'Called without arguments.' log_output ${_usage} return 2 elif (( ${1} >= 4 )); then log_error 'Called with loglevel > 3.' log_output ${_usage} fi typeset -g -i -r _loglevel=${1} log_debug "Log level set to '${1}'"