summaryrefslogblamecommitdiff
path: root/zshrc
blob: dcc82425972cac7fa0d706799ec6e949ff258b94 (plain) (tree)
1
2
3
4
5
6
7
8
9



                    



                        
 



                                                                       


                                                                                          













                                                                                








                                                                               








                                                                  




                                                                                                                                             
autoload -U compinit
compinit -C

HISTFILE=~/.zhistory
SAVEHIST=1000
setopt append_history
setopt hist_ignore_space
setopt share_history

setopt auto_menu         # show completion menu on successive tab press
setopt complete_in_word
setopt always_to_end

zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' 'r:|[._-]=* r:|=*' 'l:|=* r:|=*'

autoload -U select-word-style
autoload -U colors && colors

autoload -Uz vcs_info add-zsh-hook
setopt prompt_subst

add-zsh-hook precmd vcs_info
# Enable checking for (un)staged changes, enabling use of %u and %c
zstyle ':vcs_info:*' check-for-changes true
# Set custom strings for an unstaged vcs repo changes (*) and staged changes (+)
zstyle ':vcs_info:*' unstagedstr "%F{yellow}●%f"
zstyle ':vcs_info:*' stagedstr   "%F{green}●%f"
# Set the format of the Git information for vcs_info
zstyle ':vcs_info:git:*' formats       " (%b%c%u)"
zstyle ':vcs_info:git:*' actionformats " (%b|%a%u%c)"

# Print timing statistics for everything which takes longer than 5 seconds of
# user + system time ('sleep 6' does not work because of 0% user/system time!).
REPORTTIME=5

# Explicitly select Emacs line editing mode (independent of zsh’s best guess
# based on EDITOR/VISUAL).
bindkey -e

PROMPT='%K{cyan}%F{black}%m%k%f %~%F{red}${vcs_info_msg_0_}%f %# '

# For tramp (emacs).
if [ "$TERM" = "dumb" ]; then
  unset PROMPT
  PS1='$ '
  unsetopt zle
fi

# The next line updates PATH for the Google Cloud SDK.
if [ -f '/home/fcuny/workspace/google-cloud-sdk/path.zsh.inc' ]; then . '/home/fcuny/workspace/google-cloud-sdk/path.zsh.inc'; fi

# The next line enables shell command completion for gcloud.
if [ -f '/home/fcuny/workspace/google-cloud-sdk/completion.zsh.inc' ]; then . '/home/fcuny/workspace/google-cloud-sdk/completion.zsh.inc'; fi