atuin/atuin.plugin.zsh
2021-02-13 22:06:27 +00:00

28 lines
536 B
Bash

# Source this in your ~/.zshrc
export ATUIN_SESSION=$(atuin uuid)
export ATUIN_FUZZY=fzf
_atuin_preexec(){
id=$(atuin history start $1)
export ATUIN_HISTORY_ID="$id"
}
_atuin_precmd(){
local EXIT="$?"
[[ -z "${ATUIN_HISTORY_ID}" ]] && return
atuin history end $ATUIN_HISTORY_ID --exit $EXIT
}
_atuin_search(){
$(atuin history list --distinct | $ATUIN_FUZZY)
}
add-zsh-hook preexec _atuin_preexec
add-zsh-hook precmd _atuin_precmd
zle -N _atuin_search_widget _atuin_search
bindkey -r '^r'
bindkey '^r' _atuin_search_widget