From 0237bf09bf1fe70d94727b040ac39110f56b497f Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Sat, 25 Jan 2025 19:57:40 +0900 Subject: Split integration test file (#4205) --- test/lib/common.sh | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 test/lib/common.sh (limited to 'test/lib/common.sh') diff --git a/test/lib/common.sh b/test/lib/common.sh new file mode 100644 index 00000000..44d03622 --- /dev/null +++ b/test/lib/common.sh @@ -0,0 +1,59 @@ +set -u +PS1= PROMPT_COMMAND= HISTFILE= HISTSIZE=100 +unset <%= UNSETS.join(' ') %> +unset $(env | sed -n /^_fzf_orig/s/=.*//p) +unset $(declare -F | sed -n "/_fzf/s/.*-f //p") + +export FZF_DEFAULT_OPTS="--no-scrollbar --pointer '>' --marker '>'" + +# Setup fzf +# --------- +if [[ ! "$PATH" == *<%= BASE %>/bin* ]]; then + export PATH="${PATH:+${PATH}:}<%= BASE %>/bin" +fi + +# Auto-completion +# --------------- +[[ $- == *i* ]] && source "<%= BASE %>/shell/completion.<%= __method__ %>" 2> /dev/null + +# Key bindings +# ------------ +source "<%= BASE %>/shell/key-bindings.<%= __method__ %>" + +# Old API +_fzf_complete_f() { + _fzf_complete "+m --multi --prompt \"prompt-f> \"" "$@" < <( + echo foo + echo bar + ) +} + +# New API +_fzf_complete_g() { + _fzf_complete +m --multi --prompt "prompt-g> " -- "$@" < <( + echo foo + echo bar + ) +} + +_fzf_complete_f_post() { + awk '{print "f" $0 $0}' +} + +_fzf_complete_g_post() { + awk '{print "g" $0 $0}' +} + +[ -n "${BASH-}" ] && complete -F _fzf_complete_f -o default -o bashdefault f +[ -n "${BASH-}" ] && complete -F _fzf_complete_g -o default -o bashdefault g + +_comprun() { + local command=$1 + shift + + case "$command" in + f) fzf "$@" --preview 'echo preview-f-{}' ;; + g) fzf "$@" --preview 'echo preview-g-{}' ;; + *) fzf "$@" ;; + esac +} -- cgit v1.2.3