dotfiles/system/fzf.zsh
Daylin Morgan 5acfc464dc refactor fzf.zsh
WIP

wip: add whitespace that isn't tidy.nvim
2022-01-24 12:57:45 -06:00

56 lines
1.6 KiB
Bash

# Auto-completion
# ---------------
[[ $- == *i* ]] && source "$HOME/.fzf/shell/completion.zsh" 2>/dev/null
# Key bindings
# ------------
source "$HOME/.fzf/shell/key-bindings.zsh"
FZF_COLORS="
--color=dark
--color=fg:-1,bg:-1,hl:#5fff87,fg+:-1,bg+:-1,hl+:#ffaf5f
--color=info:#af87ff,prompt:#5fff87,pointer:#ff87d7,marker:#ff87d7,spinner:#ff87d7
"
FZF_LAYOUT="
--height=40%
--border=rounded
--margin=0,5,5%
--layout=reverse
"
export FZF_DEFAULT_OPTS=${FZF_COLORS}${FZF_LAYOUT}
export FZF_CTRL_GENERAL="--height=100% --margin=0,0,0"
#adapted from https://github.com/zimfw/fzf/blob/master/init.zsh
if [ -x "$(command -v fd)" ]; then
export FZF_DEFAULT_COMMAND="command fd --type file --exclude ".git/" --hidden --no-ignore"
_fzf_compgen_path() {
command fd --type file --exclude ".git/" --hidden --no-ignore "${1}"
}
elif [ -x "$(command -v rg)" ]; then
export FZF_DEFAULT_COMMAND="command rg -uu -g '!.git' --files"
_fzf_compgen_path() {
command rg -uu -g '!.git' --files "${1}"
}
fi
if [ -x "$(command -v bat)" ]; then
export FZF_CTRL_T_OPTS="
--preview 'command bat --style numbers --color=always --line-range :500 {}'
--preview-window up,70%,border-rounded
${FZF_CTRL_GENERAL}
"
fi
export FZF_ALT_C_OPTS="
--height 60%
--preview 'lsd --tree --color always --icon always {}'
--preview-window right,60%,border-rounded
"
# [[ -v FZF_CTRL_T_COMMAND ]] && && export FZF_CTRL_T_COMMAND=${FZF_DEFAULT_COMMAND}
[[ -z "$FZF_CTRL_T_COMMAND" ]] && export FZF_CTRL_T_COMMAND="${FZF_DEFAULT_COMMAND}"
# fix spacing on fzf-tab to show max options
zstyle ':fzf-tab:*' fzf-pad 4