dotfiles/.config/shell/rc.d/enable-fasd-hook.sh
Marty Oehme 381031749e Fix alias overlap of fasd, pywal
sd was both set by fasd and pywal. Fixed fasd to not alias anything to
sd, so my personal alias takes precedence.
2019-11-29 22:05:15 +01:00

28 lines
987 B
Bash

#!/bin/sh
# more usage instructions at https://github.com/clvv/fasd
eval "$(fasd --init posix-hook posix_alias bash-hook zsh-hook zsh-ccomp zsh-ccomp-install zsh-wcomp zsh-wcomp-install)"
# eval "$(fasd --init auto)"
alias a='fasd -a' # any
alias s='fasd -si' # show / search / select
# alias d='fasd -d' # directory
# alias f='fasd -f' # file
# alias sd='fasd -sid' # interactive directory selection
# alias sf='fasd -sif' # interactive file selection
alias z='fasd_cd -d' # cd, same functionality as j in autojump
alias zz='fasd_cd -d -i' # cd with interactive selection
# from: https://github.com/clvv/fasd/issues/10
# since I can only load auto configuration and have default fasd_cd AND useless aliases
# or manually load the modules and NOT have fasd_cd
# it's easier to use this function
fasd_cd() {
fasd_ret="$(fasd -d "$@")"
if [ -d "$fasd_ret" ]; then
cd "$fasd_ret" || exit
else
print "$fasd_ret"
fi
unset fasd_ret
}