summaryrefslogtreecommitdiff
path: root/etc
diff options
context:
space:
mode:
authorDaniel Friesel <derf@derf.homelinux.org>2009-03-22 11:20:40 +0100
committerDaniel Friesel <derf@derf.homelinux.org>2009-03-22 11:20:40 +0100
commit63eb4e7e440945a63672492b99844c5feae0a60c (patch)
tree059c13a1b4b80274a5a8606e474e223c5ec110c0 /etc
parente6a363514b8d1f113f280d4a011ad8a996613c84 (diff)
whichf: return 1 if no function definition file was found
Diffstat (limited to 'etc')
-rwxr-xr-xetc/functions/finfo2
-rwxr-xr-xetc/functions/help2
-rwxr-xr-xetc/functions/whichf7
3 files changed, 8 insertions, 3 deletions
diff --git a/etc/functions/finfo b/etc/functions/finfo
index 87b8acd..a73606d 100755
--- a/etc/functions/finfo
+++ b/etc/functions/finfo
@@ -3,7 +3,7 @@
## Assume that a function begins with an introduction, and print it
typeset line
-[[ -n $(whichf $1) ]] || return 1
+whichf $1 &> /dev/null || return 1
while read line; do
[[ $line == \#* ]] || break
diff --git a/etc/functions/help b/etc/functions/help
index bb061ae..1b338b2 100755
--- a/etc/functions/help
+++ b/etc/functions/help
@@ -3,7 +3,7 @@
if man -w $1 &> /dev/null; then
man $1
-elif [[ -n $(whichf $1) ]]; then
+elif whichf $1 &> /dev/null; then
finfo $1
elif (( ${+builtins[$1]} )); then
man zshbuiltins | less -p " $1"
diff --git a/etc/functions/whichf b/etc/functions/whichf
index dc8d04b..01026c4 100755
--- a/etc/functions/whichf
+++ b/etc/functions/whichf
@@ -1,2 +1,7 @@
## vim:ft=zsh
-echo ${^fpath}/$1(-.N)
+## locate the file corresponding to a function
+if [[ -n $(echo ${^fpath}/$1(-.N)) ]] {
+ echo ${^fpath}/$1(-.N)
+} else {
+ return 1
+}