Age | Commit message (Collapse) | Author |
|
refactored, added a few mods into a less flat source structure.
|
|
Fix #179
|
|
All git statuses are itered at once in order to avoid calling
the libgit2 library several times (those calls are very costly)
|
|
|
|
This is still a temporary no-caching solution.
|
|
To help manage duration logging with reduced impact
when not logging
|
|
I guess nobody was able to explain the 3 possible values.
I've also used libgit2 to compute files to ignore.
|
|
This makes it easier to compile broot on Raspberry
|
|
It was equivalent to the down key, which made it useless
|
|
|
|
This removes ambiguities.
Default separator is `;`. If the semicolon is used in commands, you
may provide another separator using the environnment variable
`BROOT_CMD_SEPARATOR`
|
|
|
|
|
|
- Added WriteCleanup, an RAII wrapper for doing cleanup with io::Write
- Includes test
- Replaced many uses of `W` (an stderr alias) with `&mut impl io::Write`
- Removed App::end. The functionality automatically happens with Drop handlers.
|
|
|
|
- Fixed many unidomatic uses of "if let Some(x) = thing"
- Added standard trait implementations and other interface refactorings (for instance, moving "from(thing)" to From<Thing>. All of these do not affect the use of these interfaces.
- Replaced &Box<dyn Trait> with &dyn Trait, where relevant.
- App::run and App::end now take App by value, to enforce that they should only be called once.
- Replaced `loop` with `for event in rx_events` in App::run.
- Touched files were rustfmt'd
|
|
|
|
- don't query the size after the start (use the resize event)
- recompute tree for the correct height
|
|
|
|
For example `enter` on files:
[[verbs]]
invocation = "edit"
key = "enter"
execution = "$EDITOR {file}"
This may be handy on a system without xdg-open.
Fix #65
|
|
The opener crate panics when I try to open files on a server.
The open crate just does nothing. It's cleaner.
|
|
so that a verb can be defined to just introduce a keyboard shortcut:
[[verbs]]
key = "alt-j"
execution = ":line_down"
|
|
The `find` function do a lot of computations whose purpose
is to find the exact position in chars of the best match.
I've made another function, `score_of`, which only returns
the score of the best match. This function is about 3 times
faster.
In order to manage the code duplication this brought, I've
added a few test units.
The code has also been modified to be benchmarkable and a
bench case measures fuzzy searches.
|
|
The default terminal background isn't always good or easy to change.
So there's now a new skin entry `default`.
|
|
Fix #74
|
|
|
|
|
|
The ⌛ wasn't very visible, especially on some terminals where it
was rendered as a small monochrome pair of triangles.
The new message is much more visible and explicit.
The whole status system has been refactored in order to ease the
next evolutions.
|
|
Fix #66
|
|
At the (temporary) price of having mouse support disabled
|
|
thanks to crossterm 0.12.1 and termimad 0.7
"mostly" because I must find where there's something still
going to stdout...
|
|
|
|
|
|
Common case: Assuming the selection is
/home/dys/dev/img.png
and you type
:mv ../../canop/thing.png
the previous version would have displayed
mv /home/dys/dev/img.png /home/dys/dev/../../canop/thing.png
and the new one displays
mv /home/dys/dev/img.png /home/canop/thing.png
|
|
All verbs also documented in website
|
|
Fix #68
|
|
This mode is activated by the --sizes option and makes a few changes
to the broot logic in order to ease size survey:
- sizes computed and displayed
- only one level of tree
- size based ordering
- hidden files and gitignored ones are shown (by default)
|
|
subcrate versionning
See https://github.com/TimonPost/crossterm/issues/186
|
|
arnej-backtab-support
|
|
|
|
The logic behind opening has changed to allow easier opening of files in non terminal applications without closing broot.
**Old behavior:**
- in case of enter or double-click
- on a directory: open that directory, staying in broot
- on a file: open the file, quitting broot
- in case of alt-enter
- on a directory: cd to that directory, quitting broot
- on a file: cd to that file's parent directory, quitting broot
**New behavior:**
- in case of enter or double-click
- on a directory: open that directory, staying in broot
- on a file: open that file in default editor, not closing broot
- in case of alt-enter
- on a directory: cd to that directory, quitting broot
- on a file: open that file in default editor, quitting broot
|
|
parent directory
|
|
|
|
In some cases using the target is desirable but it's way too
dangereous: for example you may rm a directory when you want
to delete the link
|
|
|
|
|
|
also bump version to 0.8, as it's the first deployed version based on
crossterm&termimad and having some kind of windows support
|
|
This made it easier to restore the print_tree feature
(printing the tree to stdout or to a file)
|
|
|
|
Example:
[skin]
directory = "yellow none bold"
tree = "red none"
file = "rgb(255,187,0) none italic"
selected_line = "none darkblue"
|