MyGit

kamiyaa/joshuto

Fork: 154 Star: 3456 (更新于 2024-11-08 23:00:53)

license: LGPL-3.0

Language: Rust .

ranger-like terminal file manager written in Rust

最后发布版本: v0.9.8 ( 2024-03-16 07:54:27)

官方网址 GitHub网址

Linux build

MacOS build

joshuto

ranger-like terminal file manager written in Rust.

Alt text

Dependencies

  • cargo >= 1.67
  • rustc >= 1.67
  • 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)
[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

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

{
  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
                ];
              }
            ];
          };
      };
    };
}

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
  • 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)

最近版本更新:(数据更新于 2024-10-06 12:34:56)

2024-03-16 07:54:27 v0.9.8

2024-03-16 07:05:56 v0.9.7

2023-11-21 05:55:03 v0.9.6

2023-07-05 04:36:33 v0.9.5

2022-07-08 10:28:44 v0.9.4

2022-03-06 08:23:01 0.9.3

2021-11-20 09:22:13 0.9.2

2021-09-26 03:23:46 0.9.1

2021-05-08 08:09:07 0.9.0

2021-03-07 00:06:59 0.8.6

主题(topics):

clipboard, concurrency, file-manager, hacktoberfest, joshuto, linux, ncurses, ranger, rust, termion, toml, tui, tui-rs

kamiyaa/joshuto同语言 Rust最近更新仓库

2024-11-20 07:29:29 lanyeeee/jmcomic-downloader

2024-11-19 23:39:15 gleam-lang/gleam

2024-11-19 08:50:55 lapce/lapce

2024-11-11 22:51:00 tauri-apps/tauri

2024-11-11 07:55:30 dani-garcia/vaultwarden

2024-11-09 16:42:37 rustdesk/rustdesk