fish

[ fish shell ] 今年からfish shell使ってるので初期設定ファイルを貼っておきます

More than 1 year has passed since last update.

今までzshを使ってたんですが、マシンの再セットアップをした際ノリでfish shellを導入しました。

もうほんとに最低限の設定しかしてませんし、実は設定方法もよくわかってないし、とりあえずな感じで使ってますが、補完も優秀だし普段使いには全く問題ない感じで便利に使ってます。

ぼくはoh-my-fishというフレームワークを使っていますが、fishermanというプラグインマネージャもいい感じらしいです。(未検証)

[追記]
Fishermanについてよくまとまった記事を見つけたので参考とさせていただきました。
初心者がShellを知りFish〜Fishermanを導入するまで - Qiita

個人的にzsh + preztoより軽量で快適だったので、fish shell使っていこうと思ってます。

設定方法間違ってるよ!とかあればぜひご教授いただければ幸いです。

config.fish
# Path to Oh My Fish install.
set -gx OMF_PATH "/Users/[ユーザー名]/.local/share/omf"

# Customize Oh My Fish configuration path.
set -gx OMF_CONFIG "/Users/[ユーザー名]/.config/omf"

# Load oh-my-fish configuration.
source $OMF_PATH/init.fish

# homebrew
set -U fish_user_paths /usr/local/bin $fish_user_paths

# nodebrew
set -x PATH $HOME/.nodebrew/current/bin $PATH

# rbenv
#eval "$(rbenv init -)";
set -x PATH $HOME/.rbenv/bin $PATH
set -x PATH $HOME/.rbenv/shims $PATH
rbenv rehash >/dev/null ^&1

# pyenv
# export PATH="$HOME/.pyenv/shims:$PATH" 
status --is-interactive; and . (pyenv init -| psub)

# plugins
set fish_plugin peco

# cd > ls
function cd
  builtin cd $argv
  ls -a
end

# rmstash
alias rm='rmtrash'

# theme
set fish_theme batman

# peco
function peco
  command peco --layout=bottom-up $argv
end

function fish_user_key_bindings
  bind \cr 'peco_select_history (commandline -b)'
end

# encoding
set -x LANG ja_JP.UTF-8

fish shell、いい感じなんですが情報が少ないため導入を避けてる人も多いと思うので、特に目新しい情報ではないですが記事を書いてみました。ひとりでも多くの人がfish shellにトライしますように。