zshrc晒し

zshの晒しです。

# ls の動作 (属性表示、色つき)。man ls 参照
if [ "$TERM" = "dumb" -o "$TERM" = "emacs" ]
then
  alias ls='/bin/ls -F'
else
  alias ls='/bin/ls -F --color=auto'
fi
# enable color support of ls
#  and also add handy aliases
if [ "$TERM" != "dumb" ]; then
   eval "`dircolors -b`"
   alias ls='ls --color=auto'
   #alias dir='ls --color=auto --format=vertical'
   #alias vdir='ls --color=auto --format=long'
fi

# ファイルを作るとき、どんな属性で作るか。man umask 参照
umask 022
# less の動作。man less 参照
LESS=-M
export LESS
if type /usr/bin/lesspipe &>/dev/null
then
  LESSOPEN="| /usr/bin/lesspipe '%s'"
  LESSCLOSE="/usr/bin/lesspipe '%s' '%s'"
  export LESSOPEN LESSCLOSE
fi

# 補間機能
autoload -U compinit
compinit
# Ctrl-D でログアウトするのを抑制する
setopt IGNORE_EOF
# グロッビングの拡張
setopt EXTENDED_GLOB
# cd するときに、自動でプッシュする
setopt AUTO_PUSHD
# 重複したPUSHDリストは消す
setopt PUSHD_IGNORE_DUPS
# ディレクトリ名だけで移動できる。
setopt auto_cd
# rm * を実行する前に確認される。
#setopt rmstar_wait
# Grip などGlibアプリケーション出力での文字化け防止
export G_FILENAME_ENCODING=@locale
# stack size
ulimit -s unlimited

# pop command
alias pd='popd'
alias gd='dirs -v; echo -n "select number: ";
 read newdir; cd +"$newdir" '

# Prompt decoration
local Cname=$'%{\e[0;0m%}'
local Cdict=$'%{\e[0;0m%}'
local Cprom=$'%{\e[0;34m%}'
local DEFAULT=$'%{\e[0;0m%}'
PROMPT="$Cname$USER$Cprom@%m:\
[$Cdict%~$Cprom]$DEFAULT$ "

# 履歴をファイルに保存する
HISTFILE=$HOME/.zsh_history
# メモリ内の履歴の数
HISTSIZE=100000
# 保存される履歴の数
SAVEHIST=100000
# 履歴ファイルに時刻を記録
setopt extended_history
# 全履歴の一覧を出力する
function history-all { history -E 1 }
# 履歴の共有
setopt share_history
# ヒストリの最初の空白を除く
setopt HIST_IGNORE_SPACE


export LANG=ja_JP.UTF-8
case "${TERM}" in
kterm*|xterm)
    precmd() {
        echo -ne "\033]0;${USER}@${HOST%%.*}:${PWD}\007"
    }
    ;;
esac


HISTFILE=~/.zsh_history
HISTSIZE=10000
SAVEHIST=10000
setopt hist_ignore_dups     # ignore duplication command history list
setopt share_history        # share command history data

bindkey -e

setopt correct

ネット上で晒されてたやつを元に適当にカスタマイズしていったのが
今の感じです。
うーん、てか殆どカスタマイズしてないかも。


zshは使い始めた理由がキーバインドvim風にしたいから。
でも、すぐにemacsキーバインドに戻しました。
理由:1行の編集にいちいちescとか押してられるかっ!
ctrl + aやctrl + e で最初や最後に戻ったり、
ctrl + kで途中から削ったりとか出来たほうが良いですね。


ソースとか複数行弄る時はvimでコマンド打った方が便利と思ってたり。


まあ、emacs使った事ないのでおいおい使ってみて、どっちが良いか判断しないとですねー。
ちなみに、会社のCTOや取締役の人はemacs派で、取締役の人が教えた新人含めて
3人がemacs派と思ってる。(正確に統計してないでつよ)
そして、知ってる限りでは5人がvim派。


いつもの様にemacs vs vimの派閥論争が始まるかと思えば主流はエクリプス(ぇー
GUIIDEは強い……。
(ちなみに窓上のエディタはvimじゃなくてサクラエディタ*1使ってます)

*1:名前で決めたわけじゃないですよ?