diff options
| author | Pedro Pereira <pedro.hr.pereira@proton.me> | 2026-10-16 15:19:13 -0300 |
|---|---|---|
| committer | Pedro Pereira <pedro.hr.pereira@proton.me> | 2026-10-16 15:19:13 -0300 |
| commit | 1eb69e9a795cc19450178c07d8d382622bc7ad70 (patch) | |
| tree | b6bc60605044fe929986f31b3b6bf4fee9b56e14 /.config/zsh/oh-my-zsh/plugins/percol/percol.plugin.zsh | |
first commit
Diffstat (limited to '.config/zsh/oh-my-zsh/plugins/percol/percol.plugin.zsh')
| -rw-r--r-- | .config/zsh/oh-my-zsh/plugins/percol/percol.plugin.zsh | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/.config/zsh/oh-my-zsh/plugins/percol/percol.plugin.zsh b/.config/zsh/oh-my-zsh/plugins/percol/percol.plugin.zsh new file mode 100644 index 0000000..b78383e --- /dev/null +++ b/.config/zsh/oh-my-zsh/plugins/percol/percol.plugin.zsh @@ -0,0 +1,25 @@ +(( ${+commands[percol]} )) || return + +function percol_select_history() { + # print history in reverse order (from -1 (latest) to 1 (oldest)) + BUFFER=$(fc -l -n -1 1 | percol --query "$LBUFFER") + CURSOR=$#BUFFER + zle -R -c +} +zle -N percol_select_history +bindkey -M emacs '^R' percol_select_history +bindkey -M viins '^R' percol_select_history +bindkey -M vicmd '^R' percol_select_history + +if (( ${+functions[marks]} )); then + function percol_select_marks() { + # parse directory from marks output (markname -> path) and quote if necessary + BUFFER=${(q)"$(marks | percol --query "$LBUFFER")"##*-> } + CURSOR=$#BUFFER + zle -R -c + } + zle -N percol_select_marks + bindkey -M emacs '^B' percol_select_marks + bindkey -M viins '^B' percol_select_marks + bindkey -M vicmd '^B' percol_select_marks +fi |
