6 个版本

0.9.7 2024年3月15日
0.9.6 2023年11月20日
0.9.5 2023年7月4日
0.9.4 2022年7月8日
0.9.2 2021年11月20日

#108文件系统

47 每月下载量

LGPL-3.0

1.5MB
14K SLoC

Linux build

MacOS build

joshuto

ranger-like 终端文件管理器,用 Rust 编写。

Alt text

依赖项

  • cargo >= 1.55
  • rustc >= 1.55
  • xsel/xclip/wl-clipboard (可选,用于剪贴板支持)
  • fzf (可选)
  • zoxide (可选)

另请参阅 Cargo.toml

构建

~$ cargo build

安装

对于单个用户

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

对于使用 cargo 的单个用户

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

系统范围

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

从预编译的二进制文件

依赖项

  • curl
  • openssl
最新版本

使用默认安装路径安装最新版本($HOME/.local/bin/)。

~$ bash <(curl -s https://raw.githubusercontent.com/kamiyaa/joshuto/master/utils/install.sh)
自定义安装路径

允许您通过设置 INSTALL_PREFIX 变量将 Joshuto 安装到自定义目录。

~$ INSTALL_PREFIX="$HOME" bash <(curl -s https://raw.githubusercontent.com/kamiyaa/joshuto/master/utils/install.sh)
系统范围
~# INSTALL_PREFIX="/usr/local/bin" bash <(curl -s https://raw.githubusercontent.com/kamiyaa/joshuto/master/utils/install.sh)
特定版本

通过所需版本号安装 Joshuto 的特定版本。

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

打包状态

Fedora (COPR)
sudo dnf copr enable atim/joshuto -y
sudo dnf install joshuto
Arch (AUR)
[yay/paru] -S joshuto
[yay/paru] -S joshuto-git
Arch (archlinuxcn)
[yay/paru] -S joshuto
[yay/paru] -S joshuto-git
Gentoo (gentoo-zh)
sudo eselect repository enable gentoo-zh
sudo emerge -av app-misc/joshuto
NixOS

以下是在 nixos 配置中使用它的示例

{
  description = "My configuration";

  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
    joshuto.url = "github:kamiyaa/joshuto";
  };

  outputs = { nixpkgs, joshuto, ... }:
    {
      nixosConfigurations = {
        hostname = nixpkgs.lib.nixosSystem
          {
            system = "x86_64-linux";
            modules = [
              {
                nixpkgs.overlays = [ joshuto.overlays.default ];
                environment.systemPackages = with pkgs;[
                  joshuto
                ];
              }
            ];
          };
      };
    };
}

临时运行,未安装到系统中

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

用法

~ $ joshuto

导航

  • 向上移动:arrow_upk
  • 向下移动:arrow_downj
  • 移动到父目录:arrow_lefth
  • 打开文件或目录:arrow_rightl
  • 回到顶部:homeg g
  • 转到底部:endG
  • 向上翻页:page_upctrl+u
  • 向下翻页:page_downctrl+d

标签管理

  • 打开新标签:ctrl+t
  • 使用当前目录打开新标签:T
  • 关闭当前标签:Wctrl+w
  • 切换到下一个标签:\t
  • 切换到上一个标签:backtab

文件操作

  • 重命名文件:a 用于追加或 A 用于前置
  • 删除文件:deleted d
  • 剪切文件:d d
  • 复制文件:y y
  • 粘贴文件:p p
  • 带覆盖粘贴文件:p o
  • 创建符号链接:p l 用于绝对路径,p L 用于相对路径

杂项

  • 切换隐藏文件:z h
  • 重新加载目录列表:R
  • 更改目录:c d
  • 显示任务:w
  • 设置模式:=
  • 进入命令模式::

查看 文档#退出 了解如何退出到当前目录和其他用法

配置

查看 文档 了解详细信息,以及 配置 了解示例

joshuto.toml

  • 常规配置

keymap.toml

  • 用于键绑定

mimetype.toml

  • 用于使用应用程序打开文件

theme.toml

  • 颜色自定义

bookmarks.toml

  • 书签

贡献

查看 文档

错误/功能请求

请创建一个问题 :)

功能

  • 标签
  • Devicons
  • 通过 fzf 进行模糊搜索
  • Ctrl/Shift/Alt 支持
  • 批量重命名
  • 文件预览
  • 退出到当前目录
  • 异步文件 IO (剪切/复制/粘贴)
  • 自定义颜色/主题
  • 行号
    • 跳转到数字
  • 文件选择器
  • 垃圾箱支持

TODOs

  • 内置命令行
    • 大多数功能正常工作
    • 当前实现有些笨拙
    • 标签自动完成(进行中)

依赖项

~33–45MB
~776K SLoC