2019-08-18 14:05:36 +02:00
|
|
|
# zmodload zsh/zprof
|
|
|
|
|
2019-08-18 02:07:17 +02:00
|
|
|
# https://github.com/sindresorhus/pure
|
|
|
|
autoload -U promptinit; promptinit
|
2019-08-19 00:37:26 +02:00
|
|
|
PURE_GIT_DOWN_ARROW=↓
|
|
|
|
PURE_GIT_UP_ARROW=↑
|
2019-08-18 02:07:17 +02:00
|
|
|
prompt pure
|
|
|
|
|
2019-08-19 00:37:26 +02:00
|
|
|
CASE_SENSITIVE="true"
|
2019-08-18 02:07:17 +02:00
|
|
|
DISABLE_UPDATE_PROMPT="true"
|
|
|
|
DISABLE_AUTO_TITLE="true"
|
|
|
|
ENABLE_CORRECTION="true"
|
2019-08-19 00:37:26 +02:00
|
|
|
|
|
|
|
# History
|
|
|
|
[ -z "$HISTFILE" ] && HISTFILE="$HOME/.zsh_history"
|
2019-08-18 02:07:17 +02:00
|
|
|
HIST_STAMPS="yyyy-mm-dd"
|
2019-08-19 00:37:26 +02:00
|
|
|
HISTSIZE=50000
|
|
|
|
SAVEHIST=10000
|
|
|
|
setopt extended_history
|
|
|
|
setopt hist_expire_dups_first
|
|
|
|
setopt hist_ignore_dups
|
|
|
|
setopt hist_ignore_space
|
|
|
|
setopt inc_append_history
|
|
|
|
setopt share_history
|
2019-08-18 02:07:17 +02:00
|
|
|
|
2019-08-19 00:37:26 +02:00
|
|
|
# Changing directories
|
|
|
|
setopt auto_cd
|
|
|
|
setopt auto_pushd
|
|
|
|
unsetopt pushd_ignore_dups
|
|
|
|
setopt pushdminus
|
|
|
|
|
|
|
|
# Completion
|
|
|
|
setopt auto_menu
|
|
|
|
setopt always_to_end
|
|
|
|
setopt complete_in_word
|
|
|
|
unsetopt flow_control
|
|
|
|
unsetopt menu_complete
|
|
|
|
zstyle ':completion:*:*:*:*:*' menu select
|
|
|
|
zstyle ':completion:*' matcher-list 'm:{a-zA-Z-_}={A-Za-z_-}' 'r:|=*' 'l:|=* r:|=*'
|
|
|
|
zstyle ':completion::complete:*' use-cache 1
|
|
|
|
zstyle ':completion::complete:*' cache-path $ZSH_CACHE_DIR
|
|
|
|
zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#) ([0-9a-z-]#)*=01;34=0=01'
|
2019-08-18 14:05:36 +02:00
|
|
|
|
2019-10-25 00:38:46 +02:00
|
|
|
# Highlight the current autocomplete option
|
|
|
|
zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}"
|
|
|
|
|
|
|
|
# Better SSH/SCP/Rsync Autocomplete
|
|
|
|
h=()
|
|
|
|
if [[ -r ~/.ssh/config ]]; then
|
|
|
|
h=($h ${${${(@M)${(f)"$(cat ~/.ssh/config)"}:#Host *}#Host }:#*[*?]*})
|
|
|
|
fi
|
|
|
|
if [[ -r ~/.ssh/known_hosts ]]; then
|
|
|
|
h=($h ${${${(f)"$(cat ~/.ssh/known_hosts{,2} || true)"}%%\ *}%%,*}) 2>/dev/null
|
|
|
|
fi
|
|
|
|
if [[ $#h -gt 0 ]]; then
|
|
|
|
zstyle ':completion:*:(ssh|scp|rsync|slogin):*' hosts $h
|
|
|
|
fi
|
|
|
|
|
|
|
|
# https://gist.github.com/ctechols/ca1035271ad134841284#gistcomment-2767420
|
|
|
|
autoload -Uz compinit
|
|
|
|
if [[ -n ~/.zcompdump(#qN.mh+24) ]]; then
|
|
|
|
compinit
|
|
|
|
touch ~/.zcompdump
|
|
|
|
else
|
|
|
|
compinit -C
|
|
|
|
fi
|
|
|
|
|
2019-08-19 00:37:26 +02:00
|
|
|
# Other
|
|
|
|
setopt prompt_subst
|
2019-08-18 02:07:17 +02:00
|
|
|
|
2019-08-19 00:37:26 +02:00
|
|
|
source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
|
|
|
source /usr/local/share/zsh-autosuggestions/zsh-autosuggestions.zsh
|
2019-10-25 00:38:46 +02:00
|
|
|
source <(kubectl completion zsh)
|
2019-08-18 14:05:36 +02:00
|
|
|
|
2019-10-25 00:38:46 +02:00
|
|
|
# zprof
|