fish移行した

以下雑な手順

  1. brew install fish
  2. cp ~/.zshrc ~/.config/fish/fish.config
  3. ひたすらfish化する
  4. このへんでfishにはいる
  5. fishermanをinstall
  6. 適当にfisher installする
  7. /etc/shells に追記
  8. chsh -s fish_path

ひたすらfish化でやったのででかめのトピックは以下。

export FOO=BAR -> set -x FOO BAR

anyenvがなんかダメだったのでがんばった。

  1. anyenv init - は実は後ろに引数としてshell名をとれる。なければ $SHELL を見る。そのためfish移行時にはfishと明記しておかないとエラーがでまくる。せっかくなのでzshrcにも書くことにした
  2. anyenv init - fish | source でいいはずなのだがなんかうまくいかなかったのでanyenv自体をupdate
  3. それでもダメだったので、anyenv init - fish の出力をなんとなく目で見る。ndenvのpath設定あたりで文字列内展開の書き方が間違ってたっぽい。いろいろめんどくさくなって anyenv uninstall ndenv しとく。dockerもあるし、ローカルのnodeのバージョンがちゃんと管理できなくて困ることはあるまい……

プロンプト変えた。fishなのでさかな。right_promptは最初gitブランチを設定してたんだけど、右端まで空白入るのがウザくて切った。手癖で git s(= git status) 打つようになってるから見えなくても特に問題ない

pecoは下に入力欄がくるようにした。そっちのほうが目線移動が少ない、というのを誰かの設定でみた。確かに。

hubのaliasは別にいらないかなって思って切ったままにしている。hub browseくらいしか使ってないしhub browseって打つようにしている。

移行した感想としては、特に変わらなかった。ターミナルでその場でシェルスクリプティングをすることがあまりなく、あってもfor文程度なので特に利点がない。逆にREADMEとかにあるスクリプトをコピペで動かすことができないのでいまのところ不満度のほうが高い。あっさりまた乗り換えるかもしれない。次にやるとしてもzshではなくbashにしようと思っている