mirror of
				git://git.code.sf.net/p/zsh/code
				synced 2025-10-31 06:00:54 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			162 lines
		
	
	
	
		
			5.2 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			162 lines
		
	
	
	
		
			5.2 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #
 | |
| # Example .zshrc file for zsh 4.0
 | |
| #
 | |
| # .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() { typeset -x "${1}${1:+=}${(@)argv[2,$#]}" }  # csh compatibility
 | |
| freload() { while (( $# )); do; unfunction $1; autoload -U $1; shift; done }
 | |
| 
 | |
| # Where to look for autoloaded function definitions
 | |
| fpath=($fpath ~/.zfunc)
 | |
| 
 | |
| # Autoload all shell functions from all directories in $fpath (following
 | |
| # symlinks) 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). $fpath should not be empty for this to work.
 | |
| for func in $^fpath/*(N-.x:t); autoload $func
 | |
| 
 | |
| # automatically remove duplicates from these arrays
 | |
| typeset -U path cdpath fpath manpath
 | |
| 
 | |
| # 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
 | |
| 
 | |
| # Hosts to use for completion (see later zstyle)
 | |
| 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/share/zsh/$ZSH_VERSION/help  # directory for run-help function to find docs
 | |
| 
 | |
| MAILCHECK=300
 | |
| HISTSIZE=200
 | |
| DIRSTACKSIZE=20
 | |
| 
 | |
| # Watch for my friends
 | |
| #watch=( $(<~/.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
 | |
| 
 | |
| # Autoload zsh modules when they are referenced
 | |
| zmodload -a zsh/zpty zpty
 | |
| zmodload -a zsh/zprof zprof
 | |
| zmodload -ap zsh/mapfile mapfile
 | |
| # stat(1) is now commonly an external command, so just load zstat
 | |
| zmodload -aF zsh/stat b:zstat
 | |
| 
 | |
| # Some nice key bindings
 | |
| #bindkey '^X^Z' universal-argument ' ' magic-space
 | |
| #bindkey '^X^A' vi-find-prev-char-skip
 | |
| #bindkey '^Xa' _expand_alias
 | |
| #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 expansion on space
 | |
| bindkey '^I' complete-word # complete on tab, leave expansion to _expand
 | |
| 
 | |
| # Setup new style completion system. To see examples of the old style (compctl
 | |
| # based) programmable completion, check Misc/compctl-examples in the zsh
 | |
| # distribution.
 | |
| autoload -Uz compinit
 | |
| compinit
 | |
| 
 | |
| # Completion Styles
 | |
| 
 | |
| # list of completers to use
 | |
| zstyle ':completion:*::::' completer _expand _complete _ignored _approximate
 | |
| 
 | |
| # allow one error for every three characters typed in approximate completer
 | |
| zstyle -e ':completion:*:approximate:*' max-errors \
 | |
|     'reply=( $(( ($#PREFIX+$#SUFFIX)/3 )) numeric )'
 | |
|     
 | |
| # insert all expansions for expand completer
 | |
| zstyle ':completion:*:expand:*' tag-order all-expansions
 | |
| 
 | |
| # formatting and messages
 | |
| zstyle ':completion:*' verbose yes
 | |
| zstyle ':completion:*:descriptions' format '%B%d%b'
 | |
| zstyle ':completion:*:messages' format '%d'
 | |
| zstyle ':completion:*:warnings' format 'No matches for: %d'
 | |
| zstyle ':completion:*:corrections' format '%B%d (errors: %e)%b'
 | |
| zstyle ':completion:*' group-name ''
 | |
| 
 | |
| # match uppercase from lowercase
 | |
| zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
 | |
| 
 | |
| # offer indexes before parameters in subscripts
 | |
| zstyle ':completion:*:*:-subscript-:*' tag-order indexes parameters
 | |
| 
 | |
| # command for process lists, the local web server details and host completion
 | |
| #zstyle ':completion:*:processes' command 'ps -o pid,s,nice,stime,args'
 | |
| #zstyle ':completion:*:urls' local 'www' '/var/www/htdocs' 'public_html'
 | |
| zstyle '*' hosts $hosts
 | |
| 
 | |
| # Filename suffixes to ignore during completion (except after rm command)
 | |
| zstyle ':completion:*:*:(^rm):*:*files' ignored-patterns '*?.o' '*?.c~' \
 | |
|     '*?.old' '*?.pro'
 | |
| # the same for old style completion
 | |
| #fignore=(.o .c~ .old .pro)
 | |
| 
 | |
| # ignore completion functions (until the _ignored completer)
 | |
| zstyle ':completion:*:functions' ignored-patterns '_*'
 |