なっく日報

技術やら生活やらのメモ

zshオススメのちょっとした設定

本日は公開できるほどのネタがないので、ちょっと開発環境的なモノを書いておきます。

多分、ネタに困ったら少しずつ放出するんじゃないかと・・・

特定のコマンドの履歴を残さない

rmとかlsとか。

↓の関数を.zshrcに足します。

zshaddhistory() {
  local line=${1%%$'\n'}
  local cmd=${line%% *}

  # 以下の条件をすべて満たすものだけをヒストリに追加する
  [[ ${#line} -ge 5
    && ! ( ${cmd} =~ [[:\<:]](mv|cd|rm|l[sal]|[lj]|man)[[:\>:]] ) ]]
}

確か↓の記事を見ながら設定したんだと思います。

mollifier.hatenablog.com

ちなみに、その昔、開発環境でだけどうっかり、source ~/.bashrc とやるつもりで、source ~/.bash_history としちゃってア"ア"ーーーーーーッてなったことあるんで、やっておくに越したことはないです。

Finderで現在開いているディレクトリにcdする

↓を.zshrcに追加。cdfで移動可能。

cdf() {
  target=`osascript -e 'tell application "Finder" to if (count of Finder windows) > 0 then get POSIX path of (target of front Finder window as text)'`
  if [ "$target" != "" ]; then
    cd "$target"; pwd
  else
    echo 'No Finder window found' >&2
  fi
}

どっかの記事のをコピーさせてもらったんですが、どこかは忘れました。。

.....

.を打った分だけ上の階層にあがれるようになります。あんま需要ないかもですが、自分的には結構使います。

alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
alias .....='cd ../../../..'

本日はこんなところで。