config/zsh: fix fzf & b on outdated machines

This commit is contained in:
xeruf 2021-12-15 12:34:32 +01:00
parent c1c7f4015e
commit 033cd45029
3 changed files with 7 additions and 6 deletions

View File

@ -64,7 +64,7 @@ wh() {
tool="$(echo "$res" | cut -d' ' -f$(expr 5 '&' "$res" : ".*to \(sudo\|noglob\) " '|' 4) | cut -d'(' -f2)" tool="$(echo "$res" | cut -d' ' -f$(expr 5 '&' "$res" : ".*to \(sudo\|noglob\) " '|' 4) | cut -d'(' -f2)"
wh $(test $tool = $1 && echo "-p") $tool wh $(test $tool = $1 && echo "-p") $tool
# use command which for other shells # use command which for other shells
else test -r "$res" && b --style=header "$res" || echo "$res" | bat --style=plain --language=sh else test -r "$res" && b "$res" || echo "$res" | bat --style=plain --language=sh
fi fi
} }
compdef wh=which compdef wh=which
@ -80,7 +80,7 @@ pathadd() {
} }
# ZSH completion and stuff {{{1 # ZSH completion and stuff {{{1
alias rs="reset && exec $SHELL" alias rs="reset && source $HOME/.zshenv && exec $SHELL"
alias hist='print -z $(history | tac | fzf --tiebreak=index --bind='"'"'del:execute(sed "\;$(echo {4..})$d" -i.bak $HISTFILE)'"'"' | sed "s|^ \+||" | cut -d" " -f5-)' alias hist='print -z $(history | tac | fzf --tiebreak=index --bind='"'"'del:execute(sed "\;$(echo {4..})$d" -i.bak $HISTFILE)'"'"' | sed "s|^ \+||" | cut -d" " -f5-)'
# Edit shell config files # Edit shell config files
@ -211,6 +211,7 @@ alias gdiff='git diff --word-diff=color --word-diff-regex=. --no-index'
alias grp='grep --color=auto --line-number --ignore-case --binary-files=without-match --directories=skip' alias grp='grep --color=auto --line-number --ignore-case --binary-files=without-match --directories=skip'
grpr() { grp --color=always --recursive $(echo $DIRS_IGNORE | sed 's/-x/--exclude-dir/g') "$@" | less -F; } grpr() { grp --color=always --recursive $(echo $DIRS_IGNORE | sed 's/-x/--exclude-dir/g') "$@" | less -F; }
grsh() { grpr "$@" $HOME/.{ba,z}sh* $HOME/.local/bin $CONFIG_SHELLS $CONFIG_ZSH }
# Recover stray swap files from neovim # Recover stray swap files from neovim
alias vrec="ls $XDG_DATA_HOME/nvim/swap | sed 's/\%/\//g' | sed 's|\(.*\)\..*|\1|' | head -1 | xargs --no-run-if-empty nvim" alias vrec="ls $XDG_DATA_HOME/nvim/swap | sed 's/\%/\//g' | sed 's|\(.*\)\..*|\1|' | head -1 | xargs --no-run-if-empty nvim"

View File

@ -124,7 +124,7 @@ if test "$bat" -o "$batl"; then
test "$(bat --version | cut -d. -f2)" -gt 16 && rule=,rule test "$(bat --version | cut -d. -f2)" -gt 16 && rule=,rule
if test $# -gt ${#bat[@]} -a $# -gt ${#batl[@]} && test -z "$args" if test $# -gt ${#bat[@]} -a $# -gt ${#batl[@]} && test -z "$args"
then $elevate head "${batl[@]}" "${bat[@]}" | cut -c-$(echo "$(tput cols)*1.9" | bc | cut -d. -f1) then $elevate head "${batl[@]}" "${bat[@]}" | cut -c-$(echo "$(tput cols)*1.9" | bc | cut -d. -f1)
else test "$bat" && $elevate bat --style numbers,header$rule --pager 'less -RF' $args "${bat[@]}" else test "$bat" && $elevate bat --style $(test $# -gt 1 && echo "numbers,")header$rule --pager 'less -RF' $args "${bat[@]}"
test "$batl" && $elevate bat --style plain$rule --pager 'less -RF' $args "${batl[@]}" test "$batl" && $elevate bat --style plain$rule --pager 'less -RF' $args "${batl[@]}"
fi fi
fileinfo "${bat[@]}" fileinfo "${bat[@]}"

View File

@ -85,6 +85,7 @@ export LESS_TERMCAP_se=$'\e[0m' # reset reverse video
export LESS_TERMCAP_ue=$'\e[0m' # reset underline export LESS_TERMCAP_ue=$'\e[0m' # reset underline
export GROFF_NO_SGR=1 # for konsole and gnome-terminal export GROFF_NO_SGR=1 # for konsole and gnome-terminal
## fzf defaults ## fzf defaults
[[ "$(fzf --version 2>/dev/null | grep --only-matching '[0-9]\.[^. ]*')" > 0.24 ]] && _fzf_latest=true || _fzf_latest=false
FZF_BINDINGS=$(echo " FZF_BINDINGS=$(echo "
change:top change:top
alt-enter:execute(test -O {} && $EDITOR {} || sudoedit {}) alt-enter:execute(test -O {} && $EDITOR {} || sudoedit {})
@ -97,15 +98,14 @@ alt-c:yank
alt-w:toggle-preview-wrap alt-w:toggle-preview-wrap
alt-j:preview-half-page-down,alt-k:preview-half-page-up alt-j:preview-half-page-down,alt-k:preview-half-page-up
shift-down:preview-half-page-down,shift-up:preview-half-page-up shift-down:preview-half-page-down,shift-up:preview-half-page-up
$([[ "$(fzf --version 2>/dev/null | cut -d '.' -f-2)" > 0.24 ]] && echo "alt-shift-down:preview-down,alt-shift-up:preview-up") $($_fzf_latest && echo "alt-shift-down:preview-down,alt-shift-up:preview-up,esc:close")
esc:close
" | xargs -I% echo -n "%," | head -c-1) " | xargs -I% echo -n "%," | head -c-1)
#alt-r:preview(bat {}), #alt-r:preview(bat {}),
export FZF_HISTDIR="$XDG_STATE_HOME/fzf" export FZF_HISTDIR="$XDG_STATE_HOME/fzf"
mkdir -p "$XDG_STATE_HOME/fzf" mkdir -p "$XDG_STATE_HOME/fzf"
export FZF_DEFAULT_OPTS="--select-1 --ansi --marker=o export FZF_DEFAULT_OPTS="--select-1 --ansi --marker=o
--tiebreak=end,length --history=$FZF_HISTDIR/history --bind='$FZF_BINDINGS' --tiebreak=end,length --history=$FZF_HISTDIR/history --bind='$FZF_BINDINGS'
--preview-window=60%,border-left" $($_fzf_latest && echo '--preview-window=60%,border-left')"
FD_BASE="fd --hidden --color=always --no-ignore-vcs" FD_BASE="fd --hidden --color=always --no-ignore-vcs"
export FZF_DEFAULT_COMMAND="$FD_BASE --type file" export FZF_DEFAULT_COMMAND="$FD_BASE --type file"
export FZF_CTRL_T_COMMAND="$FD_BASE -d 7" export FZF_CTRL_T_COMMAND="$FD_BASE -d 7"