Skip to main content
  1. Posts/

bashからfish(friendly interactive shell)へ移行する

·159 words·1 min
Table of Contents

さて、いよいよ前回紹介したfishシェルを入れてbashから移行していきましょう。

1.fishのインストール
#

まずはインストールから。

Homebrewを使って簡単にやっていきましょう。

Homebrewが入ってない人は入れましょう。便利ですよ。

WindowsについてはわからないのでWindowsの人は頑張って下さい。

//Homebrewアップデート確認
brew up
//fishインストール
brew install fish

と言っても二行打つだけです。

簡単ですね。

2.設定ファイルの移行
#

bashから設定ファイルを移行しましょう。

ちょっとめんどくさいです。

//コンフィグファイルのディレクトリを作る
mkdir $HOME/.config/fish
//bashの設定をコピー
//もし.bashrcが必要なら同じくconfig.fishに追加してください。
cp $HOME/.bash_profile $HOME/.config/fish/config.fish

//configファイルを開く(お好きなエディタでどうぞ)
vim $HOME/.config/fish/config.fish

/*
export PATH=/opt/local/bin:$PATH
を
set -x PATH /opt/local/bin $PATH
の様に書き換える

export GOPATH=$HOME/go
は
set -x GOPATH $HOME/go

aliasはそのまま使える

vimなら以下のコマンドを使うと楽です(ただの置き換えですが)
:'<,'>s/export/set -x/gc
:'<,'>s/PATH=/PATH /gc
:'<,'>s/:/ /gc

*/

3.起動確認&デフォルトシェルに設定
#

which fish//場所確認
///usr/local/bin/fish

//shellのリストに追記.他のshellの末尾に先ほどのパスを入れれば良いです。
sudo vim /etc/shells

//起動確認(一回shell閉じたほうがいいかも?)
fish

//エラーが出なければデフォルトに設定
chsh -s /usr/local/bin/fish

//色とか変えたければ編集(ブラウザが開かれる)
fish_config

これで基本設定完了です!

 

4.(任意)VimModeの設定
#

VimModeを使う方はfish_vi_key_bindingsを実行し、Emacsモードに戻すには fish_default_key_bindingsを実行してください。

また、VimModeですとオートサジェストの確定コマンドであるctrl+fが効かないので以下の設定をconfig.fishに追加しましょう。

# viモードでもCtrl-f使える様に
function fish_user_key_bindings
  for mode in insert default visual
    fish_default_key_bindings -M $mode
  end
  fish_vi_key_bindings --no-erase
end

快適!

5.(任意)プロンプトの設定
#

最後はプロンプト(シェルの一番左に表示される文字列)のおしゃれ設定を晒して終わりです。

promptの設定は.config/fish/functions/fish_prompt.fishに書きます。

//開く
vim .config/fish/functions/fish_prompt.fish

//記入
   function fish_prompt
     test $SSH_TTY
       and printf (set_color red)$USER(set_color brwhite)'@'(set_color yellow)(prompt_hostname)' ' 
       test $USER = 'root' 
       and echo (set_color red)"#" 
    
       # Main カレントディレクトリ          色                  gitリポジトリ                     色             矢印      色                   矢印    色                矢印
       echo -n (prompt_pwd)(set_color cyan)(__fish_vcs_prompt) (set_color red)'❯'(set_color yellow)'❯'(set_color green)'❯ ' 
   end 

こんな感じ。

fish_configにあるやつを参考に書き換えたらいいと思います。

 

以上でbashからfishへの移行完了です。

さらに詳しく知りたい方はこちらがとても親切ですよ。

全訳!fishシェル普及計画

快適なシェル生活を!

ではまた。

Related

bashからzshに変えると見せかけてbashからfishに変える(fishの良さ・悪さ)
·97 words·1 min
ワカサギ釣りの持ち物と注意事項(長野県松原湖編)
·153 words·1 min
ドメインが期限切れ・失効したらどうすればいいのか
·45 words·1 min