Shell Tools
fzf
fzf gives you fuzzy finding of files via the ff
alias. Go to any directory, type ff
, and you'll be able to fuzzy find your way to any file in that tree, while seeing a preview of the files you're narrowing down on the right-hand side.
You can use Ctrl + R
to use fzf to fuzzy find through your command history.
You can use **<tab>
to fuzzy find file arguments to any command, like n **<tab>
, to select files to open in Neovim. When you're in that mode, press tab in front of every file you want to add to the set of files to open.
This tool is also used by Neovim when you type Space Space
.
Zoxide
Zoxide is a replacement for cd. It remembers the directories you've been in, so you can more easily jump to them next time. Say you do cd ~/.local/share/omakub
once. Next time, you can just do cd omakub
, and Zoxide will take you directly there.
ripgrep
ripgrep searches the contents of files by using rg <pattern> <path>
, like rg Controller app/
to find all mentions of Controller
in the directory app.
This tool is also used by Neovim when you type Space S G
.
eza
eza is a replacement for ls. It gives you directory listings with more information, color, and icons. By default, eza has been aliased as ls. You can also use lt
to get a listing of two-deep levels of nesting. lsa
gives you a listing including hidden files. And lta
a nested listing with hidden files.
fd
fd is an easier to use replacement for find
. Use fd person.rb
to find a file called person.rb
within the current tree. fd person.rb /
will search the entire file system. fd person.rb / -H
searches the entire file system, including hidden directories.