積極的後進

後ろ向きに全力ダッシュ

zshからfishに乗り換えた

zsh から fish に試しで乗り換えたので設定メモ

こんな感じの設定になった。元々の .zshrc はすごい複雑になっていたので、必要そうなところだけ抜粋した。 nodebrew と pyenv の PATH 設定と、少々の alias くらい。

if status is-interactive
  set -g theme_display_date yes
  set -g theme_display_git_default_branch yes
  set -g theme_color_scheme dark
  set fish_plugins theme peco

  set -x PATH $HOME/.nodebrew/current/bin:$PATH
  set -x PYENV_ROOT "$HOME/.pyenv"
  set -x PATH $PYENV_ROOT/shims:$PATH
  pyenv init - | source

  alias n='nvim'
  alias g='cd $(ghq root)/$(ghq list | peco)'
  alias f='echo find . -name filename'
end

function fish_user_key_bindings
  bind \cr peco_select_history
end

良かったところ

  • 設定がかなり簡略に書ける
  • 補完が zsh より早くて良い
  • peco とか ghq は元々使っていたからすぐに移行できて便利

ちょっと工夫が必要だったところ

  • global alias が使えなかった
    • git の current branch name を global alias を使って展開できるようにしていたので、不便
    • 代替でよく使うpushコマンドに abbr を設定してみて、今の所はなんとか動いている
  • 一時的な環境変数が使えない(らしい)
    • HOGE=fuga npm run build みたいなやつ
    • fish_config に書くしかないっぽい??

まだ私物のマシンにしか入れてないけど、調子良さそうなら会社のマシンにも設定してみる。 見た目ももう少しこだわりたいな〜