created: 2019-06-14 24:00, tags: fish, terminal, tmux, fzf, fisher,

terminal 上で使っていて開発時に便利だと思うもの

あまりターミナルをカスタマイズしないタイプなので、そんなに色々入っていないけど、これは便利と思うものを書いておく。

fish shell

最近言わずもがな、という使用率というか、良く使っている人をみかけるようになった shell で、非常に使い易い。

ターミナル周りのカスタマイズが大好きな人でも使えて、嫌いな人でも最初から非常に高機能。

ググラビリティが低いのでリンクを置いとく。

fish: fisher

fish を入れたら使う事になるのが fisher。 fish版の rubygems や composer みたいな物でパッケージ管理コマンド。

これまたググラビリティは低い。

fish: fzf

fuzzy finder の事で、terminal 上で使えるあいまい検索。 fish で使う用に fisher でパッケージが用意されている。

初期で設定が入っているため、ある程度何も考えなくても使えるが、キーバインド弄っている人や tmux 使ってたりするとぶつかって若干鬱陶しいのでちょっとだけ変えている。

bind \cf 'forward-char'
bind \cg 'complete-and-search'

fish: z

今まで移動してきたディレクトリの中から訪問したいディレクトリ名で検索して移動してくれる。 名前が被っている場合は履歴の最新のものにジャンプするっぽい。

tmux

これも有名すぎるくらい有名だけど、ターミナルの管理ソフト (terminal multiplexer)。 ターミナルを分割したりウィンドウ管理したり、セッション毎に分けたり、状態を保持するなど非常に高機能。

高機能が故にキーバインドや使い方が複雑で、自分の使い方を身につけるまでが結構大変だけど、覚える価値はあると思う。

キーバインド周りはカスタマイズするのはあまり好きではないため (直ぐ忘れるので)、なるべく標準にしている。 ただ、Emacs キーバインドでターミナルを操作する際に不便な C-b (char-back) を tmux に取られていると、二回叩いて一文字戻るという挙動になるため、マストでこちらを修正。

他の色々な物との兼ね合いを考慮して、プレフィックスキーは C-j に決定した。

set -g prefix C-j
unbind C-b