From cd42e445783c9cac35465127f3b907982baa2e22 Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Wed, 1 Oct 2008 19:40:42 +0200 Subject: Added check_com from the grml zshrc --- etc/functions/check_com | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 etc/functions/check_com (limited to 'etc/functions') diff --git a/etc/functions/check_com b/etc/functions/check_com new file mode 100644 index 0000000..b631e95 --- /dev/null +++ b/etc/functions/check_com @@ -0,0 +1,31 @@ +## vim:ft=zsh +## Check for a command/function +## Taken from the grml zshrc - http://grml.org +local -i comonly + +if [[ ${1} == '-c' ]] ; then + (( comonly = 1 )) + shift +else + (( comonly = 0 )) +fi + +if (( ${#argv} != 1 )) ; then + printf 'usage: check_com [-c] \n' >&2 + return 1 +fi + +if (( comonly > 0 )) ; then + [[ -n ${commands[$1]} ]] && return 0 + return 1 +fi + +if [[ -n ${commands[$1]} ]] \ + || [[ -n ${functions[$1]} ]] \ + || [[ -n ${aliases[$1]} ]] \ + || [[ -n ${reswords[(r)$1]} ]] ; then + + return 0 +fi + +return 1 -- cgit v1.2.3