summaryrefslogtreecommitdiff
path: root/src/dged
AgeCommit message (Collapse)Author
2024-11-12Handle kill buffer wraparound correctlyAlbert Cervin
Id did not use position 0 properly and caused it to "lose" copy/paste information when the kill ring wrapped around.
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-08Add hpp and hxx as c++ extensionsAlbert Cervin
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-17Fix crash when buffer was non-lazy addAlbert Cervin
In this case, the end of the buffer is on the last line, however if there are no lines in the buffer, it would cause an underflow.
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-27Fix bug where abort switched windowsAlbert Cervin
The minibuffer code for handling going back to previous window after abort was a bit too greedy.
2024-08-15Do not update last write when openingAlbert Cervin
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-08-14Use IN_CLOSE_WRITE for inotify on LinuxAlbert Cervin
This is safer since the event is only emitted once the file is closed, not every time it is modified and it seems to yield more reliable results.
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-14Add indent for regionAlbert Cervin
If a region is active, indentation is added to the whole region.
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-06Add inverted colors modeAlbert Cervin
Also use color constants in some more places.
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-03Add completion to executeAlbert Cervin
Completes on the command, not on following arguments if written directly at the prompt.
2024-03-27Do something better when wcwidth returns -1Albert Cervin
On systems that has unkown widths for emojis for example, using -1 for width is not a good fallback.
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-22Initial OpenBSD supportAlbert Cervin
Reactor is not really implemented yet but at least it builds and the tests run.
2024-03-18Portably print the 64-bit integerAlbert Cervin
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-28One missing file from last commitAlbert Cervin
2024-02-28More lang and buffer fixesAlbert Cervin
2024-02-27Fix follow up lang bugsAlbert Cervin
Some functions used "languages." and some did not.
2024-02-23Fix language path bugAlbert Cervin
Caused by previous commit
2024-02-23Make language less specificAlbert Cervin
Now it just contains id and name as static properties.
2024-02-18Add qml lang and fix some regexesAlbert Cervin
2024-02-18Fix undo of deletesAlbert Cervin
Missed a boundary causing it to undo more than expected.
2024-02-18Fix bytes vs char offsetAlbert Cervin
Tree-sitter uses position in byte coordinates, despite what it seems to say in the docs.
2024-02-14Improve word deletionAlbert Cervin
Now it only deletes the word under dot.
2024-02-12Fix final newline displayingAlbert Cervin
2024-02-01Fix minibuffer execute clearing when it should notAlbert Cervin
2024-02-01Add git commit syntaxAlbert Cervin
2024-02-01Fix key_nameAlbert Cervin
It was not returning the length of the key name.
2024-01-31Add some more word delimsAlbert Cervin
2024-01-31Fix syntax predicate creationAlbert Cervin
It is now created when parsing the queries. Also, make completion popup directly.
2024-01-31Finish lang settings reworkAlbert Cervin
2024-01-31Fix application of text propsAlbert Cervin
Fixes region highlight being wrong.