mirror of
git://git.code.sf.net/p/zsh/code
synced 2024-11-11 12:28:59 +01:00
125 lines
3.4 KiB
Bash
125 lines
3.4 KiB
Bash
#
|
|
# Generic .zshrc file for zsh 2.7
|
|
#
|
|
# .zshrc is sourced in interactive shells. It
|
|
# should contain commands to set up aliases, functions,
|
|
# options, key bindings, etc.
|
|
#
|
|
|
|
# THIS FILE IS NOT INTENDED TO BE USED AS /etc/zshrc, NOR WITHOUT EDITING
|
|
return 0 # Remove this line after editing this file as appropriate
|
|
|
|
# Search path for the cd command
|
|
cdpath=(.. ~ ~/src ~/zsh)
|
|
|
|
# Use hard limits, except for a smaller stack and no core dumps
|
|
unlimit
|
|
limit stack 8192
|
|
limit core 0
|
|
limit -s
|
|
|
|
umask 022
|
|
|
|
# Set up aliases
|
|
alias mv='nocorrect mv' # no spelling correction on mv
|
|
alias cp='nocorrect cp' # no spelling correction on cp
|
|
alias mkdir='nocorrect mkdir' # no spelling correction on mkdir
|
|
alias j=jobs
|
|
alias pu=pushd
|
|
alias po=popd
|
|
alias d='dirs -v'
|
|
alias h=history
|
|
alias grep=egrep
|
|
alias ll='ls -l'
|
|
alias la='ls -a'
|
|
|
|
# List only directories and symbolic
|
|
# links that point to directories
|
|
alias lsd='ls -ld *(-/DN)'
|
|
|
|
# List only file beginning with "."
|
|
alias lsa='ls -ld .*'
|
|
|
|
# Shell functions
|
|
setenv() { export $1=$2 } # csh compatibility
|
|
|
|
# Where to look for autoloaded function definitions
|
|
fpath=(~/.zfunc)
|
|
|
|
# Autoload all shell functions from all directories
|
|
# in $fpath that have the executable bit on
|
|
# (the executable bit is not necessary, but gives
|
|
# you an easy way to stop the autoloading of a
|
|
# particular shell function).
|
|
for dirname in $fpath
|
|
do
|
|
autoload $dirname/*(.x:t)
|
|
done
|
|
|
|
# Global aliases -- These do not have to be
|
|
# at the beginning of the command line.
|
|
alias -g M='|more'
|
|
alias -g H='|head'
|
|
alias -g T='|tail'
|
|
|
|
manpath=($X11HOME/man /usr/man /usr/lang/man /usr/local/man)
|
|
export MANPATH
|
|
|
|
# Filename suffixes to ignore during completion
|
|
fignore=(.o .c~ .old .pro)
|
|
|
|
# Hosts to use for completion
|
|
hosts=(`hostname` ftp.math.gatech.edu prep.ai.mit.edu wuarchive.wustl.edu)
|
|
|
|
# Set prompts
|
|
PROMPT='%m%# ' # default prompt
|
|
RPROMPT=' %~' # prompt for right side of screen
|
|
|
|
# Some environment variables
|
|
export MAIL=/var/spool/mail/$USERNAME
|
|
export LESS=-cex3M
|
|
export HELPDIR=/usr/local/lib/zsh/help # directory for run-help function to find docs
|
|
|
|
MAILCHECK=300
|
|
HISTSIZE=200
|
|
DIRSTACKSIZE=20
|
|
|
|
# Watch for my friends
|
|
#watch=($(cat ~/.friends)) # watch for people in .friends file
|
|
watch=(notme) # watch for everybody but me
|
|
LOGCHECK=300 # check every 5 min for login/logout activity
|
|
WATCHFMT='%n %a %l from %m at %t.'
|
|
|
|
# Set/unset shell options
|
|
setopt notify globdots correct pushdtohome cdablevars autolist
|
|
setopt correctall autocd recexact longlistjobs
|
|
setopt autoresume histignoredups pushdsilent noclobber
|
|
setopt autopushd pushdminus extendedglob rcquotes mailwarning
|
|
unsetopt bgnice autoparamslash
|
|
|
|
# Setup some basic programmable completions. To see more examples
|
|
# of these, check Misc/compctl-examples in the zsh distribution.
|
|
compctl -g '*(-/)' cd pushd
|
|
compctl -g '*(/)' rmdir dircmp
|
|
compctl -j -P % -x 's[-] p[1]' -k signals -- kill
|
|
compctl -j -P % fg bg wait jobs disown
|
|
compctl -A shift
|
|
compctl -caF type whence which
|
|
compctl -F unfunction
|
|
compctl -a unalias
|
|
compctl -v unset typeset declare vared readonly export integer
|
|
compctl -e disable
|
|
compctl -d enable
|
|
|
|
# Some nice key bindings
|
|
#bindkey '^X^Z' universal-argument ' ' magic-space
|
|
#bindkey '^X^A' vi-find-prev-char-skip
|
|
#bindkey '^Z' accept-and-hold
|
|
#bindkey -s '\M-/' \\\\
|
|
#bindkey -s '\M-=' \|
|
|
|
|
# bindkey -v # vi key bindings
|
|
|
|
bindkey -e # emacs key bindings
|
|
bindkey ' ' magic-space # also do history expansino on space
|