サラッと試してみた感じを綴っただけなのでサラッと読んで下さい。
fish-shell
fishとはbashやzshと同じシェルの一つ。
導入
導入自体はすごく簡単でhomebrewを入れていれば
$ brew install fish
これでインストール完了。
デフォルトで使うために$ chsh -s /usr/local/bin/fish
を忘れずに。
設定し終わるとデフォルトでいかした感じの画面になっていた。
プラグインマネージャーの選定
ネットでさらっと見た感じこの2つが候補になった。
zshで例えると前者はoh-my-zsh
,後者はzplug
みたいな印象
とりあえず今回はお試しみたいな感じだったので後者のfisherman
を選択した。
$ curl -Lo ~/.config/fish/functions/fisher.fish --create-dirs https://git.io/fisher
それなりに仕上げるべく、プラグインをインストール
$ fisher z fzf edc/bass refaelrinaldi/pure
インストールしたプラグイン一覧は~/.config/fish/fishfile
で見ることができる。
~/.config/fish
のディレクトリ下にconfig.fish
ファイルを作る。(.zshrcのようなもの)
ここにパスなどの設定を書いた。
見よう見まねで書いた内容(あってるかわからないですが。)
# homebrew
set --export PATH /usr/local/sbin $PATH
# node
set -gx NVM_DIR $HOME/.nvm
# android
set --export ANDROID_DIR $HOME/Library/Android/sdk
set --export PATH $ANDROID_DIR $PATH
set --export PATH $ANDROID_DIR/platform-tools $PATH
set --export PATH $ANDROID_DIR/tools $PATH
# keybind
function fish_user_key_bindings
# peco
bind \cr 'peco_select_history (commandline -b)'
end
homebrewへのパス/usr/local/bin
へはデフォルトでPATHが入っていたので書きませんでした。その辺調べていないのでこれから使っていく中で調べれたらと思います。
zshとの比較
正直な感想、速さを求めるならありだと思う。起動速度は体感で感じるほどzshとの違いを感じた。
逆に今の環境に満足している人はやめたほうが無難な感じもある。
パスの書き方が違ったり、今使っているnvm
などのバージョン管理ツールが対応していない場合がある。
(nvmの場合それ用のwrapperがある。)
その他のツールについてもほとんどがbash、zshを意識して作っているので導入しようとすると、あれ?みたいなところはある。
そのあたりはプラグインで入れたbass
などを上手く使って対処するしかないのかなと思った。
半年くらいは試しで使ってみようかなと思う。