# 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