summaryrefslogtreecommitdiff
path: root/src/main/cmds.c
AgeCommit message (Collapse)Author
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-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-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-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-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-18Fix clang buildAlbert Cervin
2024-03-07Implement timers properlyAlbert Cervin
The timers shown with `M-x timers` are now actual timings.
2024-02-23Disable automatic trigger of buffer completionAlbert Cervin
It breaks the default to switch back to prev buffer.
2024-02-18Remove extra newlines in buffer listAlbert Cervin
2024-02-14Improve word deletionAlbert Cervin
Now it only deletes the word under dot.
2024-01-31Fix syntax predicate creationAlbert Cervin
It is now created when parsing the queries. Also, make completion popup directly.
2024-01-30Syntax highlight is a goAlbert Cervin
2024-01-25Add final slash to find-file-relativeAlbert Cervin
2024-01-25Improve word navigationAlbert Cervin
Now behaves the way we want.
2024-01-24Relative find file and small fixesAlbert Cervin
- Save text was not always displaying - Files were sometimes not reloaded properly
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-11-19Make goto line a bit more intelligentAlbert Cervin
Now handles negative line numbers to mean "from the end".
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-07-11Implement replace + autocompleteAlbert Cervin
Autocomplete is currently a POC and works only with find-file.
2023-05-24Formatting changesAlbert Cervin
2023-05-11Fix some memory leaksAlbert Cervin
2023-05-11Fix languagesAlbert Cervin
- Enumerate windows on screen. - Build with optimizations.
2023-05-10Implement word deletionAlbert Cervin
M-d for forward, M-D for backward
2023-05-09Finish buflist implementationAlbert Cervin
Also fix tests and man page install.
2023-05-09Start of buflist implementationAlbert Cervin
2023-05-08Implement file reloadingAlbert Cervin
When for examplue using formatters or doing vc updates, it is useful if the file is reloaded from disk.
2023-05-01Implement buffer reloadAlbert Cervin
Currently only implemented on the buffer itself, and will discard any pending changes to the buffer. Idea is to use a command to detect that state and warn the user.
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