summaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
2025-01-21Fix buffer list not having stable ptrsAlbert Cervin
Was caused by using a vector that used realloc to grow. That only works sometimes. Now instead, the buffer list is a chunked linked list, i.e. a linked list where each element is a fixed size array.
2024-11-10Render tabs using the correct tab widthAlbert Cervin
Previously, the code assumed 4.
2024-11-08Fix col offset againAlbert Cervin
Was not doing the correct thing when multiple lines was added.
2024-11-07Fix location after inserting multi-lineAlbert Cervin
Previously assumed that column was 0 if more than one line was inserted. This was never correct.
2024-09-12WIP LSP clientAlbert Cervin
This contains the start of an LSP client. Nothing (except starting the LSP server) works at the moment and the feature is disabled by default.
2024-09-11Overhaul unicode parsingAlbert Cervin
It now instead iterates the actual unicode code points. This is better than what it was previously doing but it is still not entirely correct w.r.t to unicode sequences. This handling of unicode code points does however make it slightly easier to handle UTF-16 if needed in the future. This also adds some long needed tests for buffer methods.
2024-03-26Implement kill-buffer commandAlbert Cervin
Can be killed with the command `kill-buffer`, the shortcut `C-x k` or from the buffer menu.
2024-03-07Fix asan errorsAlbert Cervin
It found some really nasty ones :)
2024-03-07Implement timers properlyAlbert Cervin
The timers shown with `M-x timers` are now actual timings.
2024-02-14Improve word deletionAlbert Cervin
Now it only deletes the word under dot.
2024-02-12Fix final newline displayingAlbert Cervin
2024-01-31Change how language and settings workAlbert Cervin
No need to register settings anymore and languages can better handle arbitrary settings now.
2024-01-30Syntax highlight is a goAlbert Cervin
2024-01-15Completion reworkAlbert Cervin
- Add support for building with clang Also fix some annoying bugs: - Visual column was wrong when using tabs - Add shift-tab for inserting an actual tab - Fix minibuffer sometimes having dot above it
2023-10-19big buffer/buffer_view reworkAlbert Cervin
A buffer is only the text and the corresponding operation. A buffer view holds information about scroll, dot and mark positions. One way to think about it is that a buffer is stateless whereas a buffer view is stateful.
2023-05-24TOML settings parsingAlbert Cervin
Currently a very simplistic parser that do not support all TOML datatypes. Supported are: - Tables - Strings (incl multiline) - Integers - Inline Tables - Booleans - Comments
2023-05-11Fix languagesAlbert Cervin
- Enumerate windows on screen. - Build with optimizations.
2023-05-01Implement window handlingAlbert Cervin
Also implement searching. fix undo boundaries when it checked for other save point, it used && instead of == which caused it to overwrite other types. Fix bytes vs chars bug in text_get_region
2023-04-06failed to update tests on last oneAlbert Cervin
2023-03-17Implement support for languagesAlbert Cervin
Uses the settings system to implement a small system for per-language settings.
2023-02-25Introduce vec and hashmapAlbert Cervin
Convenience macros for a hashmap and a growable vector.
2023-02-21Implement support for settingsAlbert Cervin
Settings are a flat "dictionary" containing paths to settings on the format: <category>.<sub-category>.<setting>.
2023-02-15Implement undoAlbert Cervin
This also fixes a bunch of valgrind errors
2023-02-11Fix text to work more like GNU EmacsAlbert Cervin
This means that empty lines are not added until they have content.
2023-01-31Implement mark and copy-pasteAlbert Cervin
Also fix some memory leaks
2023-01-29More tests and documentationAlbert Cervin
Also improve find file and switch buffer a bit. Implement word backward/forward.
2023-01-26More tests and documentationAlbert Cervin
Also, split out platform-specific parts and add mocks for tests.
2023-01-23Add more tests and documentationAlbert Cervin
Both doxygen and man page
2022-12-21wip render reworkAlbert Cervin
2022-12-17Some text fixesAlbert Cervin
2022-12-15Make minibuffer use an actual bufferAlbert Cervin
Also fix some issues with inserting multibyte chars.
2022-11-25Rework delete logic a bitAlbert Cervin
It now handles a range of characters and correctly merges lines. It is not the most slick implementation but it works as a start.
2022-11-16🎉 And so it beginsAlbert Cervin