| Age | Commit message (Collapse) | Author |
|
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.
|
|
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.
|
|
|
|
|
|
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.
|
|
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.
|
|
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.
|
|
It was very complicated and tried to handle cases that
were specific to certain movement with a too general
approach.
|
|
It found some really nasty ones :)
|
|
The timers shown with `M-x timers` are now actual timings.
|
|
|
|
Now it just contains id and name as static properties.
|
|
Missed a boundary causing it to undo more than expected.
|
|
Now it only deletes the word under dot.
|
|
|
|
|
|
|
|
Fixes region highlight being wrong.
|
|
No need to register settings anymore and languages
can better handle arbitrary settings now.
|
|
It felt a little too greedy
|
|
|
|
|
|
|
|
|
|
It was assuming it could access the "last line".
|
|
Now behaves the way we want.
|
|
- Save text was not always displaying
- Files were sometimes not reloaded properly
|
|
- 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
|
|
|
|
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.
|
|
Autocomplete is currently a POC and works only with find-file.
|
|
Mark rendering is now a lot simpler and uses "properties".
|
|
Currently a very simplistic parser that do not support all TOML
datatypes. Supported are:
- Tables
- Strings (incl multiline)
- Integers
- Inline Tables
- Booleans
- Comments
|
|
A change of which file to write to was not considered a "change",
thus not actually writing the file to disk since it was already
"saved".
|
|
- Enumerate windows on screen.
- Build with optimizations.
|
|
M-d for forward, M-D for backward
|
|
Also fix tests and man page install.
|
|
When for examplue using formatters or doing vc updates, it is useful
if the file is reloaded from disk.
|
|
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.
|
|
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
|