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 | |
---|
20 | ## プロンプト |
---|
21 | local C_ROOT="%{[31m%}" # 31: red |
---|
22 | local C_LOCAL="%{[36m%}" # 36: cyan |
---|
23 | local C_REMOTE="%{[35m%}" # 35: magenta |
---|
24 | local C_RESET="%{[m%}" |
---|
25 | case ${UID} in |
---|
26 | 0) |
---|
27 | PROMPT="${C_ROOT}%n@%m(%h%)${C_RESET}# " |
---|
28 | PROMPT2="%_> " |
---|
29 | RPROMPT="[%~]" |
---|
30 | SPROMPT="%r is correct? [n,y,a,e]: " |
---|
31 | [ -n "${REMOTEHOST}${SSH_CONNECTION}" ] && |
---|
32 | PROMPT="${C_ROOT}%n@%B%m%b(%h%)${C_RESET}# " |
---|
33 | ;; |
---|
34 | *) |
---|
35 | PROMPT="${C_LOCAL}%n(%h%)${C_RESET}%% " |
---|
36 | PROMPT2="%_> " |
---|
37 | RPROMPT="[%~]" |
---|
38 | SPROMPT="%r is correct? [n,y,a,e]: " |
---|
39 | [ -n "${REMOTEHOST}${SSH_CONNECTION}" ] && |
---|
40 | PROMPT="${C_REMOTE}%n@%B%m%b(%h%)${C_RESET}%% " |
---|
41 | ;; |
---|
42 | esac |
---|
43 | # コマンド実行後は右プロンプトを消す |
---|
44 | setopt transient_rprompt |
---|
45 | |
---|
46 | ## タイトルバーに各種情報を表示 |
---|
47 | case "${TERM}" in |
---|
48 | kterm*|xterm) |
---|
49 | precmd() { |
---|
50 | echo -ne "\033]0;${LOGNAME}@${HOST%%.*}:${PWD}\007" |
---|
51 | } |
---|
52 | ;; |
---|
53 | esac |
---|
54 | |
---|
55 | ## 補完 |
---|
56 | autoload -U compinit |
---|
57 | compinit |
---|
58 | # ディレクトリ名を入力するだけで移動 |
---|
59 | #setopt auto_cd |
---|
60 | # 自動でpushd |
---|
61 | setopt auto_pushd |
---|
62 | # 重複するディレクトリはpushdしない |
---|
63 | setopt pushd_ignore_dups |
---|
64 | # 存在しないコマンド入力時に修正を提案 |
---|
65 | setopt correct |
---|
66 | # 補完候補リストを詰めて表示 |
---|
67 | setopt list_packed |
---|
68 | # 補完候補リスト表示時にビープ音を鳴らさない |
---|
69 | setopt nolistbeep |
---|
70 | |
---|
71 | ## 履歴 |
---|
72 | # 履歴ファイル |
---|
73 | HISTFILE=~/.zsh_history |
---|
74 | # メモリに保存する履歴の数 |
---|
75 | HISTSIZE=10000 |
---|
76 | # ファイルに保存する履歴の数 |
---|
77 | SAVEHIST=10000 |
---|
78 | # 同じコマンドを保存対象外とする |
---|
79 | setopt hist_ignore_dups |
---|
80 | # 複数のシェル間で履歴を共有する |
---|
81 | setopt share_history |
---|
82 | # historyコマンド自体は履歴に追加しない |
---|
83 | setopt hist_no_store |
---|
84 | # 余分な空白を除去して履歴に追加する |
---|
85 | setopt hist_reduce_blanks |
---|
86 | # スペースではじめたコマンドは履歴に追加しない |
---|
87 | #setopt hist_ignore_space |
---|
88 | |
---|
89 | # 履歴検索機能 |
---|
90 | autoload history-search-end |
---|
91 | zle -N history-beginning-search-backward-end history-search-end |
---|
92 | zle -N history-beginning-search-forward-end history-search-end |
---|
93 | bindkey "^P" history-beginning-search-backward-end |
---|
94 | bindkey "^N" history-beginning-search-forward-end |
---|
95 | |
---|
96 | ## Zshの挙動 |
---|
97 | # パスの最後に付けたスラッシュを勝手に除去させない |
---|
98 | setopt noautoremoveslash |
---|
99 | # aliasの場合もaliasを展開して補完対象を探したりする |
---|
100 | setopt complete_aliases |
---|
101 | |
---|
102 | # ~/.zshrc.localが存在すれば読み込む |
---|
103 | [ -f ~/.zshrc.local ] && source ~/.zshrc.local |
---|
104 | |
---|