Yazi plugin to preview directories using eza, can be switched between list and tree modes.
ya pack -a ahkohd/eza-preview
Add eza-preview
to previewers in yazi.toml
:
[[plugin.prepend_previewers]]
name = "*/"
run = "eza-preview"
Set key bindings to control the preview in keymap.toml
:
[mgr]
prepend_keymap = [
{ on = [ "e", "t" ], run = "plugin eza-preview", desc = "Toggle tree/list dir preview" },
{ on = [ "e", "-" ], run = "plugin eza-preview inc-level", desc = "Increment tree level" },
{ on = [ "e", "_" ], run = "plugin eza-preview dec-level", desc = "Decrement tree level" },
{ on = [ "e", "$" ], run = "plugin eza-preview toggle-follow-symlinks", desc = "Toggle tree follow symlinks" },
{ on = [ "e", "*" ], run = "plugin eza-preview toggle-hidden", desc = "Toggle hidden files" },
{ on = [ "e", "g", "i" ], run = "plugin eza-preview toggle-git-ignore", desc = "Toggle .gitignore files" },
{ on = [ "e", "g", "s" ], run = "plugin eza-preview toggle-git-status", desc = "Toggle showing git status" },
]
Configure the plugin in init.lua
:
require("eza-preview"):setup({
-- Set the tree preview to be default (default: true)
default_tree = true,
-- Directory depth level for tree preview (default: 3)
level = 3,
-- Follow symlinks when previewing directories (default: true)
follow_symlinks = true,
-- Show target file info instead of symlink info (default: false)
dereference = false,
-- Show hidden files (default: true)
all = true,
-- Ignore files matching patterns (default: {})
-- ignore_glob = "*.log"
-- ignore_glob = { "*.tmp", "node_modules", ".git", ".DS_Store" }
-- SEE: https://www.linuxjournal.com/content/pattern-matching-bash to learn about glob patterns
ignore_glob = {},
-- Ignore files mentioned in '.gitignore' (default: true)
git_ignore = true,
-- Show git status (default: false)
git_status = false
})
-- Or use default settings
require("eza-preview"):setup({})
plugin eza-preview
- Toggle between tree and list modesplugin eza-preview inc-level
- Increase tree depth levelplugin eza-preview dec-level
- Decrease tree depth levelplugin eza-preview toggle-follow-symlinks
- Toggle symlink followingplugin eza-preview toggle-hidden
- Toggle hidden file visibilityplugin eza-preview toggle-git-ignore
- Toggle ignore files mentioned in '.gitignore'plugin eza-preview toggle-git-status
- Toggle showing git status
Feel free to contribute by opening issues or submitting pull requests!
This project is licensed under the MIT License - see the LICENSE file for details.