summaryrefslogtreecommitdiff
path: root/Libraries/LibLine/StringMetrics.h
AgeCommit message (Collapse)Author
2021-01-12Libraries: Move to Userland/Libraries/Andreas Kling
2021-01-10LibLine: Implement support for C-V<key>AnotherTest
This commit adds support for inserting in a "verbatim" mode where a single uninterpreted key is appended to the buffer. As this allows the user to input control characters, all control characters except \n (^M) are rendered in their caret form, with reverse video (SGR 7) applied to it. To not break cursor movement, the concept of "masked" characters is introduced to the StringMetrics interface, which can be mostly ignored by the rest of the system. It should be noted that unlike some other line editing libraries, LibLine does _not_ render a hard tab as a tab, but rather as '^I', which greatly simplifies cursor handling.
2021-01-04LibLine: Don't overwrite stuff when moving origin aroundAnotherTest
This fixes an issue (mainly) with multiline prompts, where a multiline prompt would overwrite the lines before it when libline tries to display it. To reproduce, set `PROMPT="a\nb\nc> "` in the shell, then press return a few times.
2020-06-30LibLine: Correctly display suggestions on multiline promptsAnotherTest