Linus Groh
c106451daf
LibLine: Cycle backward through suggestions using Shift+Tab
2020-04-11 20:42:17 +02:00
AnotherTest
2fdce695d6
LibLine: Display suggestions and cycle between them
...
With extra color (tm)
This commit also patches the users of LibLine to properly use the new
API
2020-04-11 17:15:19 +02:00
AnotherTest
b59a391a78
LibLine: Ask for cursor position once and handle the rest internally
...
Prior to this, writing to stdin while a display refresh was happening
corrupted the input and displayed garbage.
2020-04-11 17:15:19 +02:00
AnotherTest
f946d6ce79
LibLine: Properly handle window resize by not spamming DSRs
...
We have all the information necessary to find our new origin when a
window size change occurs.
2020-04-11 14:29:25 +02:00
AnotherTest
173c65660a
LibLine: Properly show and cleanup suggestions
...
Prior to this, we would display them and never clean then up.
2020-04-11 14:29:25 +02:00
Andreas Kling
c06d5ef114
Kernel+LibC: Remove ESUCCESS
...
There's no official ESUCCESS==0 errno code, and it keeps breaking the
Lagom build when we use it, so let's just say 0 instead.
2020-04-10 13:09:35 +02:00
AnotherTest
2315f789cc
LibLine: Appropriately react to window size changes
2020-04-10 11:26:44 +02:00
AnotherTest
1b422315fa
LibLine: Fix regression with moving around in history misplacing cursor
...
This commit fixes a regression where the prompt would not be cleared
upon substitution of lines from the history
2020-04-10 11:26:44 +02:00
AnotherTest
da9335dbec
LibLine: Implement multiline editing
...
This commit also adds the ability to change the prompt mid-edit :^)
2020-04-10 00:58:59 +02:00
AnotherTest
c2f8a5fffa
LibLine: Add live styling support
...
This patchset adds an stylization interface to LibLine, and breaks
multiline editing.
With the most adorable Style constructor I've ever seen :^)
2020-04-05 16:11:13 +02:00
AnotherTest
8f08ec5038
LibLine: Restore previous state only if initialized
...
This makes the library safe to construct/destruct without actually using
it.
2020-04-02 08:49:11 +02:00
Andreas Kling
296f87fa7f
LibLine: Fix Shell crashing (due to write() EFAULT) on <tab><tab>
...
Use a StringBuilder instead of blindly passing a bunch of potentially
empty/null strings to the kernel. StringBuilder is more lenient and
generally more pleasant to use anyway.
2020-04-01 11:25:53 +02:00
Andreas Kling
28edafbfa6
LibLine: Fix build in Linux environment
...
My host compiler was complaining about "%b" in format strings and about
ignoring the return value from a bunch of write() calls.
2020-03-31 18:59:15 +02:00
Andreas Kling
c7257ed827
LibLine: Rename on_char_input() => register_character_input_callback()
...
The "on_foo" format is our convention for public callback members.
2020-03-31 13:37:01 +02:00
Andreas Kling
8ab576308f
LibLine: Rename LineEditor.{cpp,h} => Editor.{cpp,h}
2020-03-31 13:34:57 +02:00