zsh:.zshの設定.zshrcファイルを公開
zshの設定ファイル.zshrcをメモ。いいと思う所があれば勝手に持って行ってやってください。
zshrcのソースコード
# LANG
# ================================================================
export LANG=ja_JP.UTF-8
case ${UID} in
0)
LANG=C
;;
esac
# History
# ================================================================
# HISTFILE=$HOME/.zsh-history
HISTFILE=/Users/administrator/Dropbox/Sync/dot/.zsh-history
HISTSIZE=100000
SAVEHIST=100000
# 直前と同じコマンドをヒストリに追加しない
setopt hist_ignore_dups
# ヒストリを共有
setopt share_history
# 補完機能
# ================================================================
autoload -U compinit
compinit
# Set prompt
# ================================================================
autoload colors
colors
case ${UID} in
0)
PROMPT="[%{${fg[red]}%}%n@%m%{${reset_color}%}] %{${fg[red]}%}#%{${reset_color}%} "
PROMPT2="%B%{${fg[red]}%}%_#%{${reset_color}%}%b "
SPROMPT="%B%{${fg[red]}%}%r is correct? [n,y,a,e]:%{${reset_color}%}%b "
RPROMPT="%{${fg[red]}%}[%/]%{${reset_color}%}"
;;
*)
PROMPT="%{${fg[red]}%}[%n@%m] %{${fg[red]}%}$%{${reset_color}%} "
PROMPT2="%B%{${fg[red]}%}%_$%{${reset_color}%}%b "
SPROMPT="%B%{${fg[red]}%}%r is correct? [n,y,a,e]:%{${reset_color}%}%b "
RPROMPT="%{${fg[red]}%}[%/]%{${reset_color}%}"
;;
esac
# Set title
# ================================================================
case "${TERM}" in
kterm*|xterm)
precmd() {
echo -ne "\033]0;${USER}@${HOST%%.*}:${PWD}\007"
}
;;
esac
# 色を使う
setopt prompt_subst
# 補完候補Color
#eval `dircolors`
export LSCOLORS=HxFxCxdxBxegedabagacad
export LS_COLORS='di=01;34:ln=01;35:so=01;32:ex=01;31:bd=46;34:cd=43;34:su=41;30:sg=46;30:tw=42;30:ow=43;30'
export ZLS_COLORS=$LS_COLORS
zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}
## 補完候補のカーソル選択を有効
zstyle ':completion:*:default' menu select=1
# 補完候補を詰めて表示
setopt list_packed
# ビープを鳴らさない
setopt nobeep
# ディレクトリ名で cd
setopt auto_cd
# cd 時に自動で push
setopt autopushd
# 同じディレクトリを pushd しない
setopt pushd_ignore_dups
# スペルチェック
setopt correct
## 出力時8ビットを通す
setopt print_eight_bit
# Path
# ================================================================
# homebrew brew doctor error回避
export PATH=/usr/local/bin:/usr/local/sbin:~/bin:$PATH
# MySQL
export PATH=$PATH:/usr/local/mysql/bin
# MacVim
export EDITOR=/Applications/MacVim.app/Contents/MacOS/Vim
alias vi='env LANG=ja_JP.UTF-8 /Applications/MacVim.app/Contents/MacOS/Vim "$@"'
alias vim='env LANG=ja_JP.UTF-8 /Applications/MacVim.app/Contents/MacOS/Vim "$@"'
# History
# ================================================================
# 重複履歴を無視
setopt hist_ignore_dups # ignore duplication command history list
setopt share_history # share command history data
# Alias
# ================================================================
alias showdot="defaults write com.apple.finder AppleShowAllFiles true"
alias hidedot="defaults write com.apple.finder AppleShowAllFiles false"
alias showlib="chflags nohidden ~/Library"
alias hidelib="chflags nohidden ~/Library"
#alias open='open .'
alias la='ls -a'
alias lf="ls -F"
alias ll='ls -l'
alias du="du -h"
alias df="df -h"
alias cl='clear'
alias flush='dscacheutil -flushcache'
alias apstart='sudo apachectl start'
alias apstop='sudo apachectl stop'
alias aprestart='sudo apachectl restart'
alias mystart='mysql.server start'
alias mystop='mysql.server stop'
alias myrestart='mysql.server restart'
alias prev='open -a Preview'
alias safari='open -a Safari'
alias xcode='open -a xcode'
# Function
# ================================================================
google() {
local str opt
if [ $# != 0 ]; then
for i in $*; do
# $strが空じゃない場合、検索ワードを+記号でつなぐ(and検索)
str="$str${str:++}$i"
done
opt='search?num=100'
opt="${opt}&q=${str}"
fi
open -a Safari http://www.google.co.jp/$opt
}
まとめ
開発環境を構築するのは大変ですが、ターミナル回りの設定を最初にやって.zshrcファイルをDropbox等のクラウドストレージで共有すれば後々幸せになれます。