Fixes issues #34 and #35 introduced by PR #27

This commit is contained in:
Josh Skidmore
2024-05-15 17:40:24 -04:00
parent a2700be96d
commit d5a9730b5b

View File

@@ -65,19 +65,22 @@ fzf_history_search() {
else
candidates=(${(f)"$(eval $history_cmd | fzf ${=ZSH_FZF_HISTORY_SEARCH_FZF_ARGS} ${=ZSH_FZF_HISTORY_SEARCH_FZF_EXTRA_ARGS})"})
fi
local ret=$?
if [ -n "$candidates" ]; then
if (( $CANDIDATE_LEADING_FIELDS != 1 )); then
BUFFER="${candidates[@]/(#m)[0-9 \-\:]##/${${(As: :)MATCH}[${CANDIDATE_LEADING_FIELDS},-1]}}"
if (( ! $CANDIDATE_LEADING_FIELDS == 1 )); then
BUFFER="${candidates[@]/(#m)[0-9 \-\:]##/$(
printf '%s' "${${(As: :)MATCH}[${CANDIDATE_LEADING_FIELDS},-1]}" | sed 's/%/%%/g'
)}"
else
BUFFER="${(j| && |)candidates}"
fi
BUFFER=$(printf "${BUFFER[@]//\\\\n/\\\\\\n}")
zle vi-fetch-history -n $BUFFER
if [ -n "${ZSH_FZF_HISTORY_SEARCH_END_OF_LINE}" ]; then
zle end-of-line
fi
fi
zle reset-prompt
return $ret
}