2
0
mirror of https://github.com/webgefrickel/dotfiles synced 2024-11-19 03:25:33 +00:00
steffen-dotfiles/zshrc
2016-12-19 22:30:25 +01:00

85 lines
2.1 KiB
Bash

# Load the functions, aliases, function etc.
for file in ~/dotfiles/zsh/{exports,aliases,functions}; do
[ -r "$file" ] && source "$file"
done
unset file
# a nice prompt
autoload -U promptinit; promptinit
prompt pure
# completions
autoload -U compinit && compinit -C
autoload bashcompinit && bashcompinit
# autocomplete for the git alias
compdef g=git
compdef gf=git-flow
# case-insensitive (all),partial-word and then substring completion
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' 'r:|[._-]=* r:|=*' 'l:|=* r:|=*'
unsetopt menu_complete # do not autoselect the first completion entry
unsetopt flowcontrol
setopt auto_menu # show completion menu on succesive tab press
setopt complete_in_word
setopt always_to_end
# history settings
if [ -z $HISTFILE ]; then
HISTFILE=$HOME/.zsh_history
fi
HISTSIZE=10000
SAVEHIST=10000
bindkey '\e[A' history-beginning-search-backward
bindkey '\e[B' history-beginning-search-forward
# easy vim/terminal switch
zle -N fancy-ctrl-z
bindkey '^Z' fancy-ctrl-z
setopt append_history
setopt extended_history
setopt hist_expire_dups_first
setopt hist_ignore_dups # ignore duplication command history list
setopt hist_ignore_space
setopt hist_verify
setopt inc_append_history
setopt share_history # share command history data
# smart urls
autoload -U url-quote-magic
zle -N self-insert url-quote-magic
# jobs
setopt long_list_jobs
# source some zsh plugins
source $HOME/dotfiles/zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source $HOME/dotfiles/zsh/zsh-completions/zsh-completions.plugin.zsh
# nice dircolors for ls
export CLICOLOR=1
export LSCOLORS=gxBxhxDxfxhxhxhxhxcxcx
# nvm
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
# rbenv
eval "$(rbenv init -)"
# fzf
if [[ ! "$PATH" == */usr/local/opt/fzf/bin* ]]; then
export PATH="$PATH:/usr/local/opt/fzf/bin"
fi
if [[ ! "$MANPATH" == */usr/local/opt/fzf/man* && -d "/usr/local/opt/fzf/man" ]]; then
export MANPATH="$MANPATH:/usr/local/opt/fzf/man"
fi
[[ $- == *i* ]] && source "/usr/local/opt/fzf/shell/completion.zsh" 2> /dev/null
source "/usr/local/opt/fzf/shell/key-bindings.zsh"