| Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
same as buffer commit Array is completely visible
|
|
Buffer is fully exposed to the program, no need to rely on the
linker to optimize useless code.
|
|
lets not make the code harder to read for no reason
|
|
There are a couple times when we want to set a style without an
active window. In those cases we just want to use base UI_STYLE_*s
and (Win *) is not needed.
This fixes a crash when trying to do a vis:info() from lua during
an initial file open event.
Note that this code is due for a serious refactor, ui styles
should be stored in Ui and window specific styles should be stored
in Win. Then we won't need any of this difficult to follow
indexing into the styles array based on window id and we will
never have to realloc when a new window opens. Just another thing
to add to my list.
|
|
|
|
|
|
closes: #1209
|
|
If the compiler wants to use memcpy to move 12 bytes it can inline
the call itself otherwise we should just write the simple thing.
|
|
we use raw write elsewhere; no need to go through stdio unnecessarily.
|
|
When you take a pointer to a function in C that function is going
to appear in full in the final binary. This means that there were
3 sections of the final binary with the exact same code.
You could argue that in very high performance programs having that
function closer to the current instruction when it is needed will
give a performance boost but there are so many other places to
gain more significant speed ups in vis before that would be
remotely relevant.
In fact, removing these allows the buffer_append call to inlined
so that buffer_insert can be hopped to directly instead of
including a useless hop in the middle.
|
|
|
|
Thanks to Samuel Marquis.
|
|
|
|
Thanks to Samuel Marquis.
|
|
Thanks to John Benediktsson.
|
|
Originally this was to prevent clashes with Textadept's language-specific key handling, but this is
no longer applicable.
|
|
|
|
The lexer runs without error, but still does not really work.
|
|
|
|
|
|
|
|
|
|
|
|
It is not clear how large this value should be. It appears to be a function of grammar complexity.
For example, a problematic HTML file requires a value of 1329 to work, but removing either the
'attribute' rule or an embedded lexer reduces the limit.
However, identifying which files trigger a stack overflow is not trivial. It does not appear to
depend on file size. For example, the problematic HTML file is 125K, but a non-problematic HTML
file of 500K works.
|
|
Based on contribution from Samuel Marquis.
|
|
Instead of highlighting non-whitespace characters one at a time,
highlight whole ranges.
|
|
closes: #1223
see also: #929
|
|
|
|
Just a version bump, no changes required.
|
|
|
|
Currently there is now way for long running subprocesses like language
servers to gracefully shutdown.
When reacting to the QUIT event and invalidating the process handle
the subprocess will never be killed and destroyed because the
subprocesses are only checked during vis_run.
Collecting and killing subprocesses with invalid handles after the
QUIT event allows graceful shutdown.
|
|
The separation between reading from a subprocess and handling its
life time will be useful for future changes.
|
|
|
|
Co-authored-by: Matěj Cepl <mcepl@cepl.eu>
|
|
Reported-By: aimixsaka <aimixsaka@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
Support the old behavior of using vis:pipe(cmd, fullscreen) without
input.
Properly distinguish between vis:pipe(text, cmd, fullscreen) and
vis:pipe(file, range, cmd).
|
|
|
|
Currently only Text objects can be piped to external commands.
This is tedious if data not available in any file should be passed
to an external process (e.g. building options and passing them to
vis-menu).
This adds the option to pass a buffer to _vis_pipe and provides wrapper
functions for the original behavior and the new one.
|
|
|
|
|
|
|
|
Relates-to: https://github.com/orbitalquark/scintillua/issues/68
Relates-to: https://github.com/orbitalquark/scintillua/commit/dee7d765a005
Signed-off-by: Matěj Cepl <mcepl@cepl.eu>
|
|
This combines:
Added 'done' literal to Hare lexer.
Initialize fold constants when Scintillua is used as a standalone library.
|
|
This is a parallel to https://github.com/martanne/vis/pull/1197
Signed-off-by: Matěj Cepl <mcepl@cepl.eu>
|