揮発性のメモ2

知識をメモ書きしておく

自分用bashrc

~/myrc

# ~/myrc として保存し、
# ~/.bash_profile の最後に . myrc を足す

# パスを通す
export PATH=$PATH:~/bin

# sudo で vi使う
export EDITOR=vi

# less で 色付きエスケープ有効
export LESS='-R'
# less で 日本語読む
[ -z "$LESSCHARSET" ] && export LESSCHARSET=utf-8

# プロンプトを2行にしてカラフルにする
export PS1='\[\e]0;\w\a\]\n\[\e[32m\]\u@$HOSTNAME \[\e[33m\]\w\[\e[0m\]\n$ '

# ウィンドウのタイトルバーに 実行中コマンド表示
# cf. https://iww.hateblo.jp/entry/20160325/BASH_COMMAND
trap 'echo -ne "\e]0;$BASH_COMMAND\a"' DEBUG

# Ctrl+S を無効化する
stty stop undef

# history
export HISTCONTROL=ignoreboth:erasedups
export HISTSIZE=2000
export HISTFILESIZE=40000
export HISTTIMEFORMAT='%m/%d %T '

# tree で 日本語表示、罫線文字化け回避
alias tree="tree --charset=C -N"

# 標準エラー出力を赤くするマクロ
# cf. http://serverfault.com/questions/59262/bash-print-stderr-in-red-color
color() { set -o pipefail; "$@" 2>&1>&3|sed $'s,.*,\e[31m&\e[m,'>&2; } 3>&1

# cd で 履歴を絶対パスに置き換える
# cf. http://inaz2.hatenablog.com/entry/2014/12/11/015125
cd() {
    command cd "$@"
    local s=$?
    if [[ ($s -eq 0) && (${#FUNCNAME[*]} -eq 1) ]]; then
        history -s cd $(printf "%q" "$PWD")
    fi
    return $s
}

昔は.bashrcで読んでたけど、ログイン時のみ必要なので.bash_profileで読むように変更した。