zsh/fzf.zsh

35 lines
1 KiB
Bash

#! /bin/zsh
# SPDX-FileCopyrightText: 2023 Tobias Schmidl
#
# SPDX-License-Identifier: GPL-3.0-or-later
# shellcheck shell=bash
# shellcheck disable=1091
export FZF_COMPLETION_OPTS='--border --info=inline'
if [ -n "$TERMUX_VERSION" ] && [ -d "$PREFIX" ];
then
source "$PREFIX/share/fzf/completion.zsh"
source "$PREFIX/share/fzf/key-bindings.zsh"
else
source /usr/share/doc/fzf/examples/completion.zsh
source /usr/share/doc/fzf/examples/key-bindings.zsh
fi
# (EXPERIMENTAL) Advanced customization of fzf options via _fzf_comprun function
# - The first argument to the function is the name of the command.
# - You should make sure to pass the rest of the arguments to fzf.
_fzf_comprun() {
local command=$1
shift
case "$command" in
vim|nvim|nano) fzf "$@" --preview 'batcat --color=always {}' ;;
cd) fzf "$@" --preview 'tree -C {} | head -200' ;;
export|unset) fzf "$@" --preview "eval 'echo \$'{}" ;;
ssh) fzf "$@" --preview 'dig {}' ;;
*) fzf "$@" ;;
esac
}