fish-shell はじめてみた
結構前からあったんですね。zshとか設定面倒なイメージしかなくてずっとbasherだったけどfish良さ気だったので乗り換えてみた。
- いいと思った機能
- 履歴等の補完が超強力
- プロンプトに現在チェックアウトしてるGitブランチを表示出来る
- エラー出力があるとプロンプトが赤くなったり、他にも色でわかりやすくなってる
fish-shellのインストール
$ cd /usr
$ git clone https://github.com/fish-shell/fish-shell.git
$ autoconf
$ ./configure
$ make
$ sudo make install
私はgithubのソースをビルドしたが、公式サイトでパッケージをダウンロードしてインストールするほうが楽だと思う。
使ってみる
$ fish
gitサブコマンドの展開(tab)
デフォルトのシェルにする
$ sudo su
# echo /usr/local/bin/fish >> /etc/shells
# exit
$ chsh -s /usr/local/bin/fish
※一度ログアウトしてログインし直すと設定が反映される。
help
$ help
で、ヘルプページがlocalhost:8000で開く。ブラウザで開く。w3m入れてるとそれで開く。
fish_config
以下コマンドでブラウザが開き、WEB上から設定ファイルを編集出来る。
$ fish_config
bashとの違い
細かいところはまだわからないですが、シェルスクリプトの構文がbashとかとだいぶ違うみたいです。 ざっとわかった違いは、
サブコマンドコマンドの展開
普通bash等でサブコマンドを展開するとなると、 $ cat $(ls) とか $ cat
ls
ってすると思うけど(こんな使い方する人はいないと思うが) fishでは単純に括弧で囲うらしい。 $ cat (ls)PATHを通す
setというコマンドを使う。
(例)
$ set -U fish_user_paths $fish_user_paths /usr/local/bin
と、今回はここまで。
あ、補完を決定する際、右矢印ボタンを押す以外でキーバインドってあります? Vimmerなので矢印キーに手を伸ばすのがとても億劫であります。w
暫く使ってみて、また発見があれば記事を書く。
コメント
コメントを投稿