colorscheme desertex

add-highlighter global/ number-lines -relative -hlcursor
add-highlighter global/ show-matching

# this messes with jumplist
# map -docstring "jump forward" global normal <tab> ":exec <lt>c-i<gt><ret>"
map -docstring "toogle comment" global user / ":comment-line<ret>"

hook global BufWritePost .* %{ git update-diff }

define-command zellij-fzf %{
    zellij-terminal-horizontal sh -c "find . -type f -not -path *.git* | fzf --bind 'enter:execute(echo eval -client %val{client} e {} | kak -p %val{session})+execute(zellij action close-pane)'"
}

map -docstring "git" global user g ":enter-user-mode git<ret>"
map -docstring "find" global user f ":enter-user-mode search<ret>"
map -docstring "format" global user F ":lsp-formatting<ret>"
map -docstring "format" global user K ":lsp-hover-buffer<ret>"

eval %sh{kak-lsp}
lsp-enable
lsp-auto-hover-enable

# zellij-terminal-horizontal fzf --bind "enter:execute(kak -C %val{session} {})"
#
declare-user-mode git
map -docstring "preview" global git p ":git show-diff<ret>"
map -docstring "next change" global git j ":git next-hunk<ret>"
map -docstring "previous change" global git k ":git prev-hunk<ret>"
map -docstring "previous lazygit" global git g ":zellij-terminal-horizontal lazygit<ret>"

declare-user-mode search
map -docstring "file" global search f ":zellij-fzf<ret>"
map -docstring "grep" global search g ":grep<ret>"
