From 381031749e0d289eabd60e6c7e1165bb770090d7 Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Fri, 29 Nov 2019 22:05:15 +0100 Subject: [PATCH] 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. --- .config/shell/rc.d/enable-fasd-hook.sh | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/.config/shell/rc.d/enable-fasd-hook.sh b/.config/shell/rc.d/enable-fasd-hook.sh index 4fb3666..7d915a2 100644 --- a/.config/shell/rc.d/enable-fasd-hook.sh +++ b/.config/shell/rc.d/enable-fasd-hook.sh @@ -1,6 +1,7 @@ #!/bin/sh # more usage instructions at https://github.com/clvv/fasd -eval "$(fasd --init zsh-hook zsh-ccomp zsh-ccomp-install zsh-wcomp zsh-wcomp-install)" +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 @@ -10,3 +11,17 @@ alias s='fasd -si' # show / search / select # 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 +}