zsh

.zshrcサンプル

########################################
# 環境変数
 
# ヒストリの設定
HISTFILE=~/.zsh_history
HISTSIZE=1000000
SAVEHIST=1000000
 
 
 
########################################
# 補完
# 補完機能を有効にする
autoload -Uz compinit
compinit
 
# ヒストリ補完
autoload history-search-end
zle -N history-beginning-search-backward-end history-search-end
zle -N history-beginning-search-forward-end history-search-end
#bindkey "^p" history-beginning-search-backward-end
#bindkey "^n" history-beginning-search-forward-end
#bindkey "\\ep" history-beginning-search-backward-end
#bindkey "\\en" history-beginning-search-forward-end
bindkey "\e[A" history-beginning-search-backward-end
bindkey "\e[B" history-beginning-search-forward-end
 
 
# 補完で小文字でも大文字にマッチさせる
# zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
 
# ../ の後は今いるディレクトリを補完しない
zstyle ':completion:*' ignore-parents parent pwd ..
 
# sudo の後ろでコマンド名を補完する
zstyle ':completion:*:sudo:*' command-path /usr/local/sbin /usr/local/bin \
                   /usr/sbin /usr/bin /sbin /bin /usr/X11R6/bin
 
 
########################################
# オプション
 
# cd したら自動的にpushdする
setopt auto_pushd
 
# 重複したディレクトリを追加しない
setopt pushd_ignore_dups
 
# 同時に起動したzshの間でヒストリを共有する
setopt share_history
 
# 同じコマンドをヒストリに残さない
setopt hist_ignore_all_dups
 
# ヒストリに保存するときに余分なスペースを削除する
setopt hist_reduce_blanks
 
########################################
# エイリアス
 
alias h='history'
 
alias la='ls -aF'
alias ll='ls -laF'
 
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
 
alias mkdir='mkdir -p'
 
# sudo の後のコマンドでエイリアスを有効にする
alias sudo='sudo '
 
# グローバルエイリアス
alias -g L='| less'
alias -g G='| grep'
 
# Hyperで透明化を使った場合、ペースト時に文字列が塗り潰されて見えないので対策
# 他でも出るケースがある模様2016年から散発的に発生
# これはzsh側での対処なのでhyperで透明化Pluginに起因する問題すべてに対応できるわけではない
unset zle_bracketed_paste