aboutsummaryrefslogtreecommitdiffstats
path: root/src/shell/atuin.zsh
diff options
context:
space:
mode:
authorPatrick Decat <pdecat@gmail.com>2022-12-18 19:26:09 +0100
committerGitHub <noreply@github.com>2022-12-18 18:26:09 +0000
commited394afa82ef919937521e5ce72fc467cec203f9 (patch)
treebc7d078684089e71d0d96f22328c5c266ad22d28 /src/shell/atuin.zsh
parentBump debian from bullseye-20221024-slim to bullseye-20221205-slim (#638) (diff)
downloadatuin-ed394afa82ef919937521e5ce72fc467cec203f9.zip
Allow overriding filter and search modes from CLI (#635)
* Allow overriding filter and search modes from CLI arguments * Use session filter mode for bash up key binding * We precisely do not want to add quotes here so that all arguments are properly passed * Add --shell-up-key-binding hidden command argument and filter_mode_shell_up_key_binding configuration option to allow customizing the filter mode used when atuin is invoked from a shell up-key binding * Correct up binding for zsh Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
Diffstat (limited to 'src/shell/atuin.zsh')
-rw-r--r--src/shell/atuin.zsh12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/shell/atuin.zsh b/src/shell/atuin.zsh
index ed1c0c16..dd5c1afc 100644
--- a/src/shell/atuin.zsh
+++ b/src/shell/atuin.zsh
@@ -34,7 +34,8 @@ _atuin_search(){
echoti rmkx
# swap stderr and stdout, so that the tui stuff works
# TODO: not this
- output=$(RUST_LOG=error atuin search -i -- $BUFFER 3>&1 1>&2 2>&3)
+ # shellcheck disable=SC2048
+ output=$(RUST_LOG=error atuin search $* -i -- $BUFFER 3>&1 1>&2 2>&3)
echoti smkx
if [[ -n $output ]] ; then
@@ -45,15 +46,20 @@ _atuin_search(){
zle reset-prompt
}
+_atuin_up_search(){
+ _atuin_search --shell-up-key-binding
+}
+
add-zsh-hook preexec _atuin_preexec
add-zsh-hook precmd _atuin_precmd
zle -N _atuin_search_widget _atuin_search
+zle -N _atuin_up_search_widget _atuin_up_search
if [[ -z $ATUIN_NOBIND ]]; then
bindkey '^r' _atuin_search_widget
# depends on terminal mode
- bindkey '^[[A' _atuin_search_widget
- bindkey '^[OA' _atuin_search_widget
+ bindkey '^[[A' _atuin_up_search_widget
+ bindkey '^[OA' _atuin_up_search_widget
fi