也可直接从 releases 页面下载各平台预编译二进制,无需自行编译;配置文件需放在各平台指定目录(Linux 为 ~/.config/kiorg/)才会生效
kiorg
houqpMIT更新放缓用 Rust 写的跨平台文件管理器,键位借鉴 Vim,适合习惯键盘操作的黑客和开发者快速浏览、管理文件。
A hacker's file manager with VIM inspired keybind
cargo install --locked --git https://github.com/houqp/kiorg.git kiorgREADME 未说明
跨平台文件管理器,用 Vim 键位快速浏览和操作文件
用 Rust 写的跨平台文件管理器,键位借鉴 Vim,适合习惯键盘操作的黑客和开发者快速浏览、管理文件。
核心能力
- 用 Vim 风格快捷键完成导航与文件操作
- 内置类 zoxide 的模糊目录跳转
- 多标签页管理多个目录
- 预览代码高亮、图片、视频、PDF、epub 等格式
- TOML 配置自定义快捷键与配色主题
容易踩的坑
- v1.6.2最新正式版2026-06-25 · 2026-06-25 06:47 UTC
What's Changed
- fix: isolate pan state between different preview types by @houqp in https://github.com/houqp/kiorg/pull/135
Full Changelog: https://github.com/houqp/kiorg/compare/v1.6.1...v1.6.2
- v1.6.12026-05-30 · 2026-05-30 22:39 UTC
查看更新说明
What's Changed
- feat: show edit icon on path nav hover to trigger go-to-path popup by @houqp in https://github.com/houqp/kiorg/pull/132
- feat(pdf): add zoom and pan to PDF viewer popup similar to image viewer by @houqp in https://github.com/houqp/kiorg/pull/133
Full Changelog: https://github.com/houqp/kiorg/compare/v1.6.0...v1.6.1
- v1.6.02026-04-27 · 2026-04-27 02:45 UTC
查看更新说明
What's Changed
- add missing app id by @scottmckendry in https://github.com/houqp/kiorg/pull/129
- feat: go to directory with fuzzy search by @houqp in https://github.com/houqp/kiorg/pull/130
- bump egui to 34 & update all other deps by @houqp in https://github.com/houqp/kiorg/pull/131
New Contributors
- @scottmckendry made their first contribution in https://github.com/houqp/kiorg/pull/129
Full Changelog: https://github.com/houqp/kiorg/compare/v1.5.2...v1.6.0
- v1.5.22026-03-22 · 2026-03-22 19:56 UTC
查看更新说明
What's Changed
- [chore] Fix typo in README by @lsig in https://github.com/houqp/kiorg/pull/120
- [UX] Inline Rename by @lsig in https://github.com/houqp/kiorg/pull/123
- add print-dirs arg by @houqp in https://github.com/houqp/kiorg/pull/125
New Contributors
- @lsig made their first contribution in https://github.com/houqp/kiorg/pull/120
Full Changelog: https://github.com/houqp/kiorg/compare/v1.5.1...v1.5.2
- v1.5.12026-03-07 · 2026-03-07 07:11 UTC
查看更新说明
What's Changed
- support rename across partitions by @houqp in https://github.com/houqp/kiorg/pull/117
- purge cache on delete by @houqp in https://github.com/houqp/kiorg/pull/119
Full Changelog: https://github.com/houqp/kiorg/compare/v1.5.0...v1.5.1
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
Kiorg
Kiorg is a performance focused cross-platform file manager with Vim-inspired key bindings. It is built using the egui framework.
Key Features
- Lightingly fast rendering and navigation
- Multi-tab support
- Vim-inspired keyboard shortcuts
- Built-in zoxide like fuzzy directory teleport
- Content preview for various file formats including code syntax highlight, image, video,pdf, epub, etc.
- Customizable shortcuts and color themes through TOML config files
- Cross-platform support (Linux, macOS, Windows)
- Bookmarks for quick access to frequently used directories
- Single self-contained binary with battery included
- Builtin terminal emulator
- App state persistence
- Language agnostic plugin system
- Undo/redo file operations
Screenshots
Installation
Pre-built binaries for all platforms are available on the releases page.
Alternatively, you can build and install from source using cargo:
cargo install --locked --git https://github.com/houqp/kiorg.git kiorg
Configuration
Kiorg reads the config.toml TOML configuration file stored in the following locations:
- Linux:
~/.config/kiorg/ - macOS:
~/.config/kiorg/(if it exists) or~/Library/Application Support/kiorg/ - Windows:
%APPDATA%\kiorg\
Sample Configuration
# Sort preference configuration (optional)
[sort_preference]
column = "Name" # Sort column: "Name", "Modified", "Size", or "None"
order = "Ascending" # Sort order: "Ascending" or "Descending"
[layout]
preview = 0.5 # Increase preview default width ratio to 50%
# Override default shortcuts (optional)
[shortcuts]
MoveDown = [
{ key = "j" },
{ key = "down" }
]
MoveUp = [
{ key = "k" },
{ key = "up" }
]
DeleteEntry = [
{ key = "d" }
]
ActivateSearch = [
{ key = "/" },
{ key = "f", ctrl = true }
]
Custom Theme
To define a custom theme:
# Select your custom theme
theme = "my_cool_theme"
# Define the custom theme colors
[[custom_themes]]
name = "my_cool_theme"
display_name = "My Cool Theme"
[custom_themes.colors]
fg = "#FAF7F0" # Main text color
bg = "#000000" # Main background color
bg_light = "#080808" # Lighter background (panels, separators)
bg_extreme = "#050505" # Darkest background (scrollbars, inputs)
bg_selected = "#1A1A1A" # Selected item background
bg_fill = "#1A1A1A" # UI element background
bg_interactive_fill = "#262626" # Interactive element background
bg_active = "#333333" # Active element background
fg_selected = "#FAF7F0" # Selected text color
fg_light = "#4E5A6A" # Dimmed/secondary text
fg_folder = "#87CEEB" # Folder icon color
highlight = "#FFA247" # Highlight color
link_text = "#7FA5CC" # Link text color
link_underscore = "#58B8FD" # Link underline color
warn = "#FFA247" # Warning color
error = "#D06666" # Error color
success = "#6BBF59" # Success color
You can try asking LLM to generate these custom theme configs for you based on themes from other apps, it typically works one shot.
Development
Common workflows
- To run static analysis:
cargo clippy --workspace --all-targets -- -D warnings - To execute tests, run:
cargo testorcargo nextest run- Recommend nextest since it's 2-3x faster.
- To regenerate screenshots in readme:
UPDATE_SNAPSHOTS=1 cargo test --features=snapshot
Design patterns
- Composition over inheritance.
- Simple modular design and avoid unnecessary abstractions.
- Leverage async operations for long-running tasks to prevent blocking UI rendering.
- Implementing user preference persistence for improved user experience.
- Clean layout with compact spacing and alignment, functionality over flashy visuals.