投稿

8月, 2013の投稿を表示しています

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 プロンプトは私は 「pwd + (git branch) $」 とシンプルな表示にしてます。 bashとの違い 細かいところはまだわからないですが、シェルスクリプトの構文がbashとかとだいぶ違うみたいです。 ざっとわかった違いは、 サブコマンドコマンドの展開 普通bash等でサブコマンドを展開するとなると、 $ cat $(ls) とか $ cat  ls  ってすると思うけど(こんな使い方する人はいないと思うが) fishでは単純に括弧で囲うらしい。 $ cat (ls) PA