Joshuto Versions Save

ranger-like terminal file manager written in Rust

v0.9.8

1 month ago

Fix version in Cargo.lock

v0.9.7

1 month ago

Updates on the project

Work and life has been quite busy for me recently. Thus I haven't had the time to look over all the issues and pull requests. I apologize for all merge conflicts I've been causing for the outstanding pull requests :pray: I will get to them eventually!

As always, I appreciate all the contributions made by everyone!

Changes

  • Improved documentation
    • Thanks to @Integral-Tech , @11D-Beyonder , @b-m-f
  • Update install script
    • Thanks to @kennycallado
  • Add large file support for exif
    • Thanks to @Mroik
  • Add more detailed version output via shadow-rs
    • Thanks to @xrelkd
  • Add command for printing embedded configs
    • Thanks to @sushi-shi
  • Add lscolor support
    • Thanks to @luteran42
  • Mouse support is now configurable
    • Thanks to @Mroik
  • Ratatui-image integration
    • Thanks to @benjajaja
  • Use less pager for output instead of joshuto's own confirm
    • Thanks to @luteran42
  • Add capture and stdout command
    • Thanks to @DLFW
  • Add case_insensitive_ext option (originally case_sensitive_ext
    • Thanks to @Akmadan23
  • Add reverse flag to sort
    • Thanks @Akmadan23

Fixes

  • Fix overflow bug with bookmarks
    • Thanks to @pantosaur
  • Fix trash command with filenames with apostrophes
    • Thanks to @Akmadan23
  • Fix clear numbered command buffer on cursor move
    • Thanks to @Akmadan23
  • Fix theme not using prefix
  • Fix using real name instead of username
    • Thanks to @Akmadan23

v0.9.6

5 months ago

Changes

  • Improved documentation
    • Thanks to @cereum , @DLFW , @Lzzzzzt , @kennycallado , @radek-sprta , @Mroik
  • Migrating to ratatui
  • Scrollable Tab bar
    • Thanks to @DLFW
  • Add support for command aliasing
    • Thanks to @Akmadan23
  • Add custom commands
    • Thanks to @Dzordzu
  • Mtime displays localtime instead of UTC
    • Thanks to @Lzzzzzt
  • Add user and group in footer
    • Thanks to @Lzzzzzt
  • Add more options to linemode and make it more configurable
    • Thanks to @Lzzzzzt
  • Add current dir name to tab
    • Thanks to @Lzzzzzt
  • Add --all-selected option to CopyFilePath
    • Thanks to @uros-5
  • Trash feature uses command line tools instead of library
    • This reduces dependencies and compilation errors
  • Add optional description to keymaps
    • Also show description in help menu
  • Case sensitive option for searching, selecting and filtering
    • Thanks to @ctj12461
  • Regex support
    • Thanks to @ctj12461
  • Add a lot more select and filtering options
    • Thanks to @ctj12461
  • Add no confirm option to delete_files
    • Thanks to @Akmadan23
  • Cleanup warnings
    • Thanks to @kjuulh
  • Command chaining support
  • Subcommand support
    • Thanks to @xrelkd
  • Shell completion for nix flake
    • Thanks to @xrelkd
  • rename_file_append_ext command
    • Thanks to @rqdmap
  • Update flake
    • Thanks to @Ruixi-rebirth
  • Add mutex lock for preview threads
    • Thanks to @luteran42
  • Add wezterm compatibility
    • Thanks to @kennycallado
  • Add focus on create option
    • Thanks to @Akmadan23
  • Add %p keyword to file_path()
    • Thanks to @luteran42
  • Add more mimetypes
    • Thanks to @MayoDuckPy , @xfzv
  • Add more icons
    • Thanks to @xrelkd

Fixes

  • Make input thread more robust
    • There are times when terminal input and joshuto are out of sync, causing keystrokes and view to be out of sync and unusable
  • Remove temporary file after bulk_rename
  • Recycle bin feature more isolated from conditional compilation
  • Fix xdg_open for non-forking applications
  • Fix macos build
    • Thanks to @kennycallado
  • Remove debug print
    • Thanks to @awerty-noob

v0.9.5

10 months ago

Thank you everyone who has contributed to and supported this project. It has been over a year since I made a new release. In that time, the amount of users using Joshuto has grown a lot and a lot of new features has been added. I hope to continue improving on this project and working together with everyone!

Changes

  • delete_files now has the ability to be queued up (just like cut/copy operations)

  • --file-chooser option for using joshuto as a file picker

  • add symlink_files command

    • works like cut/copy but instead of pasting the file, paste an absolute or relative symlink to the targets
  • File sorting now works per tab

    • Thanks to @DLFW
  • Visual mode support

    • Thanks to @DLFW
  • numbered_command is now a proper command that can be invoked

  • tab_switch_index open tabs to populate given index

  • Show how many files are selected in the footer

  • Mimetype support! (require file command installed to work)

  • Add Ranger-like mouse controls

    • Thanks to @DLFW
  • filter command to filter directory listing

    • Thanks to @krivahtoo
  • Add linemode

    • Thanks to @DLFW
  • Support multiple zoxide arguments

    • Thanks to @krivahtoo
  • rename_keep_ext: rename with the file name removed but keeps extension

    • Thanks to @fritzrehde
  • Bookmark support

  • --permanently option for deleting files

    • Thanks to @krivahtoo
  • Screenshot compression

    • Thanks to @indigolain
  • Remove deleted file entries from history

    • Thanks to @sergey-suslov
  • New tab can now open in specific directories

    • Thanks to @DLFW
  • Ability to quit to directory via command line argument on startup

    • Thanks to @pantosaur
  • Migration to ratatui

    • Thanks to @Ragnyll and @MathieuHerrmann
  • Nix flake support

    • Thanks to @Ruixi-rebirth
  • Add support for customizing file icons

    • Thanks to @krivahtoo
  • Migration to termion v2

    • Thanks to @asim215
  • Migrate to shellexpand v3 and rustyline v12

  • Avoid changing constraints during preview loading

    • Thanks to @Handfish
  • Documentation fixes and updates

    • Thanks to @aouerf , @DLFW , @yanshay , @danielronalds , @a-kenji , @eltociear , @hezhizhen , @imbolc , @donovanglover

Fixes

  • Configs are loaded at the right time now (on startup instead of when used)
  • Fix preview width is 0
  • Fix HSplit view crashing
    • Thanks to @Vinegret43
  • Fix subdir_fzf stuck on large directories
    • Thanks to @Jacky-Lzx
  • Fix incorrect sort_method in default config
    • Thanks to @rqdmap

v0.9.4

1 year ago

Changes

  • selected files now indented like ranger
  • Use notify::RecommendedWatcher to simplify code and support BSD platforms
    • Thanks to @unrelentingtech
  • track child processes and properly close them when complete
  • add H, L and M vim actions
  • combine --output-dir and --choosefiles into a single argument
    • --output-file is used for all output by joshuto and can be specified what to output by:
    • quit --output-current-directory
    • quit --output-selected-files
  • add pbcopy to support macos file ops
    • Thanks to @ztlevi
  • inform user how many files was selected when glob selecting
  • zoxide support
  • add ctrl+h as hidden files toggle
    • Thanks to @Diaoul
  • Github clippy workflow and rustfmt stuff
    • Thanks to @dmarcoux
  • split up keymaps into different modes
    • default_view default
    • task_view for when viewing io processes
    • help_view for viewing help menu
  • Add flat command
    • Thanks to @krivahtoo
  • Add hsplit view to view 2 tabs at once
  • Add ability to check whether a preview is outdated and update it accordingly

Fixes

  • fix regular file styling not respecting theme
  • fix file preview showing a blank line
  • fix confirm_exit not working
  • fix open not selecting file
  • fix bulk_rename confirmation logic

0.9.3

2 years ago

0.9.3

Changes

  • add support for scrolling text previews
  • bulk_rename now reads TMP_DIR environment variable when determining where to save temporary files
  • line numbers support (Thanks to @Vinegret43 )
  • automatically reload directory contents when change is detected (configurable) (Thanks to @DLFW )
  • continuous scrolling support (Thanks to @DLFW )
  • cd - support (Thanks to @Vinegret43 )
  • support for image previews via ueberzug and kitty term
    • Big thanks to @DLFW , @is0n , @krivahtoo for coordinating and implementing this
  • command autocompletion and reverse autocompletion (Thanks to @sushi-shi )
  • incremental search (Thanks to @sushi-shi )
  • console shortcuts (Thanks to @sushi-shi )
  • half page increments (Thanks to @sushi-shi )
  • try all options when opening files (Thanks to @sushi-shi )
  • Docker image for building joshuto (Thanks to @kennycallado )
  • themes, keymaps and joshuto settings now come with a default setting if none is provided
  • you can now fork with xdg_open
  • various code cleanups (Thanks to @DLFW , @otakubeam , @sushi-shi )

0.9.2

2 years ago

Joshuto is now published to crates.io! :100: :tada:

Changes

  • File previews no longer spawn threads if preview already exists
  • Tab switching via indexes (Thanks to @krivahtoo )
  • Input logic is moved from tui_worker_view to show_workers
  • Input logic out of tui_command_menu into input
  • Add a help page (Thanks to @Vinegret43 )
  • Add basic command history
  • Switch from skim to fzf
  • Add command to search subdirectories via fzf
  • Rework config structure
  • Add avif to theme (Thanks to @nonetrix )
  • Use include_str! for default configurations
  • Path shortener when path is too long (Thanks to @kennycallado )
  • Add choosefiles option to output selected files into a specified file (Thanks to @foxfriends )
  • Add syntax highlighting to file previews (Thanks to @krivahtoo )

Fixes

  • Fix parent directory not reloading for hidden file toggle
  • Unix permissions work a lot better
  • Paste overwrite works now

0.9.1

2 years ago

Changelog

  • IO work shows more detailed progress
  • up, down, left, right keys have been renamed to arrow_up, arrow_down, arrow_left, arrow_right
  • Rudimentary support for RGB colors (not tested)
  • open_file was renamed to open
  • Add search_skim command
    • fuzzy search via skim
  • Add additional config directories
    • ie. ~/.config/joshuto
  • Change username to red when root
  • on bulk_rename, the screen will now clear first
  • homepages can be set for new tabs (inherit, home, root)
  • Add support for lazily figuring out how many files are in directories
    • This fixes issues where joshuto is very slow on network drives, mtp, etc.
  • File preview support! (rudimentary)
    • uses scope.sh-like file to figure out and generate previews like ranger
    • preview scripts can be set inside joshuto.toml
  • Add quit_to_cwd command
  • --lastdir changed to --last-dir
  • messages are now in color instead of just yellow
  • keymap.toml structure was changed visually
  • Add copy_filename_without_extension command
    • Thanks to @krivahtoo
  • webp theme support
    • Thanks to @nonetrix
  • Add Arch Linux instructions to README
    • Thanks to @salkin-mada
  • Rework sorting system and add sorting by file extensions
    • Huge thanks to @makeefu , this removes a lot of repetitive and rigid code and I never thought of this solution :)
  • Add copy_dirpath and copy_filepath command
    • Thanks to @makeefu
  • Rework directory list rendering
    • Huge thanks to @DLFW , this fixed a lot of hacky code when rendering directory listings
  • Show symlink files and symlink directory sizes and permissions correctly
    • Thanks to @DLFW
  • Add theming to broken symlinks
    • Thanks to @DLFW
  • Show how many files are in directories
    • Thanks to @DLFW
  • Add touch and spawn command
    • Thanks to @DLFW

Fixes

  • Add xdg_open support back (accidentally removed xd)
  • Fixed set_mode command not working
  • Fixed cut operations not displaying values
  • Fixed inner border render
    • Thanks to @princebett , I had no idea how to fix this
  • Fixed page up/down not moving correct amount when borders are enabled
  • Fixed printing
  • Fixed issue where joshuto does not start due to insufficient permissions on a directory in the current directory
  • Fixed files with non-unicode files not showing up
  • Fixed paste overwrite not working
  • Fixed crash when menu height is larger than screen height
  • Fixed border not drawn properly in root directory
  • Fixed selecting file via mouse when borders are enabled
    • Thanks to @DLFW
  • Fixed directories with insufficient permissions not showing up
  • Fixed broken links not showing up
  • Fixed preview scripts constantly called on files that couldn't render a preview
  • Fixed cd not working with relative paths
  • Fixed spaces being trimmed when copying to clipboard
    • Thanks to @krivahtoo

0.9.0

3 years ago

Changes

  • borders are enabled by default
  • add visual progress bar
  • pasting now queries directories first before to get an accurate number of files
  • add glob searching via search_glob
    • previous search has been changed to search_string

Fixes

  • string search does not convert pattern to lowercase

0.8.6

3 years ago

Changes:

  • There is now a view for showing worker progress for cut/copy jobs
    • Still a bit buggy at times, but it doesn't crash
  • Fix unicode boundary errors
  • Add Fedora installation instructions
    • Thanks to @tim77
  • Selected item now highlights the column width instead of just the filename, just like ranger
  • Add option to prevent collapsing preview pane
  • Re-add support for custom column sizes
  • Add support for detecting window size changing https://github.com/kamiyaa/joshuto/issues/37
  • Add mouse support
    • Scrolling and clicking on items
  • Add cd tilde expansion https://github.com/kamiyaa/joshuto/issues/33
    • Thanks to @mblode
  • Add clipboard support for copying filename to clipboard
  • Add --lastdir option to allow users to write scripts that cd to the directory joshuto was in
  • Add borders support https://github.com/kamiyaa/joshuto/issues/39
  • Textfield now increases in height to accommodate long strings
  • No longer using hack to show cursor
    • Before, joshuto would show the cursor in the textfield by inversing the color scheme of the character it was theoretically on
    • Now, we make use of the terminal cursor and toggle it when needed