#pragma section-numbers off このままだとうまく動作しないかも。。 {{{ # ~/.zshrc # $Id$ # #----------------------------------------------------------------- # 基本設定 #----------------------------------------------------------------- WORDCHARS="*?_-.[]~=&;\!#$%^(){}<>" HISTSIZE=4096 HISTFILE=/Users/sakito/var/zsh/zsh_history SAVEHIST=4096 umask 022 #----------------------------------------------------------------- # 環境変数 #----------------------------------------------------------------- # setup shell dir SHELL=/usr/local/bin/zsh export SHELL PREFIX=/usr/local export PREFIX #EXEC_PREFIX=/usr/local/bin #export EXEC_PREFIX # fink setting source /sw/bin/init.sh # set path PATH=/usr/local/bin:/bin:/usr/local/sbin:$PATH:/usr/sbin export PATH export TMP="$HOME/tmp" export EDITOR="/usr/local/bin/emacsclient" #export LANG=ja_jp.EUC #export LC_all=ja_jp.EUC #export JLESSCHARSET=japanese-sijs #export LESSCHARSET=japanese-sjis export LESS='-c -m -x4' export PAGER=less #CLASSPATH export CLASSPATH=${CLASSPATH}:. #CC setting export CC=cc TZ=JST export TZ # set man command env. export MANPATH=/usr/bin/man:/usr/local/man:/usr/share/man:/sw/man export MANPAGER=/usr/bin/less export MANWIDTH=80 # configure less for our prefss ... export LESS="-isnMCd" export LESSCHARSET="latin1" export LESSCHARDEF=8bcccbcc18b95.33b33b. export LESSBINFMT='*n-' # for cvs CVSROOT=$HOME/var/cvs export CVSROOT #----------------------------------------------------------------- # 非端末プロセスなら終了 #----------------------------------------------------------------- # # スクリプトとして起動された場合、ここでプロセスが終了する。 # [ $#PROMPT -eq 0 -o $#TERM -eq 0 ] && return #----------------------------------------------------------------- # プロンプト #----------------------------------------------------------------- # ユーザ名・ホスト名を左プロンプト表示、カレントディレクトリ名は # 右プロンプト表示する。日本語のディレクトリ名も表示できるように、 # precmd() を使って毎回設定しなおしてみた。 # #PROMPT="%B%n@%m[%(?.%!.ERROR:%?)]%b%% " #precmd() { RPROMPT="[$PWD]" } PROMPT="[%(?.%!.ERROR:%?)]%b%% " precmd() { RPROMPT="[$PWD]" } #----------------------------------------------------------------- # シェル変数設定 #----------------------------------------------------------------- # # シェルの基本的な動作を変更するスイッチは、ほぼシステム非依存。 # 基本的なシェル変数と動作設定は以下の通り。 # setopt always_last_prompt # 無駄なスクロールを避ける setopt append_history # ヒストリファイルに追加 setopt auto_list # 自動的に候補一覧を表示 setopt auto_menu # 自動的にメニュー補完する #setopt auto_name_dirs # "~$var" でディレクトリにアクセス setopt auto_param_keys # 変数名を補完する setopt auto_remove_slash # 接尾辞を削除する setopt bang_hist # csh スタイルのヒストリ置換 setopt brace_ccl # {a-za-z} をブレース展開 setopt cdable_vars # 先頭に "~" を付けたもので展開 setopt complete_in_word # 語の途中でもカーソル位置で補完 setopt complete_aliases # 補完動作の解釈前にエイリアス展開 setopt extended_glob # "#", "~", "^" を正規表現として扱う setopt extended_history # 開始/終了タイムスタンプを書き込み #setopt hist_verify # ヒストリ置換を実行前に表示 #setopt glob_dots # "*" にドットファイルをマッチ setopt hist_ignore_dups # 直前のヒストリと全く同じとき無視 setopt hist_ignore_space # 先頭がスペースで始まるとき無視 setopt list_types # ファイル種別を表す記号を末尾に表示 setopt magic_equal_subst # "val=expr" でファイル名展開 #setopt menu_complete # 一覧表示せずに、すぐに最初の候補を補完 setopt multios # 複数のリダイレクトやパイプに対応 setopt numeric_glob_sort # ファイル名を数値的にソート setopt noclobber # リダイレクトで上書き禁止 #setopt no_beep # ベルを鳴らさない #setopt no_check_jobs # シェル終了時にジョブをチェックしない setopt no_flow_control # C-s/C-q によるフロー制御をしない setopt no_hup # 走行中のジョブにシグナルを送らない setopt no_list_beep # 補完の時にベルを鳴らさない setopt notify # ジョブの状態をただちに知らせる setopt prompt_subst # プロンプト内で変数展開 setopt pushd_ignore_dups # 重複するディレクトリを無視 setopt rm_star_silent # "rm * " を実行する前に確認 setopt sun_keyboard_hack # 行末の "` (バッククウォート)" を無視 setopt sh_word_split # 変数内の文字列分解のデリミタ setopt histallowclobber # ">" を ">!" としてヒストリ保存 setopt printeightbit # 8ビットクリーン表示 (Zsh 4.3以上で正常動作?) # 補完時に無視するファイルの種類 fignore=(.o .dvi .aux .log .toc - \~) #----------------------------------------------------------------- # エイリアス設定 #----------------------------------------------------------------- # # UNIX コマンドと Windows 固有のシステムコマンドと区別するために # 絶対パス指定したり、よく使うコマンドに短い別名を登録したりとか。 # 引数をとるエイリアスは、簡易関数で定義する必要がある点に注意。 # # tcsh% alias m "mule !* &" → zsh% m() { mule $* & } # alias ls='ls -Fa' alias ll='ls -lF' alias h='history 20' alias more='less' alias rm='echo not' #alias which='type -path' alias rehash='hash -r' #alias rmdir='rm -rf' alias s=source alias x=start alias j=jobs alias reload="source ~/.zshrc" #----------------------------------------------------------------- # キーバインド設定 #----------------------------------------------------------------- # # ほぼシステム非依存なので、特に変更する必要なし。 # bindkey -e bindkey '^/' undo bindkey '^g' undo bindkey '^q' push-line bindkey '^w' kill-region bindkey '^i' expand-or-complete bindkey '^d' delete-char-or-list bindkey '^j' reverse-menu-complete bindkey '^n' history-search-forward bindkey '^p' history-search-backward bindkey '^r' copy-prev-word bindkey ' ' magic-space #----------------------------------------------------------------- # 補完ルール設定 #----------------------------------------------------------------- # # 必要に応じて追加すると良い。基本的な設定は以下の通り。 # compctl -D -f compctl -C -c -f + -E -q -S '=' compctl -caF whence which compctl -b bindkey compctl -o setopt unsetopt compctl -a shift compctl -F unfunction compctl -a unalias alias compctl -e disable compctl -d enable compctl -v typeset vared unset export compctl -v unset typeset declare vared readonly integer compctl -g '(|.)*(-/)' cd chdir dirs pushd dircmp compctl -g '(|.)*(-/)' rd mdcd mkdir compctl -g '*(/)' rmdir dircmp compctl -j -P % fg bg wait jobs disown compctl -l '' -x 'p[1]' -f -- . source compctl -l '' nohup exec nice eval trap time fep compctl -l '' -x 'p[1]' -b -- builtin compctl -f -x 'r[-*d,^*]' -g '(|.)*.(gz|z|z) (|.)*(-/)' + -g '(|.)*(-/)' -- gzip compctl -g '*.gz *.z *.z' + -g '(|.)*(-/)' gunzip compctl -g '*.f' + -g '(|.)*(-/)' melt fcat compctl -g '*.z' + -g '(|.)*(-/)' uncompress zmore compctl -f -x 'p[1,2]' -g "*(-/) *.[ll][zz][hh] *.[ee][xx][ee]" -- lha lhp compctl -f -x 'p[1]' -g "*(-/) *.[aa][rr][cc]" -- arc compctl -f -x 'p[1,2]' -g "*(-/) *.[zz][ii][pp]" -- zip unzip compctl -f -x 'p[1,2]' -g "*(-/) *.[aa][rr][jj]" -- unarj compctl -g "*(-/) *.(z|z|gz)" zmore zless zgrep zcmp compctl -f -x \ 'p[1]' -k '(tvzf cvzf xvzf)' - \ 's[--]' -k "(atime-preserve remove-files exclude help)" - \ 'c[-1,*z*] p[2]' -g "*.tar.(z|z|gz) *.taz *.tgz (|.)*(-/)" - \ 'c[-1,*f*] p[2]' -g "*.tar (|.)*(-/)" -- gtar tar #----------------------------------------------------------------- # システム別設定 #----------------------------------------------------------------- #----------------------------------------------------------------- # ローカル設定の読み込み #----------------------------------------------------------------- [ -f ~/.zshrc.local ] && source ~/.zshrc.local echo Now zsh version $ZSH_VERSION start! # 端末をクリアして終了 #builtin cls # end of ~/.zshrc #================================================================= }}} ---- CategoryUnix