summaryrefslogtreecommitdiff
path: root/src/main
AgeCommit message (Collapse)Author
10 daysAdd proper undo to buffer reloadingAlbert Cervin
It now creates an undo entry for the whole file.
11 daysRevert the revisionAlbert Cervin
It does not play nice with Nix
11 daysFix mode not being kept on the fileAlbert Cervin
Also add a revision to the --version
12 daysFix diagnostics to JSONAlbert Cervin
Did not escape the message and did not put a comma between array entries.
12 daysImprove and add completion keybindingsAlbert Cervin
Also remove the unnecessary state tracking for active completion.
12 daysFix crashes when killing buffersAlbert Cervin
Now, if you kill all buffers, the editor will shut down :)
12 daysUse bright for diagnostic fgAlbert Cervin
2025-11-21Add support for documentChanges in LSPAlbert Cervin
These should ideally be paired with setting the capability on initialize, but for now, the parsing support is there at least for LSP servers that ignore it (like pylsp).
2025-11-21Fix so more than one file gets error highlightsAlbert Cervin
The previous fix for that did not take multiple files into account.
2025-11-21Abort completion when invoking a keymap bindingAlbert Cervin
I.e. when you save, it is probably time to remove the completion.
2025-11-21Add a save all command to the buflistAlbert Cervin
When in the buflist, you can now press 'S' to save all unsaved buffers.
2025-11-21Fix the yellow on yellow for warningsAlbert Cervin
Diagnostic highlight now sets the fg to white and the background to the appropriate color for the diagnostic severity. Before, we could end up with a yellow color for warning as background and a yellow as foreground for a function, which caused unreadable text. Also fix some more cases where re-render is needed.
2025-11-19Make sure rendering happens at least 7ms apartrendering-improvementsAlbert Cervin
Running a lot faster just causes tearing.
2025-11-16Remove the annoying keymap printAlbert Cervin
2025-11-07Increase the number of pending requests for LSPAlbert Cervin
Also make it a bit more robust if we run out of slots.
2025-11-05Check if LSP help is emptyAlbert Cervin
Then do not display anything and warn user with a message that no help was available.
2025-11-05Fix a crash when undoingAlbert Cervin
We were spawning too many completion requests as part of the text being changed.
2025-11-05Fix searching annoyancesAlbert Cervin
- It now colors correctly - Supports searching for unicode symbols - Make search able to continue when more letters are entered
2025-11-01Improve scrollingAlbert Cervin
Scrolling vertically now keeps two lines of context and overflowing vertically places dot in middle of screen.
2025-11-01More lsp supportAlbert Cervin
This makes the LSP support complete for now: - Completion - Diagnostics - Goto implementation/declaration - Rename - Documentation - Find references
2024-11-12Add completion to write_fileAlbert Cervin
2024-11-12Fix search with spaces and highlightAlbert Cervin
Highlight the regular search matches using a oneshot approach.
2024-09-12Upgrade nixpkgs to 24.05Albert Cervin
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-08-14Add fancy welcome textAlbert Cervin
2024-08-14Do not reload buffer if it could not be watchedAlbert Cervin
Previously it tried to reload the buffer even though it could not be watched.
2024-06-23Fix buffer list switch and search/replaceAlbert Cervin
Fix the buffer list return key action when buffers have the same name. Previously, it would pick the first it could find in the buffer list with the correct buffer name instead of the selected one. Now it uses text properties to pass the actual buffer pointer along instead. This however exposed a problem with the clearing of properties and where in the frame it happens. Search and replace highlighting assumed that they could color things in their respective command executions. However, ideally coloring should happen in update functions so now both search and replace implement the coloring in update hooks for the buffer they are operating on. For replace, this was already kinda how it worked and could be adapted with minimal effort. Search on the other hand needed a bit more rework.
2024-06-09Fix crash in completionAlbert Cervin
The crash happened when a new file was opened followed by another completion. The reason was that not accepting any of the completion suggestions caused the completion to stay active, causing the context to not be updated for the next completion.
2024-05-14Fix replace not updating after a replace opAlbert Cervin
If the replace happened on the same line as another match and was longer or shorter than the previous value, the highlights and following replaces would be offset.
2024-05-12Improve API docs and configure systemAlbert Cervin
There is now a super minimalistic configure script that automatically detects the event system (epoll/kqueue) and generates a config.h and a config.mk.
2024-05-06Fix slow buffer pasteAlbert Cervin
Was caused by updating all buffer hooks on every char insert. Particularily, the syntax update takes a little bit too long to call on every char. Now the keyboard parsing routine compresses all consecutive self-inserting chars into one "key press". Also fix some small issues with timers and update them with a min and max.
2024-05-06OpenBSD port workAlbert Cervin
2024-04-09Prepare 0.1.0Albert Cervin
Clarify a few things in the README.md and add a version macro that can be used with `-V/--version`.
2024-04-03Add completion to executeAlbert Cervin
Completes on the command, not on following arguments if written directly at the prompt.
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-24Improve and simplify movement logicAlbert Cervin
It was very complicated and tried to handle cases that were specific to certain movement with a too general approach.
2024-03-22Add a sigsegv handlerAlbert Cervin
To try and reset the terminal to something useful.
2024-03-18Fix clang buildAlbert Cervin
2024-03-18More work on languages/syntaxAlbert Cervin
Implement another predicate and add javascript.
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-03-05Make syntax path a proper search pathAlbert Cervin
Can be set with the $TREESITTER_GRAMMARS variable, separated by ':'
2024-02-23Disable automatic trigger of buffer completionAlbert Cervin
It breaks the default to switch back to prev buffer.
2024-02-18Fix completion of paths not retaining first letterAlbert Cervin
2024-02-18Remove extra newlines in buffer listAlbert Cervin
2024-02-14Improve word deletionAlbert Cervin
Now it only deletes the word under dot.
2024-02-01Add git commit syntaxAlbert Cervin
2024-01-31Fix syntax predicate creationAlbert Cervin
It is now created when parsing the queries. Also, make completion popup directly.
2024-01-31Fix replace crashAlbert Cervin
Was using the minibuffer instead of the actual buffer.