Yazi ==== Yazi - a terminal file manager Date: February 7, 2026 Yazi is a blazing-fast terminal file manager written in Rust with async I/O. ## Features - **Async I/O** - Non-blocking file operations - **Fast** - Written in Rust, optimized for speed - **Previews** - Built-in image, video, and code previews - **Customizable** - Keybindings, themes, and plugins - **Integration** - Works with neovim, tmux, shells ## Setup Install via package manager: ```bash # Via mise (recommended) mise install yazi # Or install script curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh # Then cargo install yazi-fm # Arch Linux (AUR) yay -S yazi ``` ## Configuration Config directory: `~/.config/yazi/` - `yazi.toml` - General configuration - `keymap.toml` - Key bindings - `theme.toml` - Colors and styling ## Key Bindings ### Navigation | Key | Action | |-----|--------| | `j/k` or `↓/↑` | Move down/up | | `h/l` or `←/→` | Parent/child directory | | `gg` | Go to top | | `G` | Go to bottom | | `H` | Back in history | | `L` | Forward in history | ### File Operations | Key | Action | |-----|--------| | `Space` | Select item | | `y` | Yank (copy) | | `x` | Cut | | `p` | Paste | | `d` | Delete | | `D` | Permanent delete | | `r` | Rename | | `a` | Create file | | `A` | Create directory | | `Enter` | Open file | | `o` | Open with specific app | ### View | Key | Action | |-----|--------| | `Tab` | Switch panel | | `~` | Go to home | | `.` | Toggle hidden files | | `s` | Search files | | `S` | Search contents | | `/` | Filter items | | `z` | Jump to directory | | `c` | Copy path | ## Shell Integration Add to `~/.zshrc`: ```bash function yy() { local tmp="$(mktemp -t "yazi-cwd.XXXXXX")" yazi "$@" --cwd-file="$tmp" if cwd="$(cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then cd -- "$cwd" fi rm -f -- "$tmp" } ``` Then use `yy` to launch yazi and automatically cd to the last visited directory on exit. ## See Also <div class="embed-card"> <a href="/neovim/" class="embed-card-link"> <div class="embed-card-content"> <div class="embed-card-title">Neovim Configuration</div> <div class="embed-card-description">Neovim configuration with lazy.nvim for plugin management</div> <div class="embed-card-meta">Feb 7, 2026</div> </div> </a> </div> <div class="embed-card"> <a href="/zsh/" class="embed-card-link"> <div class="embed-card-content"> <div class="embed-card-title">zsh Configuration</div> <div class="embed-card-description">zsh shell configuration - my primary shell with autosuggestions, syntax highlighting, and custom functions</div> <div class="embed-card-meta">Feb 7, 2026</div> </div> </a> </div> <div class="embed-card embed-card-external"> <a href="https://yazi-rs.github.io/" class="embed-card-link" target="_blank" rel="noopener noreferrer"> <div class="embed-card-image"> <img src="https://yazi-rs.github.io/webp/docusaurus-social-card.wbep" alt="" loading="lazy"> </div> <div class="embed-card-content"> <div class="embed-card-title">Yazi</div> <div class="embed-card-description">Blazing fast terminal file manager written in Rust, based on async I/O.</div> <div class="embed-card-meta">yazi-rs.github.io</div> </div> </a> </div>