4d6999c415
Do not beep on window resizes
2023-06-11 21:11:20 +02:00
30ed61fdd2
Implement ^W in the editor
2023-06-11 21:05:55 +02:00
2df916c9b3
Support wildcards in interactive search
...
The previous search for the longest match is functionally
duplicated by typing individual characters on the input line,
and wildcards can be escaped, so there shouldn't be regressions
in terms of capability.
2022-09-03 12:17:02 +02:00
24401825b4
Add a missing case break
2022-01-08 11:23:36 +01:00
2bfb490798
Add and bind an action to center the cursor
...
"z" stands for VIM's "zz".
2022-01-08 11:17:24 +01:00
338d00d605
Do not crash on opendir() failures
...
Show an error message, and a way out.
2021-11-09 07:52:48 +01:00
015652e379
Fix build with recent ncurses
...
Easily gained, easily lost. No more ^S binding.
2021-11-09 07:45:20 +01:00
c298b6fc97
bash integration: add helpers to command history
2021-11-05 22:11:30 +01:00
7c2ab8ab59
zsh integration: add helpers to command history
2021-11-05 21:54:56 +01:00
e423a3a1b1
Add clang-format configuration, clean up
2021-11-05 21:34:05 +01:00
916f354c9b
Move the cursor to just created directories
2021-10-30 12:32:40 +02:00
050f875c47
Clean up
2021-10-30 12:13:45 +02:00
aeffe40efc
Bind ^S to search, as in Emacs, with a trick
...
We heavily depend on ncurses anyway, so no worries about portability.
2021-10-18 11:23:17 +02:00
536aa57761
Slightly optimize very large directories
...
Cumulatively 10% of user time, give or take.
These are mainly pointless multibyte to wide string conversions.
The hit to source code readibility is minimal.
2021-10-05 21:01:32 +02:00
0d10ae06e6
Measured stat performance, io_uring not worth it
...
Large directories are slow for different reasons.
2021-10-05 19:18:15 +02:00
e1b0831854
Don't reload on sort changes
...
It is unexpected behaviour, and likes to take too long.
2021-09-26 09:38:16 +02:00
4e93dfbb8d
Add a comment about libacl
...
So that I don't repeat my actions in the future.
2021-09-26 09:19:54 +02:00
8a6bb54eb5
Ignore empty XDG_CONFIG_DIRS
...
As the specification says we should. GLib does this as well.
It is still possible to achieve an empty set by using ":",
which are two non-absolute paths that should be ignored.
GLib doesn't implement this. Thus, we're now better than GLib.
2021-09-26 08:59:57 +02:00
4ef7c9edf7
Makefile: make the static build a non-phony target
2021-07-19 09:28:50 +02:00
3eea106c3c
Explicitly disable GCC's -Wmisleading-indentation
2021-07-19 09:23:28 +02:00
7de8c84e8f
Fix a signedness compiler warning
2021-07-19 09:12:17 +02:00
e17c5e2083
Bind F6 to a rename prompt
...
Mostly just so that the F7 binding isn't completely alone.
Since Shift-F6 isn't something we can just bind to, use a prefill.
2021-07-17 14:47:50 +02:00
9bd3739122
Bind F7 to an mkdir prompt
...
This might have needed more thought, but we'll see.
2021-07-17 14:41:57 +02:00
ec1f1031cc
Implement search iteration
...
The interactive search now has its own keymap, overriding "input".
Closes #5
2021-07-17 14:19:37 +02:00
bc99b3dd48
Add a right-side prompt to the search
2021-07-17 13:04:42 +02:00
e948741864
Enable pushing the search in a certain direction
...
We want to make it possible to iterate all current matches.
2021-07-17 08:49:54 +02:00
0adbac2066
Make search() return the number of matches
2021-07-17 07:54:03 +02:00
2238db5a4e
Make removing characters invoke g.editor_on_change
2021-07-17 07:24:16 +02:00
98612f5492
Improve C-char parsing
...
I was hoping that a superoptimiser would help me find a miraculous
branchless equation to cover it, but in the end the branching
doesn't hurt at all in our case.
It's more readable than `(((char >> 2) - 0x38) & 0x60) ^ char`
or `(char ^ 0x40) & (((char >> 1) ^ 0x20) | 0x5f)`.
2021-07-09 05:16:37 +02:00
1034321f81
sdn-install: explain why -dot is experimental
...
Add an explanatory link, so that I don't need to look it up again.
2021-07-07 22:13:46 +02:00
e7da32160c
Makefile: fix version extraction
...
Regression introduced by cc59fcf
.
2021-07-07 21:21:52 +02:00
fdb338fe12
Allow binding to custom key sequences
...
And document this feature in the manual page.
2021-07-07 21:21:32 +02:00
9056ef4194
README.adoc: make use of the "plus" attribute
2020-11-07 03:22:51 +01:00
b8a4742fb9
sdn.1: refer to a better manual page
2020-11-05 01:24:05 +01:00
c999e5a8e4
sdn.1: take care about sentence spacing
...
For more info, see e.g.
https://github.com/asciidoc/asciidoc-py3/issues/137
I'll probably commit to mandoc here but scdoc is appealing.
Somewhat sadly, it explicitly suppresses sentence spacing
but I'm wondering whether it couldn't be reimplemented better,
in a more AsciiDoc-like fashion.
2020-10-29 19:22:20 +01:00
07ef834a1e
Include a header required for kill()
...
Yet, this program remains fairly unportable.
2020-10-29 03:24:37 +01:00
997f5c25a2
sdn.1: improve wording about envvars
2020-10-27 14:58:23 +01:00
39e68a977c
sdn.1: fix default key binding references
2020-10-27 14:46:04 +01:00
c20d3780b2
Make the manpages mostly acceptable
...
Closes #1
2020-10-27 04:17:52 +01:00
22725ba3b7
Update README.adoc
...
I've put the project in AUR, it seems to deserve it.
2020-10-27 01:16:07 +01:00
df046bb071
Add some mediocre manpages
...
I'm not particularly happy to write in mdoc but here goes.
2020-10-26 20:46:09 +01:00
0c1a8d9902
Implement the --version option
...
Since we have a version number at all, even if it's meaningless.
2020-10-26 19:07:47 +01:00
cc59fcfb41
CMakeLists.txt: cleanup
2020-10-26 18:56:14 +01:00
c88566e7bb
Bind F1 to show the help
2020-10-25 08:19:49 +01:00
39c840cd74
Mark a minor issue for later resolution
2020-10-24 19:28:11 +02:00
f231828e8d
sdn-install: bash: fix UTF-8 collisions
2020-10-24 19:27:07 +02:00
1318c4983f
Makefile: make portable, support static linking
...
We can happily stick to POSIX and the usual variable names,
with the following exceptions:
- pkg-config(1) is used to find libraries and compile flags
- the new "static" target uses non-standard compiler
and linker flags, though it's not the default target
sdn is predestined for wild distribution,
even the dynamically linked libc is rather suboptimal.
2020-10-23 08:22:59 +02:00
c503954f44
Cleanup
...
The wchar_t variant of compute_width() is no longer needed.
So all in all the better help has saved code.
2020-10-23 07:53:37 +02:00
77973fc026
Group help message by action
...
Considerably more useful and concise.
2020-10-23 03:51:26 +02:00
61be9528e4
Bind M-Up to the "parent" action
...
Taken from Windows Explorer, which previously used Backspace.
We might want to use h/l for parent/choose by default.
2020-10-23 03:38:47 +02:00