~chambln/dots

786cffa7aedf81e751e07043c512559a6e923a44 — Gregory Chamberlain 19 days ago 38d4c65
Add kakrc
1 files changed, 40 insertions(+), 0 deletions(-)

A pkgs/kakoune/.config/kak/kakrc
A pkgs/kakoune/.config/kak/kakrc => pkgs/kakoune/.config/kak/kakrc +40 -0
@@ 0,0 1,40 @@
colorscheme palenight

set-option global autocomplete prompt

map -docstring 'eval sels' global user , :<space><c-r>.<ret>
map -docstring 'pipe sels' global user | :pipe<space>
map -docstring 'shell command' global user ! ':echo %sh{}<left>'
map -docstring 'edit kakrc' global user <semicolon> :e<space>~/.config/kak/kakrc<ret>

map -docstring 'prev buffer' global goto p <a-semicolon>:bp<ret>
map -docstring 'next buffer' global goto n <a-semicolon>:bn<ret>

map -docstring 'quit' global normal q ':i-quit<ret>'
set-option global yes_or_no_instant false

define-command pipe -override -params .. -shell-completion %{
    execute-keys "y:edit -scratch *sh*<ret><esc>%%<a-d><a-p>|%arg{@}<ret>"
}

evaluate-commands %{
    map global user g ': git status -bs<ret>' -docstring 'git status'
    hook global WinSetOption filetype=git-status %{
       map window normal c ': git commit --verbose '
       map window normal l ': git log --oneline --graph<ret>'
       map window normal d ': -- %val{selections}<a-!><home> git diff '
       map window normal D ': -- %val{selections}<a-!><home> git diff --cached '
       map window normal a ': -- %val{selections}<a-!><home> git add '
       map window normal A ': -- %val{selections}<a-!><home> repl git add -p '
       map window normal r ': -- %val{selections}<a-!><home> git reset '
       map window normal R ': -- %val{selections}<a-!><home> repl git reset -p '
       map window normal o ': -- %val{selections}<a-!><home> git checkout '
    }
    hook global WinSetOption filetype=git-log %{
        map window normal d     ': %val{selections}<a-!><home> git diff '
        map window normal <ret> ': %val{selections}<a-!><home> git show '
        map window normal r     ': %val{selections}<a-!><home> git reset '
        map window normal R     ': %val{selections}<a-!><home> repl git reset -p '
        map window normal o     ': %val{selections}<a-!><home> git checkout '
    }
}