dotfiles/zshrc

66 lines
1.6 KiB
Bash

#
# ~/.zshrc
#
# User specific aliases and functions
[ -f "${HOME}/.zshrc_local" ] && source "${HOME}/.zshrc_local"
#force_color_prompt=yes
case "$TERM" in
xterm-color|*-256color) color_prompt=yes;;
esac
if [ -n "$force_color_prompt" ]; then
# 'tput setaf 1' attempts to set foreground color using ANSI escape
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
color_prompt=yes
else
color_prompt=
fi
fi
# PS1 can set '%1~' instead of '%~' to only show the last dirname part
if [ "$color_prompt" = yes ]; then
PS1='%B%F{green}%n@%m%F{white}%b:%B%F{blue}%~%b%F{white}%f$ '
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors \
&& eval "$(dircolors -b ~/.dircolors)" \
|| eval "$(dircolors -b)"
alias ls='ls --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
else
PS1='%n@%m:%~$ '
fi
# continuation lines
PS2='> '
# interactive with (select)
PS3='#? '
# tracing scripts (set -x)
PS4='+ '
unset color_prompt force_color_prompt
# history
setopt appendhistory extendedhistory sharehistory
setopt histignoredups histignorespace
alias history="fc -li"
HISTSIZE=1000
SAVEHIST=2000
HISTFILE=~/.zsh_history
# completion system
autoload -Uz compinit
compinit
# match . files with tab complete
setopt globdots
# man zshoptions
setopt NO_BEEP NO_AUTO_LIST BASH_AUTO_LIST NO_MENU_COMPLETE NO_AUTO_MENU
unsetopt ALWAYS_LAST_PROMPT
# man zshmodules, zshcompsys
zstyle ':completion:*' group-name ''
zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}
zstyle ':completion:*' list-colors ''
zstyle ':completion:*' use-compctl false