27 lines
1.2 KiB
Markdown
27 lines
1.2 KiB
Markdown
---
|
|
title: "fzf"
|
|
category: "Terminal and shell"
|
|
tagline: "A fuzzy finder for files, command history and anything else you can list."
|
|
source: "pacman"
|
|
package: "fzf"
|
|
command: "fzf"
|
|
website: "https://junegunn.github.io/fzf/"
|
|
code: "https://github.com/junegunn/fzf"
|
|
---
|
|
|
|
## What it is
|
|
|
|
fzf takes any list, such as file names, command history or Git branches, and lets you filter it by typing a few letters in any order. You pick a line with the arrow keys and Enter, and fzf prints it so other commands can use it.
|
|
|
|
## Why it's here
|
|
|
|
- **Find things without exact names.** A few letters are enough to narrow thousands of entries.
|
|
- **Works with everything.** Pipe any command's output into it.
|
|
- **Shell shortcuts.** Its key bindings make history search and path entry much quicker.
|
|
|
|
## On CoreDesktop
|
|
|
|
fzf is installed from pacman, and CoreDesktop's shell setup turns on its Bash key bindings: **Ctrl-R** searches your command history, **Ctrl-T** inserts a file path, and **Alt-C** changes into a directory you pick.
|
|
|
|
CoreDesktop also adds two aliases. `ff` fuzzy-finds a file with a [bat](/software/bat/) preview of its contents, and `eff` opens the file you pick in your editor (Neovim unless you've set `$EDITOR`). `update` keeps fzf current with the pacman packages.
|