summaryrefslogblamecommitdiffstats
path: root/.zshrc
blob: 0181399dafe250223f12f4ea427506ba4124706f (plain) (tree)
1
2
3
4
5
6
7
8
9

                                         


         



                                    







                                                               
                                                





                                                    
                           























                                                                                                   
                               













                                                         

                                  
                      
                                               
 

                                          




                                         

                                                                        
# ~/.zshrc configuration ~~ rgoncalves.se


set -o vi

for cprofile in $HOME/.cprofile*; do
	. "${cprofile}"
done

precmd() {
	vcs_info
}

# keybinds
autoload -U history-search-end
zle -N history-beginning-search-backward-end history-search-end
zle -N history-beginning-search-forward-end history-search-end
bindkey '^R' history-incremental-search-backward
bindkey "^[[A" history-beginning-search-backward-end
bindkey "^[[B" history-beginning-search-forward-end
bindkey "^[[1;5C" forward-word
bindkey "^[[1;5D" backward-word
bindkey "\[[H" beginning-of-line
bindkey "\[[F" end-of-line
bindkey "\e[3~" delete-char
bindkey '^[[Z' reverse-menu-complete
zstyle ':completion:*' completer _complete
zstyle ':completion:*' matcher-list '' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]}' '+l:|=* r:|=*'
autoload -Uz compinit
compinit -u

# history
HISTSIZE=1000
HISTFILE=~/.zsh_history
SAVEHIST=1000
HISTDUP=erase
setopt INC_APPEND_HISTORY
setopt HIST_IGNORE_ALL_DUPS

# prompt
setopt PROMPT_SUBST
_hostname="@${HOST}"
_user="${USER}"
_separator=" "
_prompt="%%"
_dir="%~"
_color=002

autoload -Uz vcs_info
zstyle ':vcs_info:*' enable svn
zstyle ':vcs_info:*' enable git
zstyle ':vcs_info:*' get-revision true
zstyle ':vcs_info:*' check-for-changes true
zstyle ':vcs_info:*' stagedstr "●"
zstyle ':vcs_info:*' unstagedstr "+"
zstyle ":completion:*" menu select
zstyle ':vcs_info:git*' formats "%F{$_color} ▒ %b %u%c"
vcs_info

PROMPT="${_user}%F{$_color}${_hostname}:"
PROMPT="${PROMPT}%F{015}${_dir}"
PROMPT="${PROMPT}${_separator}${_prompt}${_separator}%f"
RPROMPT='${vcs_info_msg_0_}'

# pyenv
# export PYENV_ROOT="$HOME/.pyenv"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init - 2>/dev/null &)"

(cat ~/.cache/dot/sequences 2>/dev/null &)
# clear

if [ -z "${SSH_AUTH_SOCK}" ]; then
	eval $(ssh-agent) >/dev/null 2>&1
	ssh-add -k >/dev/null 2>&1
fi

command -v scw >/dev/null && eval "$(scw autocomplete script shell=zsh)"
remember that computers suck.