v1.14.0 - 2022-07-05
Major Feature: imports
-A configuration file can now import one or several other ones. An import can
have a condition on the terminal's background color, which makes it possible
to import either a dark or a light theme depending on the current terminal
settings. You're also encouraged to split your configuration in several files,
as is now done for the default configuration.
Minor changes
-fix --cmd not working (it was accidentaly renamed in --commands, -c was still
working) - Fix#570
v1.13.2 - 2022-06-18
-advice to hit alt-i and|or alt-h when no file is visible - Fix#556
-examples on search modes in help screen - Fix#559
-list of syntactic themes in default conf
-the --file-export-path launch argument which was deprecated since broot 1.6
has been removed (redirect the output of broot instead)
-better built-in verbs for Windows - Thanks @Spacelord-XaN
-take the .git/info/exclude file into account for ignoring - Thanks @refi64
The released archive doesn't include an Android build - see #565
-close the staging area when it's emptied with a verb (e.g. on :rm)
-format files counts with thousands separator - Fix#549
-try verbs in order allowing some with filters before one without - Fix#552
v1.11.1
-fix broot not being usable while an image is being opened by hitting enter
on linux - Fix#530
v1.11.0
-sorting by type, with 3 new internals: :sort_by_type_dirs_first,
:sort_by_type_dirs_last, and :sort_by_type. The last one lets you toggle
between no sort, sorting by type with directories first, and sorting by type
with directories last. - Fix#467
v1.10.0
-verb filtering on file extension - Fix#508
-don't quit on tiny terminals - Fix#511
-fix the capture_mouse config item which was described in documentation but not
usable (the non documented disable_mouse_capture argument was working and is
kept for compatibility)
-don't query size of remote filesystems anymore. This fixes some 10 seconds
hangs in some cases (e.g. filesystem screen) when a remote filesystem is
unreachable.
v1.9.3
======
- keep same line visible in preview when resizing
- :previous_dir and :next_dir internals - Fix#502
v1.9.2
======
- instead of crashing on syntect panic in code preview, fall back to unstyled
text - Fix#485
- fix files in worktree missing from git statuses - Fix#428
v1.9.1
-Better manage when to draw/erase/keep Kitty Graphics Protocol images for better
speed when background tasks run. Also fix background not erased behind kitty
images in some cases.
v1.9.0
-total search (launched with ctrl-s) shows all matches - This is experimental
and might be reversed, opinions welcome
-kitty graphics protocol used for high definition image rendering on recent
enough versions of WezTerm - Fix#473
-fix syntaxic preview of Python files broken by comments - Fix#477
-home key bound to :input_go_to_start, end key bound to :input_go_to_end -
Fix#475
-alt-i bound to toggle_git_ignore
-alt-h bound to toggle_hidden
-text previews switches to hexa when there are not printable chars
(eg escape sequences)
-Make the "clipboard" feature non default again, as it proves to make
compilation harder on some platform.
You can still try the compilation with cargo install broot
--features "clipboard"
The released archive on GitHub or on my server are still compiled with the
"clipboard" feature when available.
-"clipboard" feature now default (can still be removed at compilation
with --no-default-features)
-fix clipboard features not working on some recent linux distributions
-you can now select part of the input with shift arrows or by dragging the
mouse cursor
-new internals: input_selection_cut and input_selection_copy (not bound by
default)
v1.6.3 - 2021-08-02
-hjson: fix bad parsing on tab before colon
-now checks all args of externals are set, doesn't use the raw {arg}
v1.6.2 - 2021-07-31
-broot reads now both the TERM and TERMINAL env variables to try determine
whether the terminal is Kitty
-using :toggle_device_id, you can display the device id of files (unix only)
-fix a few problems with filesystems analysis by upgrading lfs-core to 0.4.2 -
Fix#420
-a few minor rendering improvements
v1.6.1 - 2021-06-23
-fix compilation on freeBSD
-fix :filesystems view not listing disks whose mount point has a space character
-fix panic on searching cr/.* if a file starts with an empty line - Fix#406
-fix preview of linux pseudo-files
-identify "RAM" and "crypted" disks in :filesystems view
-{root} argument (current tree root) can be used in verb patterns - Fix#395
-working_dir verb attribute - Fix#396
-client-server mode fixed, no longer feature-gated (but still only available on
unix like systems)
-broot tries to keep same selection on option changes
-:tree_up and :tree_down internals, mapped to ctrl-up and ctrl-down - Fix#399
-better handling of auto color mode: two separate behaviors: for app running
and for export when leaving - Fix#397
-remove the deprecated --no-style launch argument (use --color no instead)
-deprecate the --out argument (redirecting the output is the recommanded
solution)
-fix a few minor bugs
-new auto_exec verb property: a non-auto_exec verb isn't executed directly on a
keyboard shortcut but fills the input so that it may be edited before execution
on enter key.
-add support for backtab key (by default it's bound to :previous_match).
-:rename built-in verb, best used with its keyboard shortcut F2.
-new standard verb arguments: {file-stem}, {file-extension}, and {file-dot-extension},
-new :toggle_second_tree internal - Fix#388.
-total size of staging area computed and displayed if sizes displayed elsewhere.
-new file_sum_threads_count conf property to define the number of threads used
for file summing (size, count, last modified). The goal is to more easily
search what's the best value depending on the cpu, OS and disk type/speed.
-:input_clear internal - Fix#24.
-the default (non prefixed) search is now "path fuzzy" instead of "name fuzzy".
You can still change the default mode and mode bindings in the config. This was
done after a survey in chat.
-new "unordered tokens" search type: t/ab,cd searches for tokens "ab" and "cd"
in any order and case insensitive in the subpath, matches for example
src/dcd/Bab.rs - Fix#378
-fix search modes configuration removing all default mappings - Fix#383
-conf / quit_on_last_cancel to allow quitting with esc when there's nothing
to cancel - Fix#380
-new parent skin entry for the part of the sub-path before the file name
(visible when you search on subpath)
-when a content search has been done, opening a file with a compatible command
(like the standard :edit) opens on the first line with a match
-fix :previous_match not jumping over indirect matches - Fix#377
-fix typing a prefixed pattern then emptying it while keeping the prefix
doesn't remove filtering - Fix#379
-fix shifted matching chars highlighting with regex patterns when showing
icons - Fix#376
Minor changes:
-modal mode: revert to command mode on command execution - Fix#372
-modal mode: when in command mode, '/' only enters input mode and is never
appended to the input
-better handle failing external programs when not leaving broot
Major feature: staging area
You may add files to the staging area then apply a command on all of them.
This new feature is described here, https://dystroy.org/broot/staging-area/
Several verbs have been added. Type "stag" in help to see them and their
keyboard shortcuts.
v1.2.10
-fix shift based key shortcuts - Fix#363
-check there's another panel before executing verbs with other-panel argument
- Fix#366
v1.2.9
-Fix crash on :input_del_word_left - Fix#361
-Remove diacritics and normalize unicode from input on fuzzy search (an
unnormalized string with unwanted diacritics most often happen when you paste
a string in the input)
v1.2.8
-It's possible to define several key shortcuts for a verb, using the "keys"
property
-Improvements of fuzzy matching
v1.2.7
-Don't ask again for installation if no sourcing file has been found
v1.2.6
-Clipboard features (copy and paste verbs) now work on Android/Termux (needs
the Termux API to be installed)
-Fix a compilation problem on non gnu windows - Thanks @Stargateur
-Obey '--color no' even in standard application mode. In that case,
automatically enable selection marks or you wouldn't know what line is selected
v1.2.5
-Fix style characters being written in --no-style mode - Fix#346
-Replace --no-style with --color taking yes, no or auto, with detection of
output being piped in auto mode (default). --no-style is still usable but it's
not documented anymore - Fix#347
-Fix wrong version number written in log file - Fix#349
-By default the number of panels is now limited to 2 (can be changed in conf
with max_panels_count). The goal is to improve the global ergonomics for the
most common (universal?) use case - Fix#345
-line_down_no_cycle and :line_up_nocycle. They may be mapped instead of
:line_up and :line_down when you don't want to cycle (ie arrive on top when
you go down past the end of the tree/list) - Fix#344
-fix selected line number rendering in text preview
-special paths in "no-enter" or "hide" aren't counted when summing sizes or
dates. It's a compromise: it makes all sums a little slower, especially if you
have a lot of special paths or complex ones, but it allows skipping over the
very slow disks and thus makes some cases much faster - Fix#331
-br fish shell function uses shell completion of broot
-tree height in :pt now applies even when there are more root items (thus
truncating the tree) - Fix#341
-fix the F5 and F6 shortcuts (copy and move between panels) in the default
configuration
-allow dashes instead of underscores in conf property names. This fixes a
regression as "special-paths", "ext-colors" and "search-modes" were defined
with a dash up to version 1.0.7. Now both spellings are OK - Fix#330
-fix some problems with paths containing spaces
(regression since 1.1.11) - Fix#329
-experimental "modal mode" (or "vim mode") in broot.
See https://dystroy.org/broot/vim_mode/
Warning!
-DON'T activate this mode until you really tried broot. Broot isn't a text
editor and can't be confused with one. This mode may be more comfortable when
you constantly jump from vim to broot but only after you understood how broot
works.
This isn't really about a "vim mode". This is about a "modal mode" in which
single letter key shortcuts are possible because the input at the bottom isn't
always focused. You may devise single letter shortcuts without taking
inspiration in vim
You may be an avid vim user, as I am, and still prefer not to use modality in
broot. Starting in command mode means you have one more letter to type before
searching, because search is done in input mode. And broot is search oriented
and often used in very short sessions (less than 5 seconds from intent to
launch to being back in the shell in the right directory or editing the right
file in your favorite editor).
-fix mouse staying captured during external app execution - Fix#325
-fix handling of rules starting with '/' in the global gitignore - Fix#321
-alt-c now mapped to the new :copy_line verb which, when in tree, puts the
selected path in the clipboard and, when in text preview, puts the selected text
line in the clipboard - Fix#322
-it's possible to define verb execution patterns as arrays instead of simple
strings, to avoid having to escape quotes - Fix#319
-when sizes are displayed (eg on br -s), show size of root line and root
filesystem info
-modified size cache management makes some size computations faster
-sizes (and dates and counts) are progressively displayed