fish-shellを使ってみませんか – Qiita
zsh から fish にした。 – yoshiori.github.io
なんだかんだで大学院いたときから周りがzsh使ってたのでzsh使っていたのですが、やっぱり使いこなせなかったのでユーザーフレンドリーだと話題のfishに移行しました。シェル食って生きてる人間とマウスないと何もできない私みたいな人間を一緒にすべきではなかった。
やったこと
omfの導入
oh-my-fish/oh-my-fish: The Fishshell Framework.
マウスが友達の人はomfコマンド使えないと辛いので導入します。
pecoプラグインの導入
oh-my-fish/plugin-peco: Browse your fish history with peco.
zプラグインの導入
oh-my-fish/plugin-z: Integration with z (autojump alternative).
vimのビルド
yumで入れたvimはfishに対応していないので、8.0をcloneしてビルドしました。
vim/vim: The official Vim repository
lessをvimのマクロに変更
config.fishはこんな感じになりました。
set -gx LANG ja_JP.UTF-8
set -gx LC_ALL ja_JP.UTF-8
set -gx LANGUAGE ja_JP.UTF-8
set -gx Z_SCRIPT_PATH ~/z/z.sh
set vim_version (vim --version | head -1 | sed 's/^.* ([0-9]).([0-9]) .*$/12/')
alias less "/usr/local/share/vim/vim$vim_version/macros/less.sh"
function fish_user_key_bindings
bind cr 'peco_select_history (commandline -b)'
end
themeはbobthefishを使いました。
oh-my-fish/theme-bobthefish: A Powerline-style, Git-aware fish theme optimized for awesome.
フォントはPowerline適用済みRictyDiminishedを使ってるのですが、mobaXtermとの相性が悪いのか原因不明で矢印がかけちゃいますね。なんだろうこれ。
サブマシンでスクショとったのでザギザギしてますがメインマシンはmactype入れてるのでもっときれいです。
追記
Z_SCRIPT_PATHはinit.fishが読み込まれる前に設定しないと、ログイン時に「Please install ‘z’ first!」というメッセージと一緒にエラーコード(リターンコードは1)を吐いてしまうので、WinSCPとかSFTP使おうとした時に「大きなSFTPパケット(1416128883 B)を受信しました。サポートしている最大パケットサイズは 102400 B です。(中略)メッセージが “Plea” で始まっています。」のようなエラーが発生します。
$OMF_CONFIG配下にbefore.init.fishを作って、その中でZ_SCRIPT_PATHを設定すると解消します。参考サイトは以下。
How can I install ‘z’ in fish? · Issue #2 · oh-my-fish/plugin-z
余計なお世話感がすごい。最悪プラグインいじってもいい気がします。