summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-01-04Add Factor lexerorbitalquark
Thanks to John Benediktsson.
2025-01-04Rename 'ansi_c', 'dmd', and 'rstats' lexers to 'c', 'd', and 'r'orbitalquark
Originally this was to prevent clashes with Textadept's language-specific key handling, but this is no longer applicable.
2025-01-04lexers: switch to tabs for indentationorbitalquark
2025-01-04Fix errors with folding in reST lexerorbitalquark
The lexer runs without error, but still does not really work.
2025-01-04Output lexer: match absolute program paths instead of just namesorbitalquark
2025-01-04Migrate Literate Coffeescript lexerorbitalquark
2025-01-04Allow unfinished Makefile function definitions to be highlightedorbitalquark
2025-01-04Update lexer LDocorbitalquark
2025-01-04Add 'org' directive to asm lexerorbitalquark
2025-01-04Increase the default LPeg stack sizeorbitalquark
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.
2025-01-04Add C23 attributes to C lexerorbitalquark
Based on contribution from Samuel Marquis.
2025-01-04Improve performance of the text lexermitchell
Instead of highlighting non-whitespace characters one at a time, highlight whole ranges.
2025-01-02vis-clipboard: redirect wl-copy stderr so that it actually exitsRandy Palamar
closes: #1223 see also: #929
2025-01-02introduce new 'meson' file type and meson options filenamessewn
2025-01-02build: update alpine in docker build to version 3.21Christian Hesse
Just a version bump, no changes required.
2025-01-02ci: remove lua-bustedRandy Palamar
2025-01-02check the life time of subprocesses before freeing visFlorian Fischer
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.
2025-01-02move waiting and potentially killing a subprocess into a helper functionFlorian Fischer
The separation between reading from a subprocess and handling its life time will be useful for future changes.
2025-01-02fix: correct URL of the Busted Lua unit testing framework.Matěj Cepl
2025-01-02no longer depend on lua-bustedJeremy Bobbin
Co-authored-by: Matěj Cepl <mcepl@cepl.eu>
2024-11-14lua: fix table member reference in set_syntaxFlorian Fischer
Reported-By: aimixsaka <aimixsaka@gmail.com>
2024-10-26document changing the displayed file of a window via luaFlorian Fischer
2024-10-26fix[filetype]: Recognize Cython source files as Python as wellMatěj Cepl
2024-10-26vis: introduce new `usfm` file typeMatěj Cepl
2024-10-26doc: Add link for the development dicussion email list to README.mdMatěj Cepl
2024-09-13lua: add tests for the different vis.pipe argument variantsFlorian Fischer
2024-09-13lua: improve argument parsing in vis.pipeFlorian Fischer
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).
2024-09-13complete-word: pipe the candidates directly to the commandFlorian Fischer
2024-09-13support piping a buffer to an external processFlorian Fischer
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.
2024-09-09ci: install busted to run lua testsFlorian Fischer
2024-08-28introduce new `wiki` file typeMatěj Cepl
2024-08-28introduce new `org` file typeMatěj Cepl
2024-07-26remove duplicate and obsolete lexer vbscript.luaMatěj Cepl
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>
2024-07-26pull latest changes from scintilluamitchell
This combines: Added 'done' literal to Hare lexer. Initialize fold constants when Scintillua is used as a standalone library.
2024-07-26add missing lexer specific styles to solarized themeMatěj Cepl
This is a parallel to https://github.com/martanne/vis/pull/1197 Signed-off-by: Matěj Cepl <mcepl@cepl.eu>
2024-07-04Add additional html style tags to base-16.luajvvv
This closes https://github.com/martanne/vis/issues/1196.
2024-05-30Fail silently when syntax has no lexerMichiel van den Heuvel
This'll patch vis.lexers.load to return nil when the lexer could not be found. Previously it would've errored out, which the load in lexer.lua still will as this is used in lexers themselves. Another possibility is to only patch set_syntax in vis.lua and the WIN_HIGHLIGHT handler in vis-std.lua, but as most references to vis.lexers.load already handle a nil return, this seems better.
2024-05-30remove the vis->initialized memberRandy Palamar
I already fixed the reason that this even existed (vis_event_emit getting called at random times when the editor wasn't ready). The option checking in main() was moved up because I noticed it was in the wrong place while thinking about where to emit the INIT event. There is no reason to do a bunch of useless work just to print the version.
2024-05-24combine Win and UiWinRandy Palamar
These are not seperate things and keeping them this way makes gives this convoluted mess where both Wins and UiWins must have linked lists to the other Wins and UiWins in the program despite the fact that neither of them can exist in isolation. This, like my previous cleanup commits, is part of a larger goal of properly isolating the various subsystems in vis. Doing so is required if we ever want to be able to have a vis-server and a vis-client.
2024-05-24remove SyntaxSymbol redirection typeRandy Palamar
There is no reason why this isn't just a char *.
2024-05-23drop cell_blank from ViewRandy Palamar
No need for this to be stored in every View since its just a never modified cell with a space. Also delete the cell_unused global since all it does is provide a 0 initialized Cell.
2024-05-22build: update alpine in docker build to version 3.20Christian Hesse
Just a version bump, no changes required.
2024-05-21remove some view pointer chasingRandy Palamar
Same as previous commit each window only has a single View. No need for it to be stored elsewhere in memory.
2024-05-21remove some ui pointer chasingRandy Palamar
There only exists a single Ui so there is no need to force a pointer redirection for accessing it. The Ui member was moved down in vis-core.h to punt around an issue with the way lua checks for existing objects. It may show up again as I flatten more structs.
2024-05-21replace UiTerm with Ui & delete function pointersRandy Palamar
2024-05-21replace UiTermWin with UiWin & remove function pointersRandy Palamar
2024-05-21make Selection unopaqueRandy Palamar
2024-05-21make View unopaqueRandy Palamar
2024-05-21cleanup some single line get/set functionsRandy Palamar
2024-05-21cleanup vis event interfaceRandy Palamar
This removes the function pointer interface which was adding needless complexity and making it difficult to add new events. Now if new events are only meant for lua they only need to be added to the lua interface. This will also have a minor reduction in runtime memory usage and produce a smaller binary. The only runtime difference is that QUIT happens after all windows have been closed and their files freed.