🐟

fish + fzf の環境設定

2021/04/06に公開

自身のshell環境 config.fish に関してまとめる

fish shell

M1対応のHomebrew v3.0 にてインストールすること

$ which fish
> /opt/homebrew/bin/fish

/etc/shells にfishのパスを追加しchsh -s /opt/homebrew/bin/fishでログインシェルを変更する

fisher

fishのプラグインマネージャー
https://github.com/jorgebucaran/fisher

自身のdotfiles/fish_pluginsに定義済みのプラグインをインストール

$ fisher update

key-binding

インタラクティブフィルタを実現する fzf、リポジトリの管理ツール ghq をfishシェル上で便利に扱うための設定を行う

fzf

https://github.com/jethrokuan/fzf
様々な絞り込みが用意されているが主に利用しているもの

# 配下のファイルを絞り込みエディタで表示する
bind \co __fzf_open --editor
# 履歴からコマンドを絞り込み実行する
bind \cr __fzf_reverse_isearch
# alt+cで配下のディレクトを絞り込み移動する
bind \ec __fzf_cd

※ iTerm2を利用の場合はaltキーをescとして認識できるようにすること[1]

fish-ghq

ghqで管理しているリポジトリの絞り込み移動する
https://github.com/decors/fish-ghq

bind \c] __ghq_repository_search

fzf-git-recent-branch

ローカルブランチを絞り込みcheckoutする
https://github.com/tsub/fish-fzf-git-recent-branch

bind \cb fzf_git_recent_branch
更新

gh コマンドがextensionに対応したため、gh-branchを利用する
https://github.com/mislav/gh-branch

脚注
  1. https://qiita.com/DQNEO/items/524724982ef49beb7f56 ↩︎

Discussion