diff options
author | 2022-10-03 21:42:20 +0530 | |
---|---|---|
committer | 2022-10-03 21:42:20 +0530 | |
commit | af120ab348f2e1a5a39dec035ed9dcf84189a64e (patch) | |
tree | 2a3aadd7ce1b7b771dfe3fe7c983569726c8d7ed /zsh/oh-my-zsh/plugins/hitchhiker/hitchhiker.plugin.zsh | |
download | dotfiles-af120ab348f2e1a5a39dec035ed9dcf84189a64e.tar.gz dotfiles-af120ab348f2e1a5a39dec035ed9dcf84189a64e.tar.bz2 dotfiles-af120ab348f2e1a5a39dec035ed9dcf84189a64e.zip |
dotfiles
Diffstat (limited to 'zsh/oh-my-zsh/plugins/hitchhiker/hitchhiker.plugin.zsh')
-rw-r--r-- | zsh/oh-my-zsh/plugins/hitchhiker/hitchhiker.plugin.zsh | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/zsh/oh-my-zsh/plugins/hitchhiker/hitchhiker.plugin.zsh b/zsh/oh-my-zsh/plugins/hitchhiker/hitchhiker.plugin.zsh new file mode 100644 index 0000000..0b1a301 --- /dev/null +++ b/zsh/oh-my-zsh/plugins/hitchhiker/hitchhiker.plugin.zsh @@ -0,0 +1,28 @@ +# Handle $0 according to the standard: +# https://zdharma-continuum.github.io/Zsh-100-Commits-Club/Zsh-Plugin-Standard.html +0="${${ZERO:-${0:#$ZSH_ARGZERO}}:-${(%):-%N}}" +0="${${(M)0:#/*}:-$PWD/$0}" + +HITCHHIKER_DIR="${0:h}/fortunes" + +# Aliases +alias hitchhiker="fortune -a $HITCHHIKER_DIR" +alias hitchhiker_cow="hitchhiker | cowthink" + +() { + # Don't generate hitchhiker.dat if it exists and is up-to-date + if [[ -f "$HITCHHIKER_DIR/hitchhiker.dat" ]] && ! [[ "$HITCHHIKER_DIR/hitchhiker.dat" -ot "$HITCHHIKER_DIR/hitchhiker" ]]; then + return + fi + + # If strfile is not found: some systems install strfile in /usr/sbin but it's not in $PATH + if ! command -v strfile &>/dev/null && ! [[ -f /usr/sbin/strfile ]]; then + echo "[oh-my-zsh] hitchhiker depends on strfile, which is not installed" >&2 + echo "[oh-my-zsh] strfile is often provided as part of the 'fortune' package" >&2 + return + fi + + "${commands[strfile]:-/usr/sbin/strfile}" "$HITCHHIKER_DIR/hitchhiker" "$HITCHHIKER_DIR/hitchhiker.dat" >/dev/null +} + +unset HITCHHIKER_DIR |