diff options
| -rw-r--r-- | .config/git/config | 16 | ||||
| -rw-r--r-- | .config/kak/kakrc | 13 | ||||
| -rw-r--r-- | .config/zsh/rc | 21 |
3 files changed, 40 insertions, 10 deletions
diff --git a/.config/git/config b/.config/git/config index d8d52cb..ab82f44 100644 --- a/.config/git/config +++ b/.config/git/config @@ -1,3 +1,14 @@ +[core] + pager = delta + +[interactive] + diffFilter = delta --color-only + +[delta] + navigate = true # use n and N to move between diff sections + dark = true # or light = true, or omit for auto-detection + side-by-side = true + [commit] gpgsign = false @@ -5,10 +16,7 @@ format = "ssh" [merge] - tool = "fugitive" - -[mergetool "fugitive"] - cmd = "vim -f -c \"Gdiff\" \"$MERGED\"" + conflictStyle = zdiff3 [user] email = "ivi@vinkies.net" diff --git a/.config/kak/kakrc b/.config/kak/kakrc index 84c5ec0..762d0e2 100644 --- a/.config/kak/kakrc +++ b/.config/kak/kakrc @@ -56,20 +56,27 @@ hook global WinCreate ^[^*]+$ %{ map global insert <s-tab> '<a-;><a-lt>' } +define-command -override -docstring %{ + Format the contents of the buffer, but also write it. +} format-but-write %{ + format + write +} + hook global BufSetOption filetype=python %{ set-option buffer formatcmd 'ruff format -' - hook buffer -group format BufWritePost .* format + hook buffer -group format BufWritePost .* format-but-write } hook global BufSetOption filetype=terraform %{ set-option buffer formatcmd 'terraform fmt -' - hook buffer -group format BufWritePost .* format + hook buffer -group format BufWritePost .* format-but-write } hook global BufSetOption filetype=go %{ set-option buffer formatcmd 'gofumpt | goimports' set-option global make_error_pattern '^\s*([^:\n]+):(\d+):?(?:(\d+):)? ?([^\n]+)?' - hook buffer -group format BufWritePost .* format + hook buffer -group format BufWritePost .* format-but-write } hook global BufSetOption filetype=sh %{ diff --git a/.config/zsh/rc b/.config/zsh/rc index 8aa8744..bdeb327 100644 --- a/.config/zsh/rc +++ b/.config/zsh/rc @@ -1,10 +1,13 @@ -autoload -Uz compinit && compinit -autoload bashcompinit && bashcompinit if type brew &>/dev/null; then brewprefix=$(brew --prefix) - FPATH=$brewprefix/share/zsh-completions:$brewprefix/share/zsh/site-functions:$FPATH + FPATH="${XDG_DATA_HOME:-${HOME}/.local/share}/zsh-completions:$brewprefix/share/zsh-completions:$brewprefix/share/zsh/site-functions:$FPATH" fi +autoload -Uz compinit && compinit +autoload bashcompinit && bashcompinit + + + zmodload zsh/complist zstyle ':completion:*' menu select function insert-and-complete-again() { @@ -72,3 +75,15 @@ km() { echo "map global ${1:?} ${2:?} %{<esc>:make-once $(history -1 | sed 's/[[:space:]]*[0-9]*[[:space:]]*\(.*\)/\1/')<ret>}" | kak -p $KAKOUNE_SESSION } alias kmp='km pistarchio ' + +# Use lf to switch directories and bind it to ctrl-o +lfcd () { + tmp="$(mktemp -uq)" + trap 'rm -f $tmp >/dev/null 2>&1 && trap - HUP INT QUIT TERM PWR EXIT' HUP INT QUIT TERM PWR EXIT + lf -last-dir-path="$tmp" "$@" + if [ -f "$tmp" ]; then + dir="$(cat "$tmp")" + [ -d "$dir" ] && [ "$dir" != "$(pwd)" ] && cd "$dir" && c + fi +} +bindkey -s '^o' '^ulfcd\n' |
