diff --git a/pkgs/kak-open/rc/kak-open.kak b/pkgs/kak-open/rc/kak-open.kak index 38f4924..6b5b1fa 100644 --- a/pkgs/kak-open/rc/kak-open.kak +++ b/pkgs/kak-open/rc/kak-open.kak @@ -3,14 +3,18 @@ declare-option str similar_sort_path "similar-sort" define-command -docstring 'open files named similarly to the current buffer' open-similar %{ tmux-terminal-impl 'display-popup -E' sh -c %{ set -euo pipefail + cd $5 + FILE="$(git ls-files --others --cached --exclude-standard | $1 $2 | grep -Ev "^$2\$" | fzf --tiebreak index --preview "bat --color=always -p {}")" printf "evaluate-commands -client %s edit %s\n" "$3" "$FILE" | indiekak -p $4 - } -- %opt{similar_sort_path} %val{bufname} %val{client} %val{session} + } -- %opt{similar_sort_path} %val{bufname} %val{client} %val{session} %sh{ echo $PWD } } define-command -docstring 'open buffers named similarly to the current buffer' open-similar-buffer %{ tmux-terminal-impl 'display-popup -E' sh -c %{ set -euo pipefail + cd $5 + OPTIONS="" for OPTION in "${@:5}"; do OPTIONS="$(printf "%s\n%s" "$OPTIONS" "$OPTION")" @@ -18,5 +22,5 @@ define-command -docstring 'open buffers named similarly to the current buffer' o BUFFER="$(echo "$OPTIONS" | $1 $2 | grep -Ev "^$2\$" | grep -ve '^$' | fzf --tiebreak index --preview "bat --color=always -p {}")" printf "evaluate-commands -client %s edit '%s'\n" "$3" "$BUFFER" | indiekak -p $4 - } -- %opt{similar_sort_path} %val{bufname} %val{client} %val{session} %val{buflist} + } -- %opt{similar_sort_path} %val{bufname} %val{client} %val{session} %val{buflist} %sh{ echo $PWD } }