1
0
mirror of https://github.com/akelge/zsh synced 2025-07-03 13:09:07 +00:00

New version of zsh startup files:

- Supports Darwin AND Linux
- No more .zshrc.local
- New completion (BETA)
This commit is contained in:
2010-11-18 08:49:41 +00:00
parent e031a7efc9
commit 5b09568680
16 changed files with 223 additions and 165 deletions

171
zshrc
View File

@ -5,170 +5,31 @@
# options, key bindings, etc.
#
# Global Order: zshenv, zprofile, zshrc, zlogin
# $Id$
# $HeadURL$
setopt ALWAYS_TO_END
setopt APPEND_HISTORY
setopt AUTO_CD
setopt ALL_EXPORT
setopt AUTO_MENU
setopt AUTO_LIST
setopt AUTONAMEDIRS
setopt AUTO_PARAM_SLASH
setopt AUTO_REMOVE_SLASH
setopt AUTO_RESUME
# setopt CDABLE_VARS
setopt CORRECT
setopt FUNCTION_ARGZERO
setopt HIST_IGNORE_ALL_DUPS
setopt HIST_NO_STORE
setopt HIST_REDUCE_BLANKS
setopt LIST_TYPES
setopt LONG_LIST_JOBS
setopt MENU_COMPLETE
# setopt NO_AUTOLIST
setopt NO_BEEP
setopt NOHUP
setopt NOTIFY
setopt PATH_DIRS
setopt SHORT_LOOPS
umask 002
ulimit -c 0
## Vars used always
#
PATH="/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/local/sbin:/usr/sbin:/sbin:$HOME/bin:."
SAVEHIST=500
HISTFILE=~/.history
HISTSIZE=10000
LANG="it_IT.UTF-8"
TZ='Europe/Rome'
MIBS=all
LOGD=/var/log
KERNEL=`uname -s`
LIBRARY="/Network/Library/zsh.d"
KERNLIB="${LIBRARY}/${KERNEL}"
## If we are not interactive quit
[ -z "$PS1" ] && return
## Vars only for interactive sessions
EDITOR=vi
PYTHONSTARTUP=~/.pythonrc.py
LOGCHECK=30
REPORTTIME=15
WATCH=notme
WATCHFMT="%n %a %l (%m) at %t."
# Functions and aliases
function cdb {
cd `dirname $1`
function loadRC {
if [ -d $1 ]; then
for zshFile in $1/*; do
. $zshFile
done
fi
unset zshFile
}
alias ls='ls -F --color'
alias la='ls -A'
alias ll='ls -l'
alias lla='la -l'
alias dir='ls -l'
loadRC ${LIBRARY}
loadRC ${KERNLIB}
alias cls='/usr/bin/clear'
unset KERNEL
unset LIBRARY
unset KERNLIB
alias killall='killall -v'
alias dc=cd
alias les=less
alias mkdir='mkdir -p'
alias zap='rm -rf'
alias ftail='tail -f'
alias grep='grep --colour'
alias ns='host -t ns'
alias mx='host -t mx'
alias soa='host -t soa'
alias ptr='host -t ptr'
alias vi="vim "
# Start autocomplete
autoload -U compinit; compinit
# autoload -U compsys
# compctl -g "*(-/)" + -g ".*(-/)" cd
# Colorize terminal
autoload colors zsh/terminfo
if [[ "$terminfo[colors]" -ge 8 ]]; then
colors
fi
for color in RED GREEN YELLOW BLUE MAGENTA CYAN WHITE; do
eval PR_$color='%{$terminfo[bold]$fg[${(L)color}]%}'
eval PR_LIGHT_$color='%{$fg[${(L)color}]%}'
(( count = $count + 1 ))
done
PR_NO_COLOR="%{$terminfo[sgr0]%}"
#
# Useful under iTerm
bindkey "-e"
bindkey "\e[1~" beginning-of-line
bindkey "\e[4~" end-of-line
bindkey "\e[3~" delete-char
bindkey "\eOA" history-search-backward
bindkey "\eOB" history-search-forward
bindkey "\e[A" history-search-backward
bindkey "\e[B" history-search-forward
bindkey "\e[5D" backward-word
bindkey "\e[5C" forward-word
bindkey "" vi-backward-kill-word
# Setup PROMPT
if [ ${TERM[0,5]} = "xterm" ] || [ ${TERM} = "rxvt" ]; then
# We are on xterminal
PS1="%{]2;%n@%m:%.%}%{]1; %m:%. %}%B<%l> %~ %#%b "
else
# We are not on xterminal
PS1="%B[%l] %n@%m:%~ %#%b "
fi
# Setup LESS
for lp in lesspipe lesspipe.sh; do
LESSPIPE=`which $lp`
[ $? -eq 0 ] && eval `$LESSPIPE`
done
## make less colourful
LESS_TERMCAP_mb=$'\E[01;34m' # begin blinking
LESS_TERMCAP_md=$'\E[01;36m' # begin bold
LESS_TERMCAP_me=$'\E[0m' # end mode
LESS_TERMCAP_so=$'\E[01;47;34m' # begin standout-mode - info box
LESS_TERMCAP_se=$'\E[0m' # end standout-mode
LESS_TERMCAP_us=$'\E[04;32m' # begin underline
LESS_TERMCAP_ue=$'\E[0m' # end underline
LESS="-c -x4 -R -MM -PMFile\:?f%f:STDIN. ?BSize\:?B%B:Unk.?B\:?pb%pb\%:Unk.?B\:%i/%m"
LESSCHARSET=utf-8
READNULLCMD=/usr/bin/less
PAGER=/usr/bin/less
# Platform specific customizations
# Linux
if [ `uname -s` = "Linux" ]; then
eval `dircolors`
fi
# Darwin/OSX
# if [ `uname -s` = "Darwin" ]; then
if [ -d /Network/Library/zsh.d ]; then
for zshFile in /Network/Library/zsh.d/*; do
. $zshFile
done
fi
# Host specific customizations
# Local (per Host) customizations
for localDir in /etc/zsh /etc /usr/local/etc /usr/local/etc/zsh; do
if [ -f ${localDir}/zshrc.local ]; then
. ${localDir}/zshrc.local
fi
done
unset localDir
# User specific customizations
if [ -f ~/.zshrc.user ]; then
. ~/.zshrc.user
fi