Thanks to visit codestin.com
Credit goes to lib.rs

2 releases

Uses new Rust 2024

new 0.0.2 Jan 14, 2026
0.0.1 Jan 5, 2026

#1082 in Filesystem

Custom license

480KB
12K SLoC

F:ist

F:ist is a fast and intuitive search tool for the filesystem.

// video

Installation

# dependencies
cargo install fd-find eza ripgrep

cargo install fist

# (Optional) setup shell integration:
echo "\neval$(fs :tool shell)" >> ~/.zshrc # or whatever the startup file of your respective shell is.

Call as:

  • fs: Directory navigation
  • fs [..paths] pattern: interactive find
  • generate_paths | fs: enriched fuzzy searching of paths
  • z [query]: directory jump (requires shell integration)

Commands

Default bindings overview

  • Up/Down: Navigate (or Up in the initial position to to enter prompt).
  • Left/Right: Back/Enter.
  • Enter: Default (system) open.

  • ctrl-f/ctrl-r: Find files/Search text.
  • ctrl-g: History view (Folders and files).
  • ctrl-z/ctrl-y: Undo/Redo.

  • ctrl-x/ctrl-c/ctrl-v: Cut, Copy, Paste.
  • delete/shift-delete: Trash/Delete.
  • ctrl-e: Open menu.
  • ctrl-s: Open stash.
  • ctrl-shift-f: Open filters.
  • ctrl-h: Toggle hidden.

  • Tab: Toggle select.

  • alt-enter: Print.

  • ?: toggle preview

  • ctrl-b: Open background.

  • ctrl-l: Full preview.

  • / and ~: Jump to home

For a full list of binds within the app, type ctrl-shift-h.
For more information on bindings, see matchmaker.

Shell integration

Jump

Additional

Dependencies

  • fd-find
  • eza
  • ripgrep

Conversely, fist integrates into CommandSpace, which you may also like to check out.

Notes

  • The New action creates a directory if the target ends with a path seperator[^1].

  • The process which runs the command that spawns programs can be relegated to a process manager. For example, using pueue:

# config.toml

[misc]
spawn_with = ["pueue", "add", "-g", "apps", "--"]

[^1]: / on unix and \ on windows

Dependencies

~75–115MB
~2M SLoC