zsh/.zshrc

79 lines
1.8 KiB
Bash

# Antigen Stuff
ADOTDIR="$HOME/.antigen"
[ ! -e "$ADOTDIR" ] && git clone https://github.com/zsh-users/antigen.git "$ADOTDIR"
source "$ADOTDIR/antigen.zsh"
antigen bundles <<EOBUNDLES
http://adamgoldsmith.name/cgit/zsh/fred-prompt.git prompt_fred_setup
zsh-users/zsh-syntax-highlighting
zsh-users/zsh-completions
zsh-users/zsh-history-substring-search
Eriner/zim modules/directory
Eriner/zim modules/git
Eriner/zim modules/history
Eriner/zim modules/input
Eriner/zim modules/utility
EOBUNDLES
antigen apply
# Command Specific Aliases
for i in $HOME/.aliases/command-specific/*
do
if hash $(basename $i) 2>/dev/null
then
source $i
fi
done
# General Aliases
source $HOME/.aliases/general
# Various Options
setopt CORRECT
CORRECT_IGNORE="_*"
zhighlighters=(main brackets)
stty -ixon #disable XON/XOFF, which breaks C-s
setopt no_share_history
#load fasd if it exists
hash fasd 2>/dev/null && eval "$(fasd --init auto)"
# Load run-help
unalias run-help
autoload run-help
# Auto start tmux if a remote connection
if [[ -z "$TMUX" && -z "$EMACS" && -z "$VIM" && -n "$SSH_TTY" ]]
then
# Attach only to the 'auto' session
exec tmux new-session -A -s 'auto'
fi
# History Substring Search bindings
bindkey '^[[5~' history-substring-search-up
bindkey '^[[6~' history-substring-search-down
# Expands ... to ../..
function expand-dot-to-parent-directory-path {
if [[ $LBUFFER = *.. ]]; then
LBUFFER+='/..'
else
LBUFFER+='.'
fi
}
zle -N expand-dot-to-parent-directory-path
bindkey -M emacs "." expand-dot-to-parent-directory-path
# Inserts 'sudo ' at the beginning of the line.
function prepend-sudo() {
if [[ "$BUFFER" != su(do|)\ * ]]; then
BUFFER="sudo $BUFFER"
(( CURSOR += 5 ))
fi
}
zle -N prepend-sudo
bindkey "^X^S" prepend-sudo
bindkey '^H' backward-kill-word