-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Sorting #64
Sorting #64
Conversation
Thanks! I'm busy this weekend but I'll take a look early next week. As a quick note, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry for the delay! This looks pretty good, the review comments are mostly cosmetic. Some general comments:
- After merging Keyboard shortcut to toggle filter search #62,
app_state.settings
has to be changed toapp_state.settings()
everywhere, sorry about that. - The search state is not correctly preserved when changing the sort mode, see gif below. Try to add a setter for the sort mode in
app_state
and usewith_cursor_fixed_at_current_item
likeset_filter_search
does (added in Keyboard shortcut to toggle filter search #62). Please add some simple tests toapp_state
to make sure that it works correctly. - The info bar is getting quite crowded. For example in a folder with >100 files, having a terminal window with 70 characters (surprisingly common occurrence on my tiny laptop screen) and sorting by e.g. "accessed", the search overlaps with the info message even with a single character. I can try to squeeze it a bit after this is merged, but it has to be definitely done before the next release.
- I'm not entirely happy that we don't show the thing we're sorting by, but we can leave that for later (I think it would need a column header).
sorting-search-not-updated2.webm
Yeah, the column header is something that we can put in there and that would also free up the area I allocated for sorting in the footer. I will take some time this weekend to address the issues in the comments. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I implemented everything except tests for the sorting mode based on date, I am having trouble getting the tests to populate times for the CustomDirEntries.
Merging the master made the diff a bit harder to interpret, I'll do a rebase on to develop. |
Oops, that turned out to be a bit trickier than I thought. I cleaned up the version history a bit, split some things off into separate commits and removed some unnecessary ones (like importing intrinsics::unreachable and then removing the import). You will need to do |
Ah, one more thing that is missing: the new feature should be mentioned in the changelog, and also the keyboard shortcut and CLI option should be documented in the readme (there is a test to check that all default shortcuts are listed). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So this looks pretty good. The following things are left:
- Should we leave out the option to sort by
accessed
? I'm a bit inclined towards yes. See the comment. - The README should mention the
--sort
CLI option, as well as the default keyboard shortcut and theChangeSortMode
action - The CHANGELOG should mention this feature under v 1.3.0
I can make the changes to the readme and the changelog if you want.
src/app_state.rs
Outdated
self.with_cursor_fixed_at_current_item(|self_| { | ||
self_._settings.sort_mode = sort_mode; | ||
self_.update_ls_output_buf().ok(); | ||
self_.advance_search(""); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think we need to do this trick here, since the list of valid matches doesn't change, only their order does. So if the cursor started on a match, the match will always be there when we change the sort order, and with_cursor_fixed_at
will ensure that the cursor ends up on that match afterwards.
self_.advance_search(""); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay, looks like if I remove this line and do the sorting while searching, the list of matches gets cleared, so that's wrong. The problem is that update_ls_output_buf
is doing too much (this is also causing problems with the unit tests, as alluded to in another comment); it's both reading the current directory as well as doing the sorting. Let's add a separate method for just sorting the buffer.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tried to add a separate method for sorting yesterday, but that wasn't really easy either, updating the ls_output_buf
is quite a tangled mess. I should clean it up a bit, but that's for later.
Changing this line from self_.advance_search("")
to self_.update_search_matches()
seems to work and avoids doing some extra stuff. Interestingly, it doesn't work for set_case_sensitive
and set_gap_search
above. But anyway, I think update_search_matches
is good here.
src/app_state.rs
Outdated
pub fn accessed(&self) -> SystemTime { | ||
match &self.metadata { | ||
Some(m) => m.accessed().unwrap_or(SystemTime::UNIX_EPOCH), | ||
None => SystemTime::UNIX_EPOCH, | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
While testing this, I noticed several times that the "accessed" time doesn't seem very reliable, at least on Ubuntu. For example, I was browsing around, and suddenly all folders in by Documents folder had their accessed time set to the current time. This happened a couple of times. I'm not sure why this is happening (maybe because tere
listed the folder and this marked all folders as accessed?), but I'm now thinking if the accessed
option could or should be left out. If suddenly all folders have the same accessed time (and are apparently sorted in inverse alphabetical order as a result), it doesn't make much sense to sort by it. Is it important to you to sort by accessed time? Does this same happen to you?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, according to this documentation, the accessed time on Windows doesn't contain the time of day, just the date. So it's quite inconsistent across platforms, and not a very meaningful thing to sort by. Now I'm definitely convinced that we should remove it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree. I will remove it on my next push.
Oh yeah and I also tried to create some unit tests for this, but you're right, modifying the timestamp of a |
src/settings.rs
Outdated
impl fmt::Display for SortMode { | ||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { | ||
let text = match self { | ||
SortMode::Name => "name", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SortMode::Name => "name", | |
SortMode::Name => "name", |
I went ahead and implemented these fixes myself, I hope you don't mind. I'll do another rebase and then merge this. |
Co-authored-by: mgunyho <[email protected]>
Co-authored-by: mgunyho <[email protected]>
Co-authored-by: mgunyho <[email protected]>
Co-authored-by: mgunyho <[email protected]>
Co-authored-by: mgunyho <[email protected]>
Based on my experience, the access time is too fickle to be useful for sorting. Also, on Windows, only the date is preserved, not the time
Thanks a lot! |
- Add option to toggle filter search mode while the app is running, the default shortcut is `Alt-f` (Github #59) - Added option to sort directory listing by creation and modification date in addition to the name. Can be changed with the `--sort` CLI option and with the default shortcut `Alt-s`. (Thanks @joshrdane, Github #64) - Added "normal search anywhere" search mode with the `--normal-search-anywhere` or `-N` CLI option. - The `--no-gap-search` option has been renamed to `--normal-search`. The old option will still work, but it will display a warning - Home / end (i.e. `CursorTop` / `CursorBottom`) now work also while searching - Bugfixes related to drawing (Github #65) - Fixed last character of rows not being drawn, both in the main screen and help screen (at least on some terminal emulators) - Fixed broken bolding in the help screen if the wrapping happens at `/` - Fixed broken highlighting if the last character of a symlink is matched in a search - Fixed drawing bug when info message is longer than the terminal window width - Improved scrolling / cursor position behavior in filter search mode - Fix footer not updating when pressing home / end
commit 6662169204305e5febb1ee1ecb0027e9047ae5b5 Author: mgunyho <[email protected]> Date: Sun Jan 8 21:33:31 2023 +0200 Update copyright year commit 3155fc53d46798c652c214f2dc32de38eb682d7f Merge: b2e5d67 424265e Author: mgunyho <[email protected]> Date: Sun Jan 8 21:07:01 2023 +0200 Version 1.4.0 - Check if the app is being run for the first time (based on whether the history file exists, and a bit of additional simple logic), and if so, prompt the user to confirm that they have updated their shell configuration (Github #83) - If the app panics/crashes, the terminal state is properly reset, so it shouldn't produce garbled ouptut anymore - Upgrade `clap` dependency to latest version - Small improvements to setup instructions and user manual - Footer error message is not cleared when search is updated, only when changing the folder commit b2e5d674d2f4497119d058c18952807989445aa5 Author: mgunyho <[email protected]> Date: Sun Jan 8 21:06:12 2023 +0200 Update release checklist commit 424265e4622c7a3685429bff8172f5bc182d0dfd Author: mgunyho <[email protected]> Date: Sun Jan 8 21:05:16 2023 +0200 Update release date for 1.4.0 commit b76ba3e4d3ea03df236fdce1eb0628bb87e75926 Author: mgunyho <[email protected]> Date: Sun Jan 8 21:04:49 2023 +0200 Bump version number commit 6b0f886829fcd65c366610872eb78003cb386b28 Author: mgunyho <[email protected]> Date: Sun Jan 8 21:02:05 2023 +0200 Cleanup commit f320bfdfbc68a41770ec80bfe19a09ae84a595b8 Author: mgunyho <[email protected]> Date: Sun Jan 8 20:52:54 2023 +0200 Update comments commit b0a5e6cfa90d5b52c7ae1de89f8a259e1d944ad8 Merge: 06d7b7a e16c9f5 Author: mgunyho <[email protected]> Date: Sun Jan 8 21:01:16 2023 +0200 Reset terminal state in case of a panic So that we don't get garbled output in the case of a crash. This is done using a custom struct that calls terminal cleanup functions on drop, similar to scopeguard, but it ensures that the panic hook (i.e. printing the error message) is called after the cleanup, so that the error message is not lost in the alternate screen. There's also some kinda unrelated formatting changes in `ui/mod.rs`. See github issue #84 commit e16c9f515857f4aeeb4a0c331365086ac54a35c8 Author: mgunyho <[email protected]> Date: Sun Jan 8 20:01:10 2023 +0200 Rustfmt commit 83c2d6d2547c6747ec1a4dd0c90151b521103583 Author: mgunyho <[email protected]> Date: Sun Jan 8 19:53:27 2023 +0200 Rustfmt commit 4601447ad2b7d87bf6c53b6298e0e9ea2a68e7b2 Author: Marton Gunyho <[email protected]> Date: Mon Jan 2 09:25:28 2023 +0200 Update changelog commit 4c8f543e908f9722f3acde2635e7b494f31927fe Author: mgunyho <[email protected]> Date: Sat Dec 31 17:56:57 2022 +0200 Update comments commit 179e8b3848814ee15b2a80c8e79e9a1179845888 Author: mgunyho <[email protected]> Date: Sat Dec 31 17:48:12 2022 +0200 Rustfmt commit 138ac8cb765bb227bdcf2163c3b220ff23821bc9 Author: mgunyho <[email protected]> Date: Sat Dec 31 17:44:07 2022 +0200 Rustfmt commit 74a6252f49527a34fce82196f7fa3a33cdd502b7 Author: mgunyho <[email protected]> Date: Sat Dec 31 17:42:52 2022 +0200 Fix indentation commit b932bca3e14201cd6e71430879b7fe629f15b788 Author: mgunyho <[email protected]> Date: Sat Dec 31 17:40:04 2022 +0200 Basic rewrite of main function using guards commit e735fc0eb36f3d79b9db21972942a72f7d99822f Author: mgunyho <[email protected]> Date: Sat Dec 31 17:34:58 2022 +0200 Make new() public Oops commit 4ac1af1a86c655aa8bd14349f0c9d4c10a5b0c16 Author: mgunyho <[email protected]> Date: Sat Dec 31 17:25:23 2022 +0200 Update documentation commit 1a6308ca825800eb7891bd8ad95de7c34d94bf4b Author: mgunyho <[email protected]> Date: Sat Dec 31 17:24:49 2022 +0200 Move catch_unwinds to inner scopes, works correctly now with FnOnce commit 25bb991603a3641ea718df53736bde2efe8ab3ad Author: mgunyho <[email protected]> Date: Sat Dec 31 17:23:58 2022 +0200 Rework guard to use FnOnce commit 4197b8c4073e851e0a1fb66818074e82c428b87a Author: mgunyho <[email protected]> Date: Sat Dec 31 17:10:57 2022 +0200 Add more tests for panic guard commit 3caef4c2c83f41c322b9a7b7ce06f8464486e866 Author: mgunyho <[email protected]> Date: Sat Dec 31 16:49:45 2022 +0200 Fix implementation commit 71a1458aafc1468062b64c02276028456dea2535 Author: mgunyho <[email protected]> Date: Sat Dec 31 16:49:27 2022 +0200 Fix test threading problem using mutex, split into separate tests Also, had to put catch_unwind outside guards to make it work... commit a6a09a529cff4820df40d971619080f768ccdd23 Author: mgunyho <[email protected]> Date: Sat Dec 31 10:34:52 2022 +0200 WIP: add module for panic guard struct, trying to test it, but no success commit 06d7b7a4908e99ee4a62f5ac1d23a3cc8d279260 Author: mgunyho <[email protected]> Date: Sun Jan 8 19:48:18 2023 +0200 Rustfmt commit b4dd44b5773d54bbd83622b8dfd41838e6f4b583 Merge: 942d991 16ed713 Author: mgunyho <[email protected]> Date: Thu Dec 29 21:38:25 2022 +0200 Update clap to version 4 This enables panic catching, and also slightly decreases binary size. commit 16ed713ae4425c634d8c105f371344c43f0c3bdc Author: mgunyho <[email protected]> Date: Thu Dec 29 21:38:20 2022 +0200 Update changelog commit e07f978aa8f6a765b8d96bc48edaa38e368afc62 Author: mgunyho <[email protected]> Date: Thu Dec 29 18:21:44 2022 +0200 Use get_flag instead of awkward if let + get_one commit d6734c842cd63f2af101e7fb7a5ba3c3dd99c518 Author: mgunyho <[email protected]> Date: Thu Dec 29 17:25:24 2022 +0200 Fix usage display commit dc69a4676b99cdb5639bf4fd60044e7a95eba19c Author: mgunyho <[email protected]> Date: Thu Dec 29 17:19:04 2022 +0200 Remove repetition commit 031081e78f3769c923945f2c1518db3717bb184a Author: mgunyho <[email protected]> Date: Thu Dec 29 17:17:08 2022 +0200 Fix override behavior introduced by clap 4 commit cbd6115810e3f3a0f8176e9cf01f99bd6536eb2f Author: mgunyho <[email protected]> Date: Thu Dec 29 17:06:30 2022 +0200 Don't leak help string, no longer necessary commit 73435caea10e7ae4e6da84df3f5c25bf785410b0 Author: mgunyho <[email protected]> Date: Thu Dec 29 17:03:34 2022 +0200 Fix clippy commit 1b059bc8bc1e65cba21652b1a4d721be80fe9c9e Author: mgunyho <[email protected]> Date: Thu Dec 29 17:03:23 2022 +0200 Fix code to be compatible with clap 4 commit 532662aaec5aa8b51ebdf381bd00572ad6901d6d Author: mgunyho <[email protected]> Date: Thu Dec 29 16:57:01 2022 +0200 Update clap to version 4 commit 39085c06f914de1ddb43f67143bb62d82587082c Author: mgunyho <[email protected]> Date: Thu Dec 29 16:51:42 2022 +0200 Fix deprecation warning for mouse option commit ff86ad937c7a0e0ff2de1e50a35535d0a0209871 Author: mgunyho <[email protected]> Date: Thu Dec 29 16:35:05 2022 +0200 Parse sort mode using clap derive This somewhat entangles the setting parsing with clap, but feels definitely more elegant and correct. I should probably do something similar to other enum-like options. commit e50cc73be24ae2683b62f46c78c51a657863e7e6 Author: mgunyho <[email protected]> Date: Thu Dec 29 16:34:23 2022 +0200 Add clap derive feature commit b44e93877e48e7a876a199a39ac6df2a44fe7ba9 Author: mgunyho <[email protected]> Date: Thu Dec 29 15:33:00 2022 +0200 Remove deprecated multiple_occurrences commit 3b062e68343ae0ca270883ebbb900a2c1e79b643 Author: mgunyho <[email protected]> Date: Thu Dec 29 15:30:12 2022 +0200 Add tests for sort mode and mouse mode commit a39dfe1b0b0b973a8be3a0783fa64ffe2358f0f1 Author: mgunyho <[email protected]> Date: Thu Dec 29 15:24:23 2022 +0200 Fix deprecated hidden commit ace73a76b8ca6f258c7e8f68d057a2d5b4873461 Author: mgunyho <[email protected]> Date: Thu Dec 29 15:23:09 2022 +0200 Fix flag application commit 2dbfe1e0844695c7e6ad5733b64b43f9b3cb5d1d Author: mgunyho <[email protected]> Date: Thu Dec 29 15:21:14 2022 +0200 Fixup: argactions commit 781707291c31b7174d0f2f9d25a8227874f3b345 Author: mgunyho <[email protected]> Date: Thu Dec 29 15:09:06 2022 +0200 Fix clear-default-keymap check commit d356bd2cee437a1ce98ba0ca3c86f322a6a7e057 Author: mgunyho <[email protected]> Date: Thu Dec 29 15:08:15 2022 +0200 Fix use of deprecated ArgActions commit ba2bdce79ca8e3f1b03f8014258a6d80dc597312 Author: mgunyho <[email protected]> Date: Thu Dec 29 15:00:47 2022 +0200 Add tests for old cli options commit 97eb2d05750b7924b713370ad0f292f90019feba Author: mgunyho <[email protected]> Date: Thu Dec 29 15:00:31 2022 +0200 Fix typo in enum name commit f2c370820603f6f5cf5640b514a3b8dfa23ee1ca Author: mgunyho <[email protected]> Date: Thu Dec 29 14:57:48 2022 +0200 Update settings enum derives for testing commit 4b609349c8556a70d61f5f818c4fc3b461cb2cc5 Author: mgunyho <[email protected]> Date: Thu Dec 29 14:33:59 2022 +0200 Use full overrides_with for all options This makes the options consistent and is easier to understand commit 9bcb998217999761bf831651972ab184d52df0e0 Author: mgunyho <[email protected]> Date: Thu Dec 29 14:31:52 2022 +0200 Clap deprectation: replace App -> Command commit 5b79cabf22f00bdf1240307ac98bd824cc7b6c45 Author: mgunyho <[email protected]> Date: Thu Dec 29 14:29:50 2022 +0200 Explicitly set argument actions as per the clap migration guide commit 96210d19fbd13330367c6951e09a8557d9af66d6 Author: Marton Gunyho <[email protected]> Date: Thu Dec 29 11:44:33 2022 +0200 Add CLI test as recommended by clap v4 migration guide commit 942d991fb940b149aad4adbae98b78a3cf4364c8 Author: Marton Gunyho <[email protected]> Date: Thu Dec 29 09:25:39 2022 +0200 Update changelog commit 1350d567bf58798bb4a2664db993ac056d2c7a2d Author: Marton Gunyho <[email protected]> Date: Thu Dec 29 09:25:30 2022 +0200 Mention esc to exit in user guide commit f99b602d6047941ac9ae4d25145cc4209163e431 Merge: eef493b 0de7df9 Author: Marton Gunyho <[email protected]> Date: Thu Dec 29 09:10:58 2022 +0200 Don't clear footer error message when search is updated This is slightly better UX IMO. commit 0de7df91ab315353c569333522ba8f93dc3bdc54 Author: Marton Gunyho <[email protected]> Date: Thu Dec 29 09:10:45 2022 +0200 Update changelog commit ef20b08fb843638c3a705a0e75a4f8e8e9347226 Author: Marton Gunyho <[email protected]> Date: Thu Dec 29 09:09:44 2022 +0200 Don't clear error message when search is updated commit eef493b8e798896bb16064897884390109b305d9 Merge: e91a2b8 d0aa02d Author: Marton Gunyho <[email protected]> Date: Thu Dec 29 08:47:15 2022 +0200 Check if the app is being run for the first time If the app is being run for the first time, prompt the user to confirm that they have updated their shell config. Hopefully this clarifies the setup process. The check is done based on whether the history file exists, or if the user explicitly passes a nonexistent history file. See Github issue #83 commit d0aa02d2bc564e3533349b114ef4fc5ed7f2589f Author: Marton Gunyho <[email protected]> Date: Thu Dec 29 08:46:38 2022 +0200 Update changelog commit 4430ff46a94dee8f638e7a44b01558647bf4760a Author: Marton Gunyho <[email protected]> Date: Thu Dec 29 08:38:50 2022 +0200 Rename installation_check module to first_run_check commit 858daa2b499adaacca4c5c4ea0de77e3c8ed75bf Author: mgunyho <[email protected]> Date: Thu Dec 29 00:19:11 2022 +0200 Update docstring commit 1fe2da9325fd7ba27e3a2daeaf7f79de9d9cdb33 Author: mgunyho <[email protected]> Date: Thu Dec 29 00:18:42 2022 +0200 Formatting commit f828ed1fe06cee14368a648b0c8507b30a16dd94 Author: mgunyho <[email protected]> Date: Thu Dec 29 00:58:07 2022 +0200 Tweak wording commit 74a46d6a243998f51e0bf0d620734b9322688d79 Author: mgunyho <[email protected]> Date: Thu Dec 29 00:56:16 2022 +0200 Read bash/zsh shell snippet from README and display it in welcome message commit 5f7a69f1544bea06a828f72052c07372172876ec Author: mgunyho <[email protected]> Date: Thu Dec 29 00:30:23 2022 +0200 Move README_STR to markup_render module, so that we can use it elsewhere as well commit ed397751a775300bd71a1de476a4b26500ef0644 Author: mgunyho <[email protected]> Date: Thu Dec 29 00:16:51 2022 +0200 Add minimal working implementation of first run prompt commit bf7ba506bb572a9168daa93101507ca31f4ddbe9 Author: mgunyho <[email protected]> Date: Thu Dec 29 00:15:30 2022 +0200 Remove unused import commit 6bf388778ccf46e461a232ca6eced30f94cffdd5 Author: mgunyho <[email protected]> Date: Thu Dec 29 00:13:25 2022 +0200 Add error variant for cancelling the first run prompt commit f4697e2c152a7dd48be21d0647062356fd7221f3 Author: mgunyho <[email protected]> Date: Wed Dec 28 23:31:25 2022 +0200 Rustfmt commit aa4c18a474a83a5b2a569d6c7857f7b99eb42823 Author: mgunyho <[email protected]> Date: Wed Dec 28 23:28:26 2022 +0200 Move functions related to wrapping and rendering markup to separate module commit d1af4b68c26c638eee99439a7af77d27eaa4838e Author: mgunyho <[email protected]> Date: Wed Dec 28 21:56:51 2022 +0200 Remove version file stuff, it's not needed for now Needless optimization for possible future use case commit ae3374c4077a99a80eed4ac7e70bea0c120e17db Author: mgunyho <[email protected]> Date: Wed Dec 28 10:53:21 2022 +0200 Pass stderr to first run prompt commit 9af05a728619a22003f4291ff06b04071188b1a6 Author: mgunyho <[email protected]> Date: Wed Dec 28 10:51:35 2022 +0200 Update documentation commit dfc22129506c1ea69e9a1b4080ad9d3916f48cc6 Author: mgunyho <[email protected]> Date: Wed Dec 28 10:51:01 2022 +0200 Implement write_version_file and use it commit ea9017b7e8b314ed9f18fb049fe0a8a951088187 Author: mgunyho <[email protected]> Date: Wed Dec 28 10:39:48 2022 +0200 Explain first run detection logic and reorder conditions to be more easily understandable commit 3e3538adc1372bc6d4dd7fd30ce954545cfe7535 Author: mgunyho <[email protected]> Date: Wed Dec 28 10:32:26 2022 +0200 Do first run check in main commit 66e091c39305fd6eba219c1d88a717cd3a0ffe79 Author: mgunyho <[email protected]> Date: Tue Dec 27 22:35:13 2022 +0200 Add module for checking whether we're running for the first time or not commit e91a2b8b1cc4f2a7fe3df10ac673616842b1134b Merge: b31029e 4d35bcd Author: mgunyho <[email protected]> Date: Wed Dec 28 23:12:17 2022 +0200 Merge branch 'master' into develop commit 4d35bcd178cbab7531e244aac2dbab6432d1ce16 Author: mgunyho <[email protected]> Date: Wed Dec 28 22:28:07 2022 +0200 Tweak wording commit b3e5e417adad076a70a6812c14e2da08127cfd23 Author: mgunyho <[email protected]> Date: Wed Dec 28 22:26:28 2022 +0200 Adjust punctuation commit ee5ac052932fb5a24d362ce981d03de578ec08d4 Author: mgunyho <[email protected]> Date: Wed Dec 28 22:24:09 2022 +0200 Fix indentation commit 9c4710a1cb82971a3ee58d3fcdcdfe4b1857041f Author: mgunyho <[email protected]> Date: Wed Dec 28 22:20:58 2022 +0200 Clarify setup instructions; add subheaders for each step Inspired by starship README. commit b31029e2bd51cab7b434d5fcfad3108d8184a306 Merge: 9645a41 ca4c9da Author: mgunyho <[email protected]> Date: Wed Dec 28 10:17:12 2022 +0200 Untangle app initialization Reorganize initialization to be linear instead of nested: each init function returns the object they initialized, and takes the object from the previous initializer step. I think this should be easier to understand, debug, and test. This also prepares us for adding additional steps to the initialization pipeline, such as checking if the app has been run before. commit ca4c9dad7fc2ae3e37d1d51cc5fba4c6e610adff Author: mgunyho <[email protected]> Date: Wed Dec 28 10:16:11 2022 +0200 Minor cleanup based on rustfmt commit e117d2750200133724c077c01a2d8af1acacd0b5 Author: mgunyho <[email protected]> Date: Wed Dec 28 10:04:58 2022 +0200 Return current path from main event loop, cleans up main commit 0633335e233b8f4e1d40e62b91bab73c4baddf7a Author: mgunyho <[email protected]> Date: Wed Dec 28 09:58:55 2022 +0200 Return TereError from CLI arg parsing, cleans up main commit 5c27a8a7c21a081ce6673c45112937a9634576ac Author: mgunyho <[email protected]> Date: Wed Dec 28 09:56:33 2022 +0200 Don't pass window dimensions in init, cleans up main function commit c80e4bb52bf0b8902e6968adc00256e1e0c3133d Author: mgunyho <[email protected]> Date: Wed Dec 28 09:49:22 2022 +0200 Fix module path in test commit 05169d285333fc31e4504d4b23c122ae0f825307 Author: mgunyho <[email protected]> Date: Wed Dec 28 09:49:12 2022 +0200 Cleanup commit 79da17c1f06e568cca7575e050564c05568f468f Author: mgunyho <[email protected]> Date: Wed Dec 28 09:48:48 2022 +0200 Pass initialized settings instead of CLI args to app state init commit 2075d5b38806b0e07f4b0191e2f72f5dacbc1840 Author: mgunyho <[email protected]> Date: Wed Dec 28 09:31:02 2022 +0200 Pass initialized state instead of CLI args to tui init Also move state initialization to main module commit 9645a41ca229ee239712741880ead6ddc0ea19c6 Author: Marton Gunyho <[email protected]> Date: Fri Dec 23 08:02:32 2022 +0200 Improve comments commit 14f2cdfd8a5d158f2e8f3a4fb7ee4095fdaec932 Merge: 19d3fe1 6a61141 Author: mgunyho <[email protected]> Date: Tue Dec 6 15:10:27 2022 +0200 Version 1.3.1 - Fixed a bug where `?` didn't show the help screen on Windows by default commit 6a611418c9fa1732f2297ba528387cf790eb6e02 Author: mgunyho <[email protected]> Date: Tue Dec 6 15:10:09 2022 +0200 Bump version number commit 84a72ada2f22219dc94d2323affd894c43123425 Merge: c5710bd 949f98d Author: mgunyho <[email protected]> Date: Tue Dec 6 15:07:39 2022 +0200 Fix handling of question mark on windows in default key config Fixes #81 on github. commit 949f98d024aaa27d165c7b52cacb0763ecc45fe1 Author: mgunyho <[email protected]> Date: Tue Dec 6 15:05:33 2022 +0200 Update changelog commit 43b09b17a5ab5cd778e059fd8479c04df3b6d9b9 Author: Marton Gunyho <[email protected]> Date: Mon Dec 5 13:04:52 2022 +0200 Fix mapping of question mark to help screen on Windows commit c5710bd5a614859b5ae67e5853660a76e47c94a2 Merge: f50da4b 19d3fe1 Author: mgunyho <[email protected]> Date: Tue Dec 6 14:45:50 2022 +0200 Merge branch 'master' into develop commit 19d3fe1008ef72e7ae74e12e9888b9cf2deac1ee Author: mgunyho <[email protected]> Date: Wed Nov 16 21:44:53 2022 +0200 Make punctuation consistent commit b128412a667f8d54fdb0d8183261c801f92af340 Merge: 67cab29 ae3e00d Author: mgunyho <[email protected]> Date: Thu Nov 3 11:03:25 2022 +0200 Merge pull request #80 from Zliced13/patch-1 Changed README.md to include installation instructions with Scoop, a command line package manager for Windows. commit ae3e00d55b047e162165a95d1ac2d7f61107cfb5 Author: Kris Schneider <[email protected]> Date: Wed Nov 2 18:31:39 2022 -0600 Added Scoop installation instructions. commit 67cab29ae5b5145bc3382aaf22e8bc9d3010aee7 Merge: 39c4e04 ff0222c Author: mgunyho <[email protected]> Date: Sun Oct 23 22:17:04 2022 +0300 Update README.md about installation on Arch Linux Merge pull request #78 from orhun/docs/update_arch_linux_instructions commit ff0222c1f992e1f54bb36763ae6ca915de319c1f Author: Orhun Parmaksız <[email protected]> Date: Sun Oct 23 20:22:41 2022 +0300 Update README.md about installation on Arch Linux commit 39c4e04f1f657584b66e1502faa0752876c99339 Merge: 6f4d580 653ffc6 Author: mgunyho <[email protected]> Date: Thu Oct 20 20:16:27 2022 +0300 Merge pull request #77 from joedf/patch-1 README: fix Windows CMD for spaces in dir names commit 653ffc6c9d31c580a7e7f7fdf85604723ab15004 Author: Joe DF <[email protected]> Date: Thu Oct 20 13:13:04 2022 -0400 README: fix Windows CMD for spaces in dir names commit 6f4d5806079a6cb02bc3eeb4676a21c26282abcb Author: mgunyho <[email protected]> Date: Sat Oct 15 18:19:19 2022 +0300 Update release checklist commit e5599eaeb11ac21bd14c4e9a6f924d57f3578cf8 Merge: 5dfbe06 f50da4b Author: mgunyho <[email protected]> Date: Sat Oct 15 18:07:15 2022 +0300 Version 1.3.0 - Add option to toggle filter search mode while the app is running, the default shortcut is `Alt-f` (Github #59) - Added option to sort directory listing by creation and modification date in addition to the name. Can be changed with the `--sort` CLI option and with the default shortcut `Alt-s`. (Thanks @joshrdane, Github #64) - Added "normal search anywhere" search mode with the `--normal-search-anywhere` or `-N` CLI option. - The `--no-gap-search` option has been renamed to `--normal-search`. The old option will still work, but it will display a warning - Home / end (i.e. `CursorTop` / `CursorBottom`) now work also while searching - Bugfixes related to drawing (Github #65) - Fixed last character of rows not being drawn, both in the main screen and help screen (at least on some terminal emulators) - Fixed broken bolding in the help screen if the wrapping happens at `/` - Fixed broken highlighting if the last character of a symlink is matched in a search - Fixed drawing bug when info message is longer than the terminal window width - Improved scrolling / cursor position behavior in filter search mode - Fix footer not updating when pressing home / end commit f50da4bed95681d065a2d9a5339142c665746bef Author: mgunyho <[email protected]> Date: Sat Oct 15 18:06:31 2022 +0300 Add release date for v1.3.0 commit aefb5172124975622d58c444ee5841492fec6f5e Author: mgunyho <[email protected]> Date: Sat Oct 15 18:06:14 2022 +0300 Update release checklist commit a4c234a2112b85d3a0d4826a7d0775cbd0af265f Author: mgunyho <[email protected]> Date: Sat Oct 15 18:04:20 2022 +0300 Bump version number commit 1092c4d5e0ac4c244dcb00d7caa198c87656a967 Author: Marton Gunyho <[email protected]> Date: Fri Oct 14 08:22:01 2022 +0300 Add a todo commit bfb5287b7cae3a810926d872d81b2b6083cacc16 Merge: 2e24af0 2baaa26 Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 22:11:07 2022 +0300 Add 'normal search anywhere' Or in other words "normal search but not from start". Fixes #63 on github. commit 2baaa265bf8002d34bce7b1d19a91aa3d32193de Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 21:58:54 2022 +0300 Fix warning issued by clippy commit 53907b7f59d69ccb62d4f4956332875048d7cc7d Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 21:52:44 2022 +0300 Mention normal search anywhere and deprecation of no-gap-search in changelog commit da26cd24c015e0d5d9f9a766d0a11aa362cbb81b Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 21:52:16 2022 +0300 Document --normal-search-anywhere in README commit d70865735842772ae35d520ded5e5628e7ee4273 Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 21:51:59 2022 +0300 Updat explanation of gap search modes Still not perfect, but couldn't come up with anything better for now commit 36eeb621d1a8f5a978010acec82fe3a136bdbb77 Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 21:10:26 2022 +0300 Improve wording of help text commit 6c459a35b583da285020ff75e0d262964f12315c Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 20:44:13 2022 +0300 Apply gap search mode option to settings, add warning for no-gap-search commit 278af7011234f50d0a320c9958fe00b436235b59 Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 20:43:22 2022 +0300 Update CLI overrides commit 940ad8a9f1e72b39e284d89ff70f365deb586ab4 Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 20:40:23 2022 +0300 Add long help to normal-search-anywhere commit 31403d1c276398d2986c4500ba869d7d28816baa Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 17:20:48 2022 +0300 Add normal-search-anywhere CLI option commit 6c5380c27159b7d987f197e12679ae9d923cf82c Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 17:09:26 2022 +0300 Rename no-gap-search to normal-search commit cb5933b5e4e0f3004f79dd8d112c1ba63eb2d975 Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 18:46:34 2022 +0300 Add a test for deprecated no-gap-search commit a055f81e1cae0d24a4657352fc3dcd599f20d68a Author: Marton Gunyho <[email protected]> Date: Fri Oct 7 17:43:05 2022 +0300 Add enum variant for 'normal search anywhere' commit 22d25c1102c18ba2813a69e7335045ba905a8ab0 Author: Marton Gunyho <[email protected]> Date: Fri Oct 7 09:17:25 2022 +0300 Rename NoGapSearch to NormalSearch in enum commit 073bf080502aa82fafd85fea4f8db058ce198f1a Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 08:55:48 2022 +0300 Fix tests commit 09467cd006fee5468877448f6aef3ccdccaca1c1 Author: Marton Gunyho <[email protected]> Date: Thu Oct 13 08:43:01 2022 +0300 Revert "Add macro for formatting deprecation message" We don't need this for now, but it's good to have it in the history in case we do. This reverts commit 4929133dd3b8545dbe2074836596bbacabc39def. commit 4929133dd3b8545dbe2074836596bbacabc39def Author: mgunyho <[email protected]> Date: Sun Oct 9 05:56:18 2022 +0300 Add macro for formatting deprecation message commit c141c09a54e334cf52ccc2876262e126a31ff86d Author: mgunyho <[email protected]> Date: Sun Oct 9 05:41:14 2022 +0300 Show warnings in info message at startup commit faa8dd38c2291487ff90cd7a64ac91803d5b5a99 Author: mgunyho <[email protected]> Date: Sun Oct 9 05:05:21 2022 +0300 Return a list of deprecation warnings from settings init The warnings are currently just strings commit 1ebaa364665c5defc50b3c20298e54b6d4dc39d4 Author: mgunyho <[email protected]> Date: Sun Oct 9 05:00:59 2022 +0300 Initialize welcome message in app state commit 2e24af0c3e733c8e465398195c15ef0cbcba6fe2 Merge: a2c23fa fa3bd5a Author: Marton Gunyho <[email protected]> Date: Wed Oct 12 08:53:17 2022 +0300 Fix behavior of home/end while searching commit fa3bd5aa37fcd00b311e62c1959a31b1480a13e2 Author: Marton Gunyho <[email protected]> Date: Tue Oct 4 09:32:44 2022 +0300 Update changelog commit b719be7884bb5befee7f26d089cb1847d4ef3322 Author: Marton Gunyho <[email protected]> Date: Wed Oct 12 08:40:16 2022 +0300 Simplify boolean expressions as suggested by clippy commit c46e374b4630b18e5097fe9bc7156939f31363f4 Author: Marton Gunyho <[email protected]> Date: Tue Oct 4 09:30:04 2022 +0300 Rework on_cursor_top_bottom to work also while searching commit a2c23faa6656d9c1a18de36fcc498602a19d35df Merge: eaa54bc 7bf0e16 Author: Marton Gunyho <[email protected]> Date: Wed Oct 12 08:34:10 2022 +0300 Fix footer update when pressing home/end commit 7bf0e163a690e74b9d4bb8ab43dd1be472eeb914 Author: Marton Gunyho <[email protected]> Date: Fri Sep 30 08:16:20 2022 +0300 Update changelog commit f2575f80de4156b17f24e8d420633c981932b5f8 Author: Marton Gunyho <[email protected]> Date: Fri Sep 30 08:15:22 2022 +0300 Move on_curosr_top_bottom to be after other cursor-matnipulation methods commit 032a59d41e6620a940cc4d450707540a32384dee Author: Marton Gunyho <[email protected]> Date: Fri Sep 30 08:12:56 2022 +0300 Redraw footer on home/end commit eaa54bc3f22beeef65da3945d40fc58d8f69f923 Merge: be1f2b8 4ce4d56 Author: Marton Gunyho <[email protected]> Date: Wed Oct 12 08:30:15 2022 +0300 Merge branch 'master' into develop commit be1f2b8697f40c4f4ceba4597385d6384cd00b03 Merge: 66d5c54 bdc60d3 Author: Marton Gunyho <[email protected]> Date: Wed Oct 12 08:08:48 2022 +0300 Allow sorting by creation and modification time Add CLI option --sort, which can be set to name, created, or modified. Notes - alt-s cycles the sorting mode - Setting the sort flag only sets the starting sorting method. - As of right now, history does not keep track of which sorting method was used last per-folder. - There is not currently a column displaying the dates associated with the sorting methods when sorting is done by date. - The sorting method is shown in the footer as sort:<type> with an abbreviation, to avoid cluttering the info bar. - The sorting is always newest first for now. See PR #64 on github Fixes #27 on github commit bdc60d360ccd9b99c1b3d87748928ba772fc4b53 Author: Marton Gunyho <[email protected]> Date: Wed Oct 12 08:00:15 2022 +0300 Tweak comments commit 083efffd333c5efbddc00c71d46dba48cafa3051 Author: Marton Gunyho <[email protected]> Date: Wed Oct 12 07:58:56 2022 +0300 Remove unnecessary whitespace commit 5a188b1a3a92709b1f4f2b120dcaa80764b3e74b Author: Marton Gunyho <[email protected]> Date: Wed Oct 12 07:47:36 2022 +0300 Use update_search_matches instead of advance_search with empty string commit 42437730c95c9e6ab3b9799eeb0d24ca2bee72f1 Author: Marton Gunyho <[email protected]> Date: Thu Oct 6 08:50:04 2022 +0300 Fix alignment commit 4883ae968c169ee3b988d27e728118a03205dc4d Author: Marton Gunyho <[email protected]> Date: Thu Oct 6 08:49:23 2022 +0300 Remove sorting by access time Based on my experience, the access time is too fickle to be useful for sorting. Also, on Windows, only the date is preserved, not the time commit 9bad12803e122187040e2fe403b8d6680a05754d Author: Marton Gunyho <[email protected]> Date: Fri Oct 7 08:44:18 2022 +0300 Mention default shortcut in the output of --help commit 66a421f2665f723d1d8df3dfee7e408b600c6838 Author: Marton Gunyho <[email protected]> Date: Fri Oct 7 08:44:06 2022 +0300 Mention sorting in readme commit 42c6423b6a8d0d18ab1a9e3925e3b84f19576aa0 Author: Marton Gunyho <[email protected]> Date: Fri Oct 7 08:18:37 2022 +0300 Mention sorting in changelog commit bed2361e0bde70dc35881f2e4150e0edd5d92d17 Author: joshrdane <[email protected]> Date: Thu Oct 6 17:20:59 2022 -0400 Code cleanup Co-authored-by: mgunyho <[email protected]> commit d05d5f17626c1b52fd0a49a4b096ba84585cd0c1 Author: joshrdane <[email protected]> Date: Thu Oct 6 17:20:12 2022 -0400 Remove unnecessary unwrapping Co-authored-by: mgunyho <[email protected]> commit e45c90fa6122f7ee7ddf5356a9a8b0e2db5acc6c Author: mgunyho <[email protected]> Date: Tue Oct 4 21:18:02 2022 +0300 Remove a redundant todo commit a1e92b187418540699f47658a5440dd4e9acfc5b Author: Joshua Dane <[email protected]> Date: Wed Sep 28 08:45:29 2022 -0400 Correct SortMode logic to support filtering and searching. commit 948da5ecadadb2466575a1bec7efaa28f67e4959 Author: Joshua Dane <[email protected]> Date: Wed Sep 28 08:44:07 2022 -0400 Change adate, cdate, and mdate to accessed, created, and modified respectively. commit a3b411b8b9386885c802bb75785882316f2005f1 Author: Joshua Dane <[email protected]> Date: Wed Sep 28 08:42:26 2022 -0400 Condense footer sort mode commit 0a311cfadf08455c387fa04632d2812b382f3a0c Author: Joshua Dane <[email protected]> Date: Wed Sep 28 08:41:33 2022 -0400 Change ChangeAttributeSortMode to ChangeSortMode commit bf60ccf355df5993b6e55a3580a270add25ce464 Author: Joshua Dane <[email protected]> Date: Fri Sep 23 09:09:27 2022 -0400 Change help text and move 'sort' to desired position commit 2199ba7912cb22df5c28513e66ec6810c1aee425 Author: Joshua Dane <[email protected]> Date: Fri Sep 23 09:08:41 2022 -0400 Utilize unwrap_or commit 9df6cb932f5d87f284c3999678f2db94f6bcd96d Author: Joshua Dane <[email protected]> Date: Fri Sep 23 09:07:31 2022 -0400 Refactor SortMode naming and remove date from attributes commit fee60c768615a1fc555d3f3558a541e496a29b8b Author: joshrdane <[email protected]> Date: Thu Sep 22 20:00:28 2022 -0400 Remove unnecessary space Co-authored-by: mgunyho <[email protected]> commit ad2bec0d5209f6b7dc840ad4a7a4da1b3986b225 Author: joshrdane <[email protected]> Date: Thu Sep 22 20:00:04 2022 -0400 Split long line Co-authored-by: mgunyho <[email protected]> commit 3f527927fe2fe3946a1ddefa9254755ae3a5ede9 Author: joshrdane <[email protected]> Date: Thu Sep 22 19:47:42 2022 -0400 Use unwrap_or for modified time Co-authored-by: mgunyho <[email protected]> commit 70719c951fd4f0039b1815d7ae8b54e5a285de55 Author: mgunyho <[email protected]> Date: Thu Sep 29 21:38:31 2022 +0300 Add sort mode to footer message commit 650434b721e15157a97281ab6f960e3f517668df Author: mgunyho <[email protected]> Date: Thu Sep 29 21:31:55 2022 +0300 Add default shortcut for sort mode change commit 652ed9c7482049a0d9d2b9472d1996984abfa932 Author: Joshua Dane <[email protected]> Date: Fri Sep 16 13:59:14 2022 -0400 Implement cycling attribute sorting mode commit c14dd706b1e55b691efdb7c35f15d52698e747e3 Author: Joshua Dane <[email protected]> Date: Fri Sep 16 13:59:38 2022 -0400 Implement attribute sorting mode action commit 507f24b61de3cec3e6906da7b17666ef9fb39fd7 Author: Joshua Dane <[email protected]> Date: Fri Sep 16 13:49:02 2022 -0400 Implement sort CLI commit 0c56bed0fec2fcdb953c794a809d1ece51885c92 Author: Joshua Dane <[email protected]> Date: Fri Sep 16 22:36:12 2022 -0400 Remove redundant TODO commit 39626b32c3b58c2e3f8a25a1c13fdd3c4d59da71 Author: Joshua Dane <[email protected]> Date: Fri Sep 16 13:48:39 2022 -0400 Implement logic for attr_sort_mode setting commit 57522da1b107c041c04165e048c35729578b0226 Author: Joshua Dane <[email protected]> Date: Fri Sep 16 13:39:30 2022 -0400 Add attr_sort_mode setting commit 0529d2c9b181388597398d7202fb27d6cdfe207c Author: Joshua Dane <[email protected]> Date: Fri Sep 16 09:22:16 2022 -0400 Add SystemTime getters for accessed, created, and modified commit e1f887bddfc8c72c78f8c490847beb9f5159a85c Author: Joshua Dane <[email protected]> Date: Fri Sep 16 08:43:05 2022 -0400 Add AttributeSortMode commit 66d5c54db5f02b6edb0e3169e3dddb1a5e0f5cbb Author: Marton Gunyho <[email protected]> Date: Fri Oct 7 09:06:50 2022 +0300 Add a todo commit 08a15dec7f49d1259aca09d65b09cf514fcbb8a1 Merge: f869879 58d5ca0 Author: Marton Gunyho <[email protected]> Date: Wed Oct 12 07:11:10 2022 +0300 Fix lints, mostly in tests commit 58d5ca05d4a3a4ea82051b515c8ab895067b546c Author: Marton Gunyho <[email protected]> Date: Wed Oct 12 07:00:16 2022 +0300 Fix another clippy warning commit 7173efa592e631eae18ccab85cd12205a095360d Author: Marton Gunyho <[email protected]> Date: Wed Oct 12 06:52:37 2022 +0300 Fix long lines commit 19ae08da9f82bd208faeb963194ae986b1934493 Author: Orhun Parmaksız <[email protected]> Date: Tue Oct 11 20:45:42 2022 +0300 Apply clippy suggestions commit 5dfbe06e5997798495762ad2e3515a444b1ce89e Merge: 4ce4d56 cccb548 Author: mgunyho <[email protected]> Date: Tue Oct 11 07:58:40 2022 +0300 Merge pull request #74 from orhun/docs/update_readme Add AUR installation instructions using paru to README.md commit cccb548203725bc2c4a2de28a4f5057c3a8d5f94 Author: Orhun Parmaksız <[email protected]> Date: Sun Oct 9 21:43:51 2022 +0300 Update README.md about AUR installation commit f869879fb6360c1329facbb3c58619dc1a8f45b0 Merge: f9cd8ab 00a54ee Author: mgunyho <[email protected]> Date: Sun Oct 9 05:46:38 2022 +0300 Fix drawing bug when info message is longer than terminal width commit 00a54ee7ff73aaaecc7006b004f742e66f83e464 Author: mgunyho <[email protected]> Date: Sun Oct 9 05:45:45 2022 +0300 Fix a typo commit c291d0587e65e9dafbe034886dbdceead644a0fd Author: mgunyho <[email protected]> Date: Sun Oct 9 05:45:35 2022 +0300 Update changelog commit c88ddb4b9b10d225d1c1a7c0e059770216cf7030 Author: mgunyho <[email protected]> Date: Sun Oct 9 05:44:10 2022 +0300 Crop info message when drawing commit f9cd8abb74a3e55a0b57a7a79e17967524a3f5c1 Merge: 0c3c678 02d65d7 Author: mgunyho <[email protected]> Date: Wed Oct 5 19:14:47 2022 +0300 Merge pull request #69 from frazar/fix-unnecessary-parenthesis Fix unnecessary parentheses warning commit 02d65d78cb34aa97471a4dace1a22c28b447bdbe Author: Francesco Zardi <[email protected]> Date: Wed Oct 5 17:32:22 2022 +0200 Fix unnecessary parentheses warning commit 0c3c6789e728a7f35be7a24152977e3280c22a46 Merge: bb47988 1f66ce1 Author: Marton Gunyho <[email protected]> Date: Wed Sep 28 17:14:17 2022 +0300 Fix cursor wrapping once again This time the logic should be sound, with the extra tests. commit 1f66ce11828c438706e0a30d9ab0f5b87978f127 Author: Marton Gunyho <[email protected]> Date: Wed Sep 28 17:11:50 2022 +0300 Fix wrapping logic yet again Have to use conversions to isize, otherwise rem_euclid can't do its magic. commit 9cc8f66775a899d9d68ed31e7c039a1f58f5f8af Author: Marton Gunyho <[email protected]> Date: Wed Sep 28 17:11:04 2022 +0300 Add another failing test commit 44dcbf1a968c30214deca63365c2939d6604a293 Author: Marton Gunyho <[email protected]> Date: Wed Sep 28 10:21:52 2022 +0300 Fix wrapping logic commit a59ae88bd707440e6bca0e77e1ac94318379a407 Author: mgunyho <[email protected]> Date: Tue Sep 27 22:46:12 2022 +0300 Add failing test for wrapping search commit bb479884cd2e7c5446496027750b9396e7012d2e Author: mgunyho <[email protected]> Date: Tue Sep 27 22:32:53 2022 +0300 Fix drawing when last character of listing matches commit af981a887822e199b9b0d50da73d4b265a46078f Author: mgunyho <[email protected]> Date: Tue Sep 27 22:29:57 2022 +0300 Update changelog commit 06028a480a8f272157a5d6c91b980ae2067a0551 Merge: 8c373ba b36d0c0 Author: mgunyho <[email protected]> Date: Tue Sep 27 22:24:36 2022 +0300 Improve scrolling logic with filter search Now there should never be items off-screen when advancing the search in the filter search mode. This fixes the bug that was causing the test to fail. While testing this, found another bug in the behavior of the filter search advance/erase, but leaving that for later. commit b36d0c0a6e980f6b61bf92094283fef074ff2355 Author: mgunyho <[email protected]> Date: Tue Sep 27 22:21:45 2022 +0300 Improve wording commit 93835f917afc7deb80be9b3eb7ab0e5326eb5f46 Author: mgunyho <[email protected]> Date: Tue Sep 27 22:21:20 2022 +0300 Remove unused import, apply fix suggested by clippy commit 76e7e038f0f955974309ecde062f34e9ef802e28 Author: mgunyho <[email protected]> Date: Tue Sep 27 22:19:51 2022 +0300 Ignore failing test for now commit 1ca933359f67f7d10496501bc2a5fad2858fd0cc Author: mgunyho <[email protected]> Date: Tue Sep 27 22:19:22 2022 +0300 Add a failing test This is out of the scope of this fix, has probably more to do with how advance_search / erase_search do scrolling and not with how move_cursor works. commit f5a61585853cedcf17e2637650636575fba1e07c Author: mgunyho <[email protected]> Date: Tue Sep 27 22:18:06 2022 +0300 Fix off-by-one errors, all tests pass now commit 013f4f99cab8d847fcd48678ee67b5b56d18703c Author: mgunyho <[email protected]> Date: Tue Sep 27 21:44:56 2022 +0300 Start reimplementing move_cursor with new logic Scrolling2 test that used to fail passes now, but there is some other off by one error commit eff46a3b30a8c4dea93decd3a65962082c6d82bd Author: Marton Gunyho <[email protected]> Date: Tue Sep 27 08:13:48 2022 +0300 Fix a typo commit 4ce4d56f975c147d3cca91107e6f8184858a38e1 Merge: bac4977 024a36e Author: mgunyho <[email protected]> Date: Sun Sep 25 11:15:54 2022 +0300 Add instructions for cross-compilation commit 024a36ed0d3023d1eb6b3929ed2e414214d239e9 Author: mgunyho <[email protected]> Date: Sun Sep 25 11:06:38 2022 +0300 Mention that macOS is not available for now commit adce1065e552704b049216f5d68863d596d4ac72 Author: mgunyho <[email protected]> Date: Sun Sep 25 11:00:38 2022 +0300 Enable ARM64 compilation commit 4ca537655f0a507ef02f327d73f06ebf5b640367 Author: mgunyho <[email protected]> Date: Sun Sep 25 10:59:42 2022 +0300 Add cargo config file for ARM64 linker commit 6e60caa93f58697ea596190667e748e69fd47c86 Author: mgunyho <[email protected]> Date: Sun Sep 11 15:58:46 2022 +0300 Add instructions for cross-compilation (incomplete) commit 0180755375b34b48791abbf6cf856f0d11335303 Author: mgunyho <[email protected]> Date: Sat Aug 6 10:19:50 2022 +0300 Fix indentation and windows build in build script commit 9030f86e5bf4a47455071dd710f7af77d339e12b Author: mgunyho <[email protected]> Date: Sat Aug 6 10:02:34 2022 +0300 Add more targets to build script commit bac497757ce988cd1aed7f6f9015dbf7cf2c7a61 Author: mgunyho <[email protected]> Date: Sun Sep 25 10:12:46 2022 +0300 Fix typo commit 31d59584db89cadf6dcee415f463c188884ac033 Author: mgunyho <[email protected]> Date: Sun Sep 25 10:12:38 2022 +0300 Emphasize shell config more in the README See Github issue #66 commit 8c373ba090c27aede2b3ee756a6853a4f7f99623 Merge: 6b2ab9f 3d841df Author: Marton Gunyho <[email protected]> Date: Wed Sep 21 18:25:15 2022 +0300 Bugfixes to drawing - Fixed last character of rows not being drawn, both in the main screen and help screen (at least on some terminal emulators) - Fixed broken bolding in the help screen if the wrapping happens at `/` - Fixed broken highlightin if the last character of a symlink is matched in a search commit 3d841dfa2bd2cf36127dcecec21a030bca09d151 Author: Marton Gunyho <[email protected]> Date: Wed Sep 21 18:24:41 2022 +0300 Update changelog commit 465ef4f8e0e3007b2d5e497f0b2c44de602fe63b Author: Marton Gunyho <[email protected]> Date: Wed Sep 21 18:21:35 2022 +0300 Fix warnings reported by clippy commit f99711bc28bcf3b0a2e2da0a7bdc5c179b2434a1 Author: Marton Gunyho <[email protected]> Date: Wed Sep 21 18:19:12 2022 +0300 Fix broken highlighting when the last character of a symlink matches the search commit 0d2a8fddffda8726318ff960fd0871910cee93ed Merge: 8a67208 6b2ab9f Author: mgunyho <[email protected]> Date: Tue Sep 20 20:54:35 2022 +0300 Merge branch 'develop' into drawing-fixes commit 6b2ab9fdea999e3a35be388f028dd720843e2b29 Merge: 382299f 526bf33 Author: mgunyho <[email protected]> Date: Tue Sep 20 20:49:12 2022 +0300 Add keyboard shortcut to toggle filter search Shortcut is alt+f by default. Also contains some refactoring: the settings struct is now private and can be only modified via specific setters, so that the app state is never inconsistent. Factored out also some helper methods. commit 526bf33039f5ff8d87c8eae3a74a5cf14ac8b145 Author: mgunyho <[email protected]> Date: Tue Sep 20 20:46:06 2022 +0300 Update changelog commit 4166dd5eebf71292b00a6c29d0cffc3d3a7dc507 Author: mgunyho <[email protected]> Date: Tue Sep 20 20:41:46 2022 +0300 Use on_matches_changed in search mode change functions commit 23b0a136fe19cdeb11efd0f64d47c56519cafcd4 Author: mgunyho <[email protected]> Date: Tue Sep 20 20:41:25 2022 +0300 Factor out method for when the search is updated commit 8a67208fa7679314fb6781ed6ab43d05b0a5c187 Author: Marton Gunyho <[email protected]> Date: Tue Sep 20 09:14:15 2022 +0300 Remove unused imports commit 870733add07f8c35ab611f29af5034abcff76817 Merge: 7aa69e0 48bf0b3 Author: Marton Gunyho <[email protected]> Date: Tue Sep 20 09:08:31 2022 +0300 Fix bolding when line is wrapped at non-whitespace character The problem was that if textwrap applies wrapping at a non-whitespace character (such as '/'), it effectively adds an extra newline, which causes the extracted bold locations to be out of sync. Now I changed it to use fill_inplace, which always only wraps at whitespace (because it has to reuse the original string), which avoids this problem (it also slightly modifies the wrapping results, but this is fine). commit 48bf0b37f45670cc543de5988ec404e14f43e711 Author: Marton Gunyho <[email protected]> Date: Tue Sep 20 08:59:40 2022 +0300 Do text wrapping using fill_inplace and remove empty items This fixes the behavior commit d606191db0c877096e31a3d957ab7f4e693fc328 Author: Marton Gunyho <[email protected]> Date: Tue Sep 20 08:57:10 2022 +0300 Update test to match new expected behavior There should be no split in the middle of the bolded section. commit 24bea392f51af50f1fbd3e61d2acfe7d709aa7e2 Author: Marton Gunyho <[email protected]> Date: Tue Sep 20 08:43:07 2022 +0300 Use wrap_and_stylize in test commit 4e60c8d604df9d55f8c71658184289ace0c42ad5 Author: Marton Gunyho <[email protected]> Date: Tue Sep 20 08:40:23 2022 +0300 Add separate function for applying wrapping and stylize This should help make tests more sensible commit 5963fd24816bfa5b913e1c474d176d0bdb0f2cbf Author: mgunyho <[email protected]> Date: Sun Sep 11 17:07:51 2022 +0300 Add extra tests to fix bold locations commit bb43cfda1f03cf4246f860ba2dd285d2583049e5 Author: Marton Gunyho <[email protected]> Date: Mon Sep 19 14:00:25 2022 +0300 Fix behavior of search mode change funcitons Revert to calling advance_search("") in search mode changes. This is a bit hacky as mentioned, but it makes more sense to do this inside the methods of the app state than having to do it in the UI. This is towards the ideal that the app state should always be consistent. commit df959f99928ea67eb7e29e98213f34d999c012b7 Author: Marton Gunyho <[email protected]> Date: Mon Sep 19 13:56:37 2022 +0300 Add test for case sensitive mode change commit df09f72b714e1914663ba19337e0aa1f9a8e7f1c Author: Marton Gunyho <[email protected]> Date: Mon Sep 19 13:44:07 2022 +0300 Make set_filter_search not a one-liner commit 69bdc4c544a856a60a84316b10ce99a455c676f3 Author: Marton Gunyho <[email protected]> Date: Mon Sep 19 12:24:27 2022 +0300 Add a usage note to with_cursor_fixed_at_current_item commit e775f18a977e837d42465b85ae0ef6e269865c5a Author: Marton Gunyho <[email protected]> Date: Mon Sep 19 12:23:10 2022 +0300 Fix typos in test commit 66215b04956a5c52e15c9270fb7d498f50bb789e Author: Marton Gunyho <[email protected]> Date: Fri Sep 16 17:59:46 2022 +0300 Add more (failing) tests for changing search modes commit 44d72039d14761c54161349eca76159274f3b2af Author: Marton Gunyho <[email protected]> Date: Fri Sep 16 17:40:20 2022 +0300 Remove todo, I think this is redundant now commit 7aa69e017826571976ba6eb1ae3ede7db24e9f1e Author: Marton Gunyho <[email protected]> Date: Thu Sep 15 09:45:12 2022 +0300 Only clear until newline if necessary This prevents the last character of a row from being eaten commit 1cb6320444a7dd3e0c233b1ae1a3995f8e886aa1 Author: Marton Gunyho <[email protected]> Date: Thu Sep 15 09:37:51 2022 +0300 Rename (w, h) -> (width, height) commit ace559a6669b67b6d592c98f2917317041f7e5f9 Author: Marton Gunyho <[email protected]> Date: Thu Sep 15 09:37:23 2022 +0300 Use cursor movement commands instead of printing newlines commit cf5589f4a194bee275ee3a5881966de94e66de53 Author: Marton Gunyho <[email protected]> Date: Thu Sep 15 09:00:55 2022 +0300 Fix drawing of long main window lines and incorrect clear when highlighting Looks like we really need to manually keep track of the window width vs the no. of printed characters. commit b445c7050971f4e4bebc47699e5aa02e2337c2ff Author: mgunyho <[email protected]> Date: Tue Sep 13 21:00:37 2022 +0300 Update release checklist commit 620643c86e7a575a0f5bcd3175c836335c3ae175 Author: Marton Gunyho <[email protected]> Date: Tue Sep 13 05:53:49 2022 +0300 Fix a typo commit bb6814d001760cb04c09c376d8d2d77445f780d8 Author: Marton Gunyho <[email protected]> Date: Tue Sep 13 05:52:13 2022 +0300 Remove redundant advance_search Not needed anymore now that we properly update the state when changing the search mode using setters. Was a bit of a hack anyway commit f0d1082698c97feb6266e1742cd8631ffe83de79 Author: Marton Gunyho <[email protected]> Date: Tue Sep 13 05:40:19 2022 +0300 Update README commit 60260f8f1912a4db2301facd963fc243b437464d Author: Marton Gunyho <[email protected]> Date: Tue Sep 13 05:38:29 2022 +0300 Factor out method for performing operation that keeps cursor fixed commit c96ce20da6187727965131b6d91ce422de2d30d7 Author: Marton Gunyho <[email protected]> Date: Tue Sep 13 05:04:20 2022 +0300 Add setters for case sensitive and gap search modes commit 8ca95e0be08a219242a5787edc5b7089db91a8c9 Author: Marton Gunyho <[email protected]> Date: Tue Sep 13 05:02:53 2022 +0300 Use set_filter_search in test commit 7b79aedb82f4d7fb9b4826857a4e2228cbc7c271 Author: Marton Gunyho <[email protected]> Date: Mon Sep 12 19:10:08 2022 +0300 Add method that updates the filter search state while keeping the state consistent commit c1af90be72ef2eec2e72840c901e244aca415a19 Author: Marton Gunyho <[email protected]> Date: Mon Sep 12 11:07:29 2022 +0300 Fix tests commit 616eb05933b7e42f29230fbfc1977af50f471787 Author: Marton Gunyho <[email protected]> Date: Mon Sep 12 11:03:19 2022 +0300 Fix usage of settings after adding getter commit 88771efa94eda125ea331ceada3fcdc652257d78 Author: Marton Gunyho <[email protected]> Date: Mon Sep 12 10:59:38 2022 +0300 Make app state settings private and accessible via getter The plan is to make it possible to modify only via methods. commit 2a30c0f4160cf5ce5a9b422e157a8bc2635f48b8 Author: mgunyho <[email protected]> Date: Sun Sep 11 11:38:24 2022 +0300 Add failing test when filter search mode is toggled commit 1eec70d7a03b3d5691b6d4ac9b23e4fb65a73b1a Author: mgunyho <[email protected]> Date: Sun Sep 11 11:37:19 2022 +0300 Mention default shortcut for filter search in help commit bccfafeaf87102f1cd7cc01d7e965c19e10c8fc0 Author: mgunyho <[email protected]> Date: Sun Sep 11 11:22:32 2022 +0300 Add default mapping for toggling filter search mode commit e9ae63c8dde4bc83edde93d6cc0631aa32400420 Author: mgunyho <[email protected]> Date: Sun Sep 11 11:22:04 2022 +0300 Toggle search mode in the UI loop This is broken, needs testing & fixing commit 3eb83513e3d41fe9b3c58d4c8caef902fb04a71c Author: mgunyho <[email protected]> Date: Sun Sep 11 11:15:59 2022 +0300 Add action for changing filter search mode
Sorting Options
--sort name
--sort adate
--sort cdate
--sort mdate
Notes
alt-s
cycles the sorting typesort:<type>
.