「Fzf」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(→‎参照: 記事の差し替え)
72行目: 72行目:
 
{{AUR|paruz}} パッケージは {{AUR|paru}} と ''pacman'' のための ''fzf'' ターミナル UI も提供します。
 
{{AUR|paruz}} パッケージは {{AUR|paru}} と ''pacman'' のための ''fzf'' ターミナル UI も提供します。
   
== 参照 ==
+
== Alternatives ==
   
  +
* {{Pkg|skim}} – fuzzy finder written in [[Rust]]
* https://github.com/junegunn/fzf - 開発ページ
 
  +
* {{Pkg|fzy}} – fuzzy finder/selector
* https://github.com/junegunn/fzf/wiki - カスタマイズの例が載っている wiki。
 

2022年4月20日 (水) 10:51時点における版

fzf は汎用のコマンドライン曖昧検索ツールです。

インストール

fzf パッケージをインストールしてください。開発版は fzf-gitAUR でインストールできます。

設定

シェル

様々なシェルで fzf のキーバインドや補完を使うことができます。

  • Ctrl+t カレントディレクトリのファイルとフォルダを一覧する (例: git commit に続けて Ctrl+t を押し、Tab でファイルを選択し、最後に Enter で決定)
  • Ctrl+r シェルコマンドの履歴を検索
  • Alt+c 曖昧検索で選択したカレントディレクトリを変更

bash

.bashrc から以下のファイルを source してください:

  • /usr/share/fzf/key-bindings.bash
  • /usr/share/fzf/completion.bash

zsh

.zshrc から以下のファイルを source してください:

  • /usr/share/fzf/key-bindings.zsh
  • /usr/share/fzf/completion.zsh

fish

fish の場合、キーバインドは以下のファイルに定義されています:

  • /usr/share/fish/functions/fzf_key_bindings.fish

fish はデフォルトで source しますがバインドは手動で有効にする必要があります:

~/.config/fish/functions/fish_user_key_bindings.fish
function fish_user_key_bindings
	fzf_key_bindings
end

fish の fzf 補完はカスタム関数で有効にできます: https://github.com/junegunn/fzf/wiki/Examples-(fish)

Vim

基本的な Vim プラグインはパッケージに含まれており、Vim のプラグインディレクトリにインストールされます。そのため、使用するのに .vimrc に何か追加する必要はありません。ただし、プラグインは FZF コマンドしか提供しません。他の便利な関数を定義している Vim プラグインが fzf の作者によって作られています。https://github.com/junegunn/fzf.vim を見てください。

Arch で fzf を使用する

Pacman

利用可能なすべてのパッケージをあいまい検索し、パッケージ情報をプレビューウィンドウに表示してから、選択したパッケージをインストールします。

$ pacman -Slq | fzf --multi --preview 'pacman -Si {1}' | xargs -ro sudo pacman -S

インストールされているすべてのパッケージを一覧表示し、選択したパッケージを削除します。

$ pacman -Qq | fzf --multi --preview 'pacman -Qi {1}' | xargs -ro sudo pacman -Rns

プレビューにパッケージファイルのリストを追加したい場合 - プレビューウィンドウの更新が少し遅くなるかもしれません (pacman -Fy を起動する前に少なくとも一度は root 権限で実行して pacman ファイルデータベースを同期させてください)。

$ pacman -Slq | fzf --multi --preview 'cat <(pacman -Si {1}) <(pacman -Fl {1} | awk "{print \$2}")' | xargs -ro sudo pacman -S

paruzAUR パッケージは paruAURpacman のための fzf ターミナル UI も提供します。

Alternatives

  • skim – fuzzy finder written in Rust
  • fzy – fuzzy finder/selector