aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2025-01-12buffer: drop buffer_move functionRandy Palamar5-28/+6
2025-01-12array: delete onelinersRandy Palamar13-79/+67
same as buffer commit Array is completely visible
2025-01-11buffer: clear out one line functionsRandy Palamar9-70/+34
Buffer is fully exposed to the program, no need to rely on the linker to optimize useless code.
2025-01-11buffer: delete pointless buffer_init functionRandy Palamar11-48/+20
lets not make the code harder to read for no reason
2025-01-08ui: pass window id when setting styleRandy Palamar4-19/+18
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.
2025-01-06scripts: make option listing more consistentRandy Palamar3-11/+14
2025-01-06scripts: fix shellcheck warnings and make scripts more uniformMatěj Cepl3-32/+62
2025-01-04curses ui: fix default color detectionRandy Palamar3-38/+24
closes: #1209
2025-01-04ui: remove useless memcpy callRandy Palamar1-11/+9
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.
2025-01-04ui-vt100: write ouptut using write(3)Randy Palamar1-4/+2
we use raw write elsewhere; no need to go through stdio unnecessarily.
2025-01-04remove duplicated read_buffer functionsRandy Palamar6-22/+17
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.
2025-01-04accommodate vis for changes with updates in the lexersMatěj Cepl2-4/+10
2025-01-04Add Nix lexerorbitalquark2-0/+103
Thanks to Samuel Marquis.
2025-01-04Recognize float suffixes in C lexerorbitalquark1-1/+1
2025-01-04Migrate Haskell lexerorbitalquark1-17/+17
Thanks to Samuel Marquis.
2025-01-04Add Factor lexerorbitalquark2-0/+72
Thanks to John Benediktsson.
2025-01-04Rename 'ansi_c', 'dmd', and 'rstats' lexers to 'c', 'd', and 'r'orbitalquark6-11/+7
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 indentationorbitalquark138-5242/+5238
2025-01-04Fix errors with folding in reST lexerorbitalquark1-2/+2
The lexer runs without error, but still does not really work.
2025-01-04Output lexer: match absolute program paths instead of just namesorbitalquark1-2/+4
2025-01-04Migrate Literate Coffeescript lexerorbitalquark1-9/+7
2025-01-04Allow unfinished Makefile function definitions to be highlightedorbitalquark1-2/+2
2025-01-04Update lexer LDocorbitalquark1-12/+12
2025-01-04Add 'org' directive to asm lexerorbitalquark1-2/+2
2025-01-04Increase the default LPeg stack sizeorbitalquark1-0/+2
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 lexerorbitalquark1-3/+17
Based on contribution from Samuel Marquis.
2025-01-04Improve performance of the text lexermitchell1-0/+2
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 Palamar1-2/+2
closes: #1223 see also: #929
2025-01-02introduce new 'meson' file type and meson options filenamessewn1-1/+1
2025-01-02build: update alpine in docker build to version 3.21Christian Hesse1-1/+1
Just a version bump, no changes required.
2025-01-02ci: remove lua-bustedRandy Palamar2-3/+0
2025-01-02check the life time of subprocesses before freeing visFlorian Fischer3-0/+18
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 Fischer1-20/+34
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 Cepl1-1/+3
2025-01-02no longer depend on lua-bustedJeremy Bobbin10-48/+135
Co-authored-by: Matěj Cepl <mcepl@cepl.eu>
2024-11-14lua: fix table member reference in set_syntaxFlorian Fischer1-1/+1
Reported-By: aimixsaka <aimixsaka@gmail.com>
2024-10-26document changing the displayed file of a window via luaFlorian Fischer1-0/+2
2024-10-26fix[filetype]: Recognize Cython source files as Python as wellMatěj Cepl1-1/+1
2024-10-26vis: introduce new `usfm` file typeMatěj Cepl1-0/+3
2024-10-26doc: Add link for the development dicussion email list to README.mdMatěj Cepl1-1/+2
2024-09-13lua: add tests for the different vis.pipe argument variantsFlorian Fischer2-0/+87
2024-09-13lua: improve argument parsing in vis.pipeFlorian Fischer1-6/+10
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 Fischer1-2/+1
2024-09-13support piping a buffer to an external processFlorian Fischer5-22/+104
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 Fischer2-0/+2
2024-08-28introduce new `wiki` file typeMatěj Cepl1-0/+3
2024-08-28introduce new `org` file typeMatěj Cepl1-0/+3
2024-07-26remove duplicate and obsolete lexer vbscript.luaMatěj Cepl1-63/+0
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 scintilluamitchell2-5/+6
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 Cepl1-0/+120
This is a parallel to https://github.com/martanne/vis/pull/1197 Signed-off-by: Matěj Cepl <mcepl@cepl.eu>