diff options
Diffstat (limited to '')
| -rw-r--r-- | dot_zsh/plugins/fuzzy | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/dot_zsh/plugins/fuzzy b/dot_zsh/plugins/fuzzy new file mode 100644 index 0000000..eadedd1 --- /dev/null +++ b/dot_zsh/plugins/fuzzy @@ -0,0 +1,28 @@ +#!/bin/zsh + +(( $+commands[fd] )) || return # find(1) sucks, not worth without fd + +# if it's not set yet, set it +[[ -z $fuzzy_command ]] && (( $+commands[fzf] )) && fuzzy_command=fzf +[[ -z $fuzzy_command ]] && (( $+commands[sk] )) && fuzzy_command=sk + +local FUZZY_DEFAULT='fd -t f' +local FUZZY_ALT_C='fd -t d' +local FUZZY_CTRL_T="$FUZZY_DEFAULT" + +case $fuzzy_command in + fzf) + export FZF_DEFAULT_COMMAND="$FUZZY_DEFAULT" + export FZF_ALT_C_COMMAND="$FUZZY_ALT_C" + export FZF_CTRL_T_COMMAND="$FUZZY_CTRL_T" + . /usr/share/fzf/key-bindings.zsh + . /usr/share/fzf/completion.zsh + ;; + sk) + export SKIM_DEFAULT_COMMAND="$FUZZY_DEFAULT" + export SKIM_ALT_C_COMMAND="$FUZZY_ALT_C" + export SKIM_CTRL_T_COMMAND="$FUZZY_CTRL_T" + . /usr/share/skim/key-bindings.zsh + . /usr/share/skim/completion.zsh + ;; +esac |
