X-Git-Url: https://git.sev.monster/~sev/dotfiles.git/blobdiff_plain/6c74cef6ac35d25dd4991e7ff5cccada15eb0ffb..2bf94bab09ba81e82c23467dcc6260f11e2cf659:/etc/zsh/.zshrc?ds=inline diff --git a/etc/zsh/.zshrc b/etc/zsh/.zshrc index 30625bd..d49afaa 100644 --- a/etc/zsh/.zshrc +++ b/etc/zsh/.zshrc @@ -7,10 +7,6 @@ setopt NO_BEEP NO_CLOBBER \ AUTO_CONTINUE LONG_LIST_JOBS \ NO_HIST_SAVE_BY_COPY HIST_IGNORE_DUPS SHARE_HISTORY HIST_REDUCE_BLANKS -### imports -autoload -Uz zmv -autoload -Uz zmathfunc && zmathfunc - ### exports ## common export EDITOR=${$(whence -p nvim vim vi micro nano emacs)[(f)1]} @@ -34,6 +30,38 @@ export QT_WAYLAND_DISABLE_WINDOWDECORATION=-1 export SDL_VIDEODRIVER=wayland export TERMINAL=${$(whence -p konsole footclient urxvt xterm)[(f)1]} +### imports +autoload -Uz zmv +autoload -Uz zmathfunc && zmathfunc + +## vcs +zstyle ':vcs_info:*' enable git +#zstyle ':vcs_info:git*' check-for-changes true #too slow +zstyle ':vcs_info:git*:dotfiles' check-for-changes true +zstyle ':vcs_info:git*' check-for-staged-changes true +autoload -Uz vcs_info + +## compinit +zstyle ':completion:*' auto-description '[arg] %d' +zstyle ':completion:*' expand suffix +zstyle ':completion:*' format '# %d' +zstyle ':completion:*' group-name '' +zstyle ':completion:*' ignore-parents parent +zstyle ':completion:*' insert-unambiguous false +zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS} +zstyle ':completion:*' list-prompt '%B%i%b' +zstyle ':completion:*' list-suffixes true +zstyle ':completion:*' matcher-list '' 'm:{[:lower:]}={[:upper:]}' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]} r:|[._-]=* r:|=*' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]} l:|=* r:|=*' +zstyle ':completion:*' menu select=1 +zstyle ':completion:*' original false +zstyle ':completion:*' select-prompt '%B%l%b' +zstyle ':completion:*' verbose true +autoload -Uz compinit +cache=${XDG_CACHE_HOME:-~/.cache}/zsh +[[ -d $cache ]] || mkdir -p $cache +compinit -d $cache/.zcompdump +unset cache + ### keys bindkey -v KEYTIMEOUT=10 @@ -94,6 +122,7 @@ if (( $#terminfo == 0 )) { key[$k]=$terminfo[$v] done; unset k v } + ## load history search autoload -Uz up-line-or-beginning-search down-line-or-beginning-search zle -N up-line-or-beginning-search @@ -187,21 +216,21 @@ if [[ "$(basename "$PAGER")" = "less" ]] { alias pa=$ps alias spa="sudo $ps" unset ps - -### specialized aliases -## go up directories +## git +alias gdh='git diff HEAD' +alias ga='git add' +alias gc='git commit' +alias gca='git commit --amend' +alias gp='git push' +## cd/zoxide function up { \cd $(printf '../%.0s' {1..${1:-1}}) } alias u=up -## zoxide if [[ -v commands[zoxide] ]] { eval "$(zoxide init zsh)" alias cd=z } -## git -alias ga='git add' -alias gdh='git diff HEAD' ### hooks autoload -Uz add-zsh-hook @@ -287,35 +316,6 @@ case $OSTYPE; in function vol {} esac -### modules & styles -## vcs -zstyle ':vcs_info:*' enable git -#zstyle ':vcs_info:git*' check-for-changes true #too slow -zstyle ':vcs_info:git*:dotfiles' check-for-changes true -zstyle ':vcs_info:git*' check-for-staged-changes true -autoload -Uz vcs_info - -## compinit -zstyle ':completion:*' auto-description '[arg] %d' -zstyle ':completion:*' expand suffix -zstyle ':completion:*' format '# %d' -zstyle ':completion:*' group-name '' -zstyle ':completion:*' ignore-parents parent -zstyle ':completion:*' insert-unambiguous false -zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS} -zstyle ':completion:*' list-prompt '%B%i%b' -zstyle ':completion:*' list-suffixes true -zstyle ':completion:*' matcher-list '' 'm:{[:lower:]}={[:upper:]}' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]} r:|[._-]=* r:|=*' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]} l:|=* r:|=*' -zstyle ':completion:*' menu select=1 -zstyle ':completion:*' original false -zstyle ':completion:*' select-prompt '%B%l%b' -zstyle ':completion:*' verbose true -autoload -Uz compinit -cache=${XDG_CACHE_HOME:-~/.cache}/zsh -[[ -d $cache ]] || mkdir -p $cache -compinit -d $cache/.zcompdump -unset cache - ### prompt autoload -Uz promptinit && promptinit prompt arrows