Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
J

joshuto

> 开发工具
Open source

ranger-like terminal file manager written in Rust

3.7K stars0 likes0 views
WebsiteGitHub

About

ranger-like terminal file manager written in Rust

joshuto

ranger-like terminal file manager written in Rust.

Dependencies

  • cargo >= 1.90
  • rustc >= 1.90
  • xsel/xclip/wl-clipboard (optional, for clipboard support)
  • fzf (optional)
  • zoxide (optional)

Also see Cargo.toml

Building

~$ cargo build

Installation

For single user

~$ cargo install --path=. --force

For single user with cargo

~$ cargo install --git https://github.com/kamiyaa/joshuto.git --force

System wide

~# cargo install --path=. --force --root=/usr/local     # /usr also works

From pre-compiled binary

Dependencies:

  • curl
  • openssl
Latest release

Installs the latest version using the default installation path ($HOME/.local/bin/).

~$ bash <(curl -s https://raw.githubusercontent.com/kamiyaa/joshuto/master/utils/install.sh)
Custom Installation path

Allows you to install Joshuto to a custom directory by setting the INSTALL_PREFIX variable.

~$ INSTALL_PREFIX="$HOME" bash <(curl -s https://raw.githubusercontent.com/kamiyaa/joshuto/master/utils/install.sh)
System wide
~# INSTALL_PREFIX="/usr/local/bin" bash <(curl -s https://raw.githubusercontent.com/kamiyaa/joshuto/master/utils/install.sh)
Specific release

Installs a specific release version of Joshuto by the desired version number.

~$ RELEASE_VER='v0.9.4' bash <(curl -s https://raw.githubusercontent.com/kamiyaa/joshuto/master/utils/install.sh)

Packaging status

Fedora (COPR)
sudo dnf copr enable atim/joshuto -y
sudo dnf install joshuto
Arch (AUR)
  • release
[yay/paru] -S joshuto
  • build from source
[yay/paru] -S joshuto-git
Arch (archlinuxcn)
  • stable version (x86_64)
  • stable version (aarch64)
[yay/paru] -S joshuto
  • latest git version (x86_64)
  • latest git version (aarch64)
[yay/paru] -S joshuto-git
Gentoo (gentoo-zh)
sudo eselect repository enable gentoo-zh
sudo emerge -av app-misc/joshuto
NixOS

Here's an example of using it in a nixos configuration

…

Temporary run, not installed on the system

nix run github:kamiyaa/joshuto
MacOS (MacPorts)
sudo port install joshuto
MacOS/Linux Homebrew
brew install joshuto

Usage

~ $ joshuto

Navigation

  • Move up: arrow_up or k
  • Move down: arrow_down or j
  • Move to parent directory: arrow_left or h
  • Open file or directory: arrow_right or l
  • Go to the top: home or g g
  • Go to the bottom: end or G
  • Page up: page_up or ctrl+u
  • Page down: page_down or ctrl+d

Tab Management

  • Open a new tab: ctrl+t
  • Open a new tab with current directory: T
  • Close the current tab: W or ctrl+w
  • Switch to next tab: \t
  • Switch to previous tab: backtab

File Operations

  • Rename file: a to append or A to prepend
  • Delete file: delete or d d
  • Cut file: d d
  • Copy file: y y
  • Paste file: p p
  • Paste file with overwrite: p o
  • Symlink files: p l for absolute path, p L for relative path

Miscellaneous

  • Toggle hidden files: z h
  • Reload directory list: R
  • Change directory: c d
  • Show tasks: w
  • Set mode: =
  • Enter command mode: :

See docs#quit for exiting into current directory and other usages

Configuration

Check out docs for details and config for examples

joshuto.toml

  • general configurations

keymap.toml

  • for keybindings

mimetype.toml

  • for opening files with applications

theme.toml

  • color customizations

bookmarks.toml

  • bookmarks

Contributing

See docs

Bugs/Feature Request

Please create an issue :)

Features

  • Tabs
  • Devicons
  • Fuzzy search via fzf
  • Ctrl/Shift/Alt support
  • Bulk rename
  • File previews
    • See Image previews for more details
  • Exit to current directory
  • Asynch File IO (cut/copy/paste)
  • Custom colors/theme
  • Line numbers
    • Jump to number
  • File chooser
  • Trash support

TODOs

  • Built-in command line
    • Mostly working
    • Currently implementation is kind of janky
    • Tab autocomplete (in progress)

GitHub Issues· 102 open

View all on GitHub
  • #616

    0.9.9: error[E0308]: mismatched types

    Updated Aug 19, 2026
  • #632

    Multi-panel directory tree: child panels missing top padding/header, misaligned with parent panels

    Updated Jul 6, 2026
  • #629

    [FEATURE] Option to start with multiple tabs open

    Updated Jun 8, 2026
  • #230

    Is there an Option for 'leaving/quit joshuto on current directory'?

    Updated May 2, 2026
  • #621

    joshuto shows an empty preview pane

    Updated Feb 12, 2026
  • #611

    [FR]: only prompt for trashing when more than one item is selected (like ranger does)

    Updated Jul 13, 2025
  • #610

    Add tv configuration alongside fzf

    Updated Jul 2, 2025
  • #607

    Build fails: error[E307]: mismatched types

    Updated May 27, 2025

Highlights

  • •cargo >= 1.90
  • •rustc >= 1.90
  • •xsel/xclip/wl-clipboard (optional, for clipboard support)
  • •fzf (optional)
  • •zoxide (optional)
  • •build from source
  • •stable version (x86_64)
  • •stable version (aarch64)
  • •latest git version (x86_64)
  • •latest git version (aarch64)

> Tags

Rustclipboardconcurrencyfile-managerhacktoberfest

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category开发工具
PricingOpen source

> Related tools

V
VS Code
流行的开源代码编辑器
G
Git
分布式版本控制系统
V
Vite
下一代前端构建工具