about summary refs log tree commit diff stats
path: root/src/local/lineedit.nim
Commit message (Collapse)AuthorAgeFilesLines
* lineedit: small cleanupbptato2024-07-071-4/+1
|
* misc cleanupsbptato2024-06-221-4/+3
|
* pager: refactor drawing codebptato2024-06-221-17/+17
| | | | | | | * merge select into container * avoid unnecessary redraws in draw() for parts of the screen that haven't been updated * various image redraw fixes
* Update Chame, Chagashibptato2024-06-131-14/+17
|
* Move JS wrapper into Monouchabptato2024-06-031-2/+2
| | | | Operation "modularize Chawan somewhat" part 3
* luwrap: use separate context (+ various cleanups)bptato2024-05-101-4/+7
| | | | | | Use a LUContext to only load required CharRanges once per pager. Also, add kana & hangul vi word break categories for convenience.
* luwrap: replace Nim unicode maps with libunicodebptato2024-05-091-0/+1
| | | | | | | | | | | | | | | | | Instead of using the built-in (and outdated, and buggy) tables, we now use libunicode from QJS. This shaves some bytes off the executable, though far less than I had imagined it would. Also, a surprising effect of this change: because libunicode's tables aren't glitched out, kanji properly gets classified as alpha. I found this greatly annoying because `w' in Japanese text would now jump through whole sentences. As a band-aid solution I added an extra Han category, but I wish we had a more robust solution that could differentiate between *all* scripts. TODO: I suspect that separately loading the tables for every rune in breaksViWordCat is rather inefficient. Using some context object (at least per operation) would probably be beneficial.
* Update code stylebptato2024-04-171-6/+6
| | | | | | * separate params with ; (semicolon) instead of , (colon) * reduce screaming snake case use * wrap long lines
* pager: simplify line editingbptato2024-03-161-3/+3
| | | | | * embed prompt string into enums * move pager.username to LineDataAuth
* Move around some modulesbptato2024-03-141-0/+328
* extern -> gone, runproc absorbed by pager, others moved into io/ * display -> local/ (where else would we display?) * xhr -> html/ * move out WindowAttributes from term, so we don't depend on local from server