寺裏庵

こたつ(そろそろアウト)と自作スタンディングデスクもしくは普通のデスクと腰が痛くならない椅子で仕事する在宅Terralienです

ターミナルが便利になるfzfのインストールと使い方をEnvaderで学んだ

f:id:terralien:20220315235754j:plainPhoto by Agnieszka Boeske on Unsplash

AWSが好きでインフラ関係の知識を勉強している寺です。

今回はターミナル周りの環境構築3回目ということですが、ターミナルが便利になるfzfというツールがあるらしく。 fzfなにそれ美味しいの?レベルの知識ですので今回もEnvaderにて学んで行きたいと思います。

fzfって何?

インクリメンタルに検索できるツールだそうです。意味がわかりませんね。

インクリメンタルというのは1文字入力するたびに自動的に検索され候補が表示されるので、検索を視覚的にやりやすくなるということらしいです。

CLIだと視覚的にわかりやすいというのはかなり助かります。

インクリメンタルサーチ(英語: incremental search)は、アプリケーションにおける検索方法のひとつ。検索したい単語をすべて入力した上で検索するのではなく、入力のたびごとに即座に候補を表示させる。逐語検索、逐次検索とも。 出典:wikipedia

Envaderを使う理由

インフラエンジニアを目指す、あるいはインフラの知識を得たい人向けProgateという認識です。

開発者が言うには「環境はコンテナで作られるので何をやっても大丈夫。仮に壊れてもすぐに環境構築できる。」とのことなので、環境構築なにそれ?やコマンド一つ打つにもおっかなびっくりな初学者がやるには最も手軽ではないかと思います。

fzfのインストール

$ git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
$ ~/.fzf/install
$ source .bashrc

※$はプロンプトなんでコピペする時は不要です。

インストール中にshellのコンフィグファイルも変更していると思います。

Do you want to update your shell configuration files? ([y]/n) 

不要な場合はnしときましょう。

fzfの使い方

その前にキーコンフィグを少しいじります。

vi .bashrc
# .zrshrc等

# ctrl+tにfzfを割り当てます
export FZF_DEFAULT_COMMAND='rg --files --hidden --glob "!.git"'

表示されたリストから絞り込むときのショートカットコマンドは以下の通り

Ctrl-k、Ctrl-p カーソルを上に移動
Ctrl-j 、Ctrl-n カーソルを下に移動
Enter アイテム選択
Ctrl-c、Ctrl-g、ESC 終了
Tab、Shift-Tab 複数アイテム選択(マルチセレクトモード時)
出典:fzfを設定しよう

パイプを使って検索できます。

find . | fzf

学んだこと

Envader環境でとりあえずfzfってこんなものかという体験ができました。自分の環境にインストールする前に試せるのはありがたいです。

fzfはvimエディタに対応しているとのことでVimmerにはかなり使いやすいんじゃないかと。
使ってみてなんか合わないという方は同じようなpecoというツールがあるのでそちらを使ってもいいと思います。

qiita.com

参考にしたサイト

qiita.com

これまでのLinux環境カスタマイズ記事

terralien.hatenablog.com

terralien.hatenablog.com