82 lines
2.8 KiB
Bash
82 lines
2.8 KiB
Bash
# compinit
|
|
autoload -Uz compinit
|
|
compinit -d $XDG_CACHE_HOME/zsh/compdump
|
|
|
|
# autosuggestions
|
|
source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
|
|
|
|
# history
|
|
mkdir -p "$XDG_CACHE_HOME/zsh" &>/dev/null
|
|
export SAVEHIST=1048576
|
|
export HISTSIZE=1048576
|
|
export HISTFILE="$XDG_CACHE_HOME/zsh/history"
|
|
setopt inc_append_history
|
|
|
|
# libraries
|
|
source $OML/history.zsh
|
|
source $OML/completion.zsh
|
|
source $OML/directories.zsh
|
|
|
|
# plugins
|
|
source $OMP/command-not-found/command-not-found.plugin.zsh
|
|
source $OMP/extract/extract.plugin.zsh
|
|
source $OMP/systemd/systemd.plugin.zsh
|
|
source $OMP/fzf/fzf.plugin.zsh
|
|
|
|
# plugins (self)
|
|
source /usr/share/zsh/plugins/fzf-tab/fzf-tab.zsh
|
|
source /usr/share/zsh/plugins/fzf-marks/fzf-marks.zsh
|
|
source /usr/share/zsh/plugins/evalcache/evalcache.zsh
|
|
source /usr/share/zsh/plugins/colorize/colorize.zsh
|
|
source /usr/share/zsh/plugins/titles/titles.zsh
|
|
|
|
# eval stuff
|
|
_evalcache zoxide init zsh
|
|
_evalcache dircolors -b /usr/share/LS_COLORS/LS_COLORS
|
|
_evalcache keychain --dir "$XDG_CACHE_HOME/keychain" --eval --quiet id_rsa
|
|
_evalcache starship init zsh
|
|
#_evalcache oh-my-posh init zsh
|
|
_evalcache atuin init zsh
|
|
_evalcache navi widget zsh
|
|
|
|
# aliases
|
|
alias ls='exa'
|
|
alias l='exa -al --color=always --group-directories-first'
|
|
alias cat='bat'
|
|
alias cd='z'
|
|
alias grep='rg'
|
|
alias find='fd'
|
|
|
|
# make rm, cp and mv safer
|
|
alias rm='rm -i'
|
|
alias cp='cp -i'
|
|
alias mv='mv -i'
|
|
|
|
# misc aliases
|
|
alias tree='tree -a -I .git'
|
|
alias https='http --default-scheme=https'
|
|
alias termbin="nc termbin.com 9999"
|
|
alias ktheme='kitty +kitten themes --reload-in=all'
|
|
if (( ${+commands[nvim]} )); then alias vim="nvim"; fi
|
|
|
|
# key bindings
|
|
run_ranger () { echo; ranger < $TTY; zle redisplay }
|
|
zle -N run_ranger
|
|
bindkey '^f' run_ranger
|
|
|
|
# use known_hosts for completion
|
|
zstyle -e ':completion:*:(ssh|scp|sftp|rsh|rsync):hosts' hosts 'reply=(${=${${(f)"$(cat {/etc/ssh_,~/.ssh/known_}hosts(|2)(N) /dev/null)"}%%[# ]*}//,/ })'
|
|
|
|
# order stuff
|
|
zstyle ':completion:*:(scp|ssh):*' tag-order 'hosts:-host:host hosts:-domain:domain hosts:-ipaddr:ip\ address *'
|
|
zstyle ':completion:*:scp:*' group-order users files all-files hosts-domain hosts-host hosts-ipaddr
|
|
zstyle ':completion:*:ssh:*' group-order hosts-domain hosts-host users hosts-ipaddr
|
|
|
|
# ignored patterns
|
|
zstyle ':completion:*:*:*:users' ignored-patterns '*'
|
|
zstyle ':completion:*:*:*:hosts-host' ignored-patterns '*(.|:)*' loopback ip6-loopback localhost localhost4 localhost6 ip6-localhost broadcasthost
|
|
zstyle ':completion:*:*:*:hosts-domain' ignored-patterns '<->.<->.<->.<->' '^[-[:alnum:]]##(.[-[:alnum:]]##)##' '*@*' '*localdomain*' '*.eeleater.org' '*.local' '*.hbz-nrw.de'
|
|
zstyle ':completion:*:*:*:hosts-ipaddr' ignored-patterns '^(<->.<->.<->.<->|(|::)([[:xdigit:].]##:(#c,2))##(|%*))' '127.0.0.<->' '255.255.255.255' '::1' 'fe80::*'
|
|
|
|
# syntax highlighting
|
|
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|