mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-11-22 13:50:09 +00:00
chucknorris: check for strfile dependency
Gives a better error message than "command not found: strfile", because it's not obvious to many users that strfile is part of fortune. Also handles the weird /usr/sbin install location for strfile on Cygwin.
This commit is contained in:
parent
cb0718c147
commit
a2e01e9a87
1 changed files with 20 additions and 3 deletions
|
@ -1,11 +1,28 @@
|
||||||
|
# chucknorris: Chuck Norris fortunes
|
||||||
|
|
||||||
# Automatically generate or update Chuck's compiled fortune data file
|
# Automatically generate or update Chuck's compiled fortune data file
|
||||||
DIR=${0:h}/fortunes
|
# $0 must be used outside a local function. This variable name is unlikly to collide.
|
||||||
|
CHUCKNORRIS_PLUGIN_DIR=${0:h}
|
||||||
|
|
||||||
|
() {
|
||||||
|
local DIR=$CHUCKNORRIS_PLUGIN_DIR/fortunes
|
||||||
if [[ ! -f $DIR/chucknorris.dat ]] || [[ $DIR/chucknorris.dat -ot $DIR/chucknorris ]]; then
|
if [[ ! -f $DIR/chucknorris.dat ]] || [[ $DIR/chucknorris.dat -ot $DIR/chucknorris ]]; then
|
||||||
strfile $DIR/chucknorris $DIR/chucknorris.dat
|
# For some reason, Cygwin puts strfile in /usr/sbin, which is not on the path by default
|
||||||
|
local strfile=strfile
|
||||||
|
if ! which strfile &>/dev/null && [[ -f /usr/sbin/strfile ]]; then
|
||||||
|
strfile=/usr/sbin/strfile
|
||||||
|
fi
|
||||||
|
if which $strfile &> /dev/null; then
|
||||||
|
$strfile $DIR/chucknorris $DIR/chucknorris.dat >/dev/null
|
||||||
|
else
|
||||||
|
echo "[oh-my-zsh] chucknorris depends on strfile, which is not installed" >&2
|
||||||
|
echo "[oh-my-zsh] strfile is often provided as part of the 'fortune' package" >&2
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Aliases
|
# Aliases
|
||||||
alias chuck="fortune -a $DIR"
|
alias chuck="fortune -a $DIR"
|
||||||
alias chuck_cow="chuck | cowthink"
|
alias chuck_cow="chuck | cowthink"
|
||||||
|
}
|
||||||
|
|
||||||
unset DIR
|
unset CHUCKNORRIS_PLUGIN_DIR
|
||||||
|
|
Loading…
Reference in a new issue