[1126] | 1 | # ~/binをPATHに追加する |
---|
| 2 | #PATH=~/bin:$PATH |
---|
| 3 | #export PATH |
---|
| 4 | |
---|
| 5 | # alias |
---|
| 6 | alias ls='ls -F --color=auto' |
---|
| 7 | alias ll='ls -la --color=auto' |
---|
| 8 | alias la='ls -a --color=auto' |
---|
| 9 | alias eng='LANG=C LANGUAGE=C LC_ALL=C' |
---|
| 10 | |
---|
| 11 | # user file-creation mask |
---|
| 12 | umask 022 |
---|
| 13 | |
---|
| 14 | ## キーバインド |
---|
| 15 | # Emacs風キーバインド |
---|
| 16 | #bindkey -e |
---|
| 17 | # Vi風キーバインド |
---|
| 18 | #bindkey -v |
---|
| 19 | |
---|
[7310] | 20 | # vcs_info(プロンプト用) |
---|
| 21 | autoload -Uz add-zsh-hook |
---|
| 22 | autoload -Uz vcs_info |
---|
| 23 | zstyle ':vcs_info:*' formats '(%s)-[%b]' |
---|
| 24 | zstyle ':vcs_info:*' actionformats '(%s)-[%b|%a]' |
---|
| 25 | local VCS_INFORMATION="" |
---|
| 26 | |
---|
| 27 | function _precmd_load_vcs_info () { |
---|
| 28 | LANG=en_US.utf8 vcs_info |
---|
| 29 | psvar=() |
---|
| 30 | [[ -n "$vcs_info_msg_0_" ]] && psvar[1]="$vcs_info_msg_0_" |
---|
| 31 | } |
---|
| 32 | |
---|
| 33 | add-zsh-hook precmd _precmd_load_vcs_info |
---|
| 34 | |
---|
[1126] | 35 | ## プロンプト |
---|
| 36 | local C_ROOT="%{[31m%}" # 31: red |
---|
| 37 | local C_LOCAL="%{[36m%}" # 36: cyan |
---|
| 38 | local C_REMOTE="%{[35m%}" # 35: magenta |
---|
[7310] | 39 | local C_VCS_INFO="%{[34m%}" # 34: blue |
---|
[1126] | 40 | local C_RESET="%{[m%}" |
---|
| 41 | case ${UID} in |
---|
| 42 | 0) |
---|
| 43 | PROMPT="${C_ROOT}%n@%m(%h%)${C_RESET}# " |
---|
| 44 | PROMPT2="%_> " |
---|
| 45 | RPROMPT="[%~]" |
---|
| 46 | SPROMPT="%r is correct? [n,y,a,e]: " |
---|
| 47 | [ -n "${REMOTEHOST}${SSH_CONNECTION}" ] && |
---|
| 48 | PROMPT="${C_ROOT}%n@%B%m%b(%h%)${C_RESET}# " |
---|
| 49 | ;; |
---|
| 50 | *) |
---|
[7310] | 51 | PROMPT="${C_LOCAL}%n${C_VCS_INFO}%1v${C_RESET}%% " |
---|
[1126] | 52 | PROMPT2="%_> " |
---|
| 53 | RPROMPT="[%~]" |
---|
| 54 | SPROMPT="%r is correct? [n,y,a,e]: " |
---|
| 55 | [ -n "${REMOTEHOST}${SSH_CONNECTION}" ] && |
---|
[7310] | 56 | PROMPT="${C_REMOTE}%n@%B%m%b${C_VCS_INFO}%1v${C_RESET}%% " |
---|
[1126] | 57 | ;; |
---|
| 58 | esac |
---|
| 59 | # コマンド実行後は右プロンプトを消す |
---|
| 60 | setopt transient_rprompt |
---|
| 61 | |
---|
| 62 | ## タイトルバーに各種情報を表示 |
---|
| 63 | case "${TERM}" in |
---|
| 64 | kterm*|xterm) |
---|
| 65 | precmd() { |
---|
| 66 | echo -ne "\033]0;${LOGNAME}@${HOST%%.*}:${PWD}\007" |
---|
| 67 | } |
---|
| 68 | ;; |
---|
| 69 | esac |
---|
| 70 | |
---|
| 71 | ## 補完 |
---|
| 72 | autoload -U compinit |
---|
| 73 | compinit |
---|
| 74 | # ディレクトリ名を入力するだけで移動 |
---|
| 75 | #setopt auto_cd |
---|
| 76 | # 自動でpushd |
---|
| 77 | setopt auto_pushd |
---|
| 78 | # 重複するディレクトリはpushdしない |
---|
| 79 | setopt pushd_ignore_dups |
---|
| 80 | # 存在しないコマンド入力時に修正を提案 |
---|
| 81 | setopt correct |
---|
| 82 | # 補完候補リストを詰めて表示 |
---|
| 83 | setopt list_packed |
---|
| 84 | # 補完候補リスト表示時にビープ音を鳴らさない |
---|
| 85 | setopt nolistbeep |
---|
| 86 | |
---|
| 87 | ## 履歴 |
---|
| 88 | # 履歴ファイル |
---|
| 89 | HISTFILE=~/.zsh_history |
---|
| 90 | # メモリに保存する履歴の数 |
---|
| 91 | HISTSIZE=10000 |
---|
| 92 | # ファイルに保存する履歴の数 |
---|
| 93 | SAVEHIST=10000 |
---|
| 94 | # 同じコマンドを保存対象外とする |
---|
| 95 | setopt hist_ignore_dups |
---|
| 96 | # 複数のシェル間で履歴を共有する |
---|
| 97 | setopt share_history |
---|
| 98 | # historyコマンド自体は履歴に追加しない |
---|
| 99 | setopt hist_no_store |
---|
| 100 | # 余分な空白を除去して履歴に追加する |
---|
| 101 | setopt hist_reduce_blanks |
---|
| 102 | # スペースではじめたコマンドは履歴に追加しない |
---|
| 103 | #setopt hist_ignore_space |
---|
| 104 | |
---|
| 105 | # 履歴検索機能 |
---|
| 106 | autoload history-search-end |
---|
| 107 | zle -N history-beginning-search-backward-end history-search-end |
---|
| 108 | zle -N history-beginning-search-forward-end history-search-end |
---|
| 109 | bindkey "^P" history-beginning-search-backward-end |
---|
| 110 | bindkey "^N" history-beginning-search-forward-end |
---|
| 111 | |
---|
| 112 | ## Zshの挙動 |
---|
| 113 | # パスの最後に付けたスラッシュを勝手に除去させない |
---|
| 114 | setopt noautoremoveslash |
---|
| 115 | # aliasの場合もaliasを展開して補完対象を探したりする |
---|
| 116 | setopt complete_aliases |
---|
| 117 | |
---|
| 118 | # ~/.zshrc.localが存在すれば読み込む |
---|
| 119 | [ -f ~/.zshrc.local ] && source ~/.zshrc.local |
---|
| 120 | |
---|