summaryrefslogtreecommitdiffstats
path: root/src/browser_states.rs
AgeCommit message (Collapse)Author
2020-03-30moved files aroundCanop
refactored, added a few mods into a less flat source structure.
2020-03-24right key open directory, left key gets back (when input is empty)Canop
Fix #179
2020-02-03much faster :git_statusCanop
All git statuses are itered at once in order to avoid calling the libgit2 library several times (those calls are very costly)
2020-02-03cached background computation of git statusCanop
2020-02-02background computation of git repo statisticsCanop
This is still a temporary no-caching solution.
2020-01-30add the time! macroCanop
To help manage duration logging with reduced impact when not logging
2020-01-27simplification of git_ignore options to only 2 statesCanop
I guess nobody was able to explain the 3 possible values. I've also used libgit2 to compute files to ignore.
2020-01-26disable network features of git2Canop
This makes it easier to compile broot on Raspberry
2020-01-23TAB key now jumps to direct matches onlyCanop
It was equivalent to the down key, which made it useless
2020-01-20minor code fmt changesCanop
2020-01-16commands given with `--cmd` must be separatedCanop
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`
2020-01-16improve style consistency of the help pageCanop
2020-01-15Reverted uneeded rustfmt changesNathan West
2020-01-15Added write cleanup methods to ensure the terminal is always correctly restoredNathan West
- 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.
2020-01-13Only update filtered_tree if the new one is SomeAriel Davis
2020-01-10Numerous minor refactoringsNathan West
- 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
2019-12-21:total_searchCanop
2019-12-19better handling of resizeCanop
- don't query the size after the start (use the resize event) - recompute tree for the correct height
2019-12-19display possible verb completions in status lineCanop
2019-12-18allow more keys as verb triggersCanop
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
2019-12-17replace the "opener" crate with the "open" oneCanop
The opener crate panics when I try to open files on a server. The open crate just does nothing. It's cleaner.
2019-12-02verb invocation now optional in verb configurationCanop
so that a verb can be defined to just introduce a keyboard shortcut: [[verbs]] key = "alt-j" execution = ":line_down"
2019-12-01faster fuzzy searchesCanop
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.
2019-11-13make it possible to define a global backgroundCanop
The default terminal background isn't always good or easy to change. So there's now a new skin entry `default`.
2019-11-13add a white background skin in web site, and refers to it in confCanop
Fix #74
2019-11-12things related to status style, including doc & conf updatesCanop
2019-11-11colored status line, using Termimad templatesCanop
2019-11-07replace the small spinner with a variable size messageCanop
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.
2019-11-05better handling of errors when opening files externallyCanop
Fix #66
2019-10-28Application running entirely on stderrCanop
At the (temporary) price of having mouse support disabled
2019-10-27app mostly running on stderrCanop
thanks to crossterm 0.12.1 and termimad 0.7 "mostly" because I must find where there's something still going to stdout...
2019-10-23move to the last versions of crossterm and termimadCanop
2019-09-18smarter cut of the status line when it doesn't fit the console's widthCanop
2019-09-15paths built from verb arguments are normalizedCanop
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
2019-09-15more commands available for shortcuts & keyboard keysCanop
All verbs also documented in website
2019-09-13allow configuration of keyboard keys for verb triggeringCanop
Fix #68
2019-08-02whalespotting modev0.9.3Canop
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)
2019-07-31Fix non consistent builds due to lack of precise versionning in crossterm ↵Canop
subcrate versionning See https://github.com/TimonPost/crossterm/issues/186
2019-07-23Merge branch 'backtab-support' of https://github.com/arnej/broot into ↵Canop
arnej-backtab-support
2019-07-22Add support for using backtab to select the previous matchArne Janbu
2019-07-19change the behavior of open and alt-open on standard filesCanop
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
2019-07-03Hitting enter when first line is selected, or clicking it, goes up to the ↵v0.8.6Canop
parent directory
2019-06-19max width on help screen, prettier on very wide screenCanop
2019-06-16fix verbs applying to the target of links instead of the linkCanop
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
2019-06-16mouse support to select and open tree linesCanop
2019-06-12Hitting enter on an executable executes itCanop
2019-06-08configurable skin supported on help screen and in :print_tree screen outputv0.8.0Canop
also bump version to 0.8, as it's the first deployed version based on crossterm&termimad and having some kind of windows support
2019-06-06tree drawing now based on Display traitCanop
This made it easier to restore the print_tree feature (printing the tree to stdout or to a file)
2019-06-04termimad based help screenCanop
2019-05-11configurable style attribute (bold, italic, crossedout, etc.)Canop
Example: [skin] directory = "yellow none bold" tree = "red none" file = "rgb(255,187,0) none italic" selected_line = "none darkblue"