summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-08-17build: don't use the '|' GNU extensionRandy Palamar
2023-08-17build: don't pollute base dir with .o and .d filesRandy Palamar
some users were (rightfully) annoyed by this
2023-08-16build: stop setting _POSIX_C_SOURCERandy Palamar
from feature_test_macros(7): > Defining _XOPEN_SOURCE with a value of 700 or greater produces the > same effects as defining _POSIX_C_SOURCE with a value of 200809L or > greater. Depending on the configuration and system pkg-conf files there can be redefinition warnings. Rather than patching with a -U_POSIX_C_SOURCE it can just be dropped instead.
2023-08-16build: support incremental rebuildsRandy Palamar
2023-08-14vis-complete: handle non-ascii textSilvan Jegen
The '[:alnum:]' set does not include non-ascii text which results in the non-ascii text being replaced with newlines. Using the '[:blank:]' set with no complement flag fixes this issue.
2023-08-14vis-menu: try to preserve valid Unicode pointsSilvan Jegen
Before we were not taking non-ascii characters into account properly. With this patch we still mix byte counts and "grapheme cluster" (i.e. complete glyphs that are rendered in a terminal cell) counts but the code should be less broken in the more common case now.
2023-08-12ci: freebsd: use lua 5.3 like the othersRandy Palamar
2023-08-10vis-lua.c: stop obj_ref_get() from leaving the lua stack modifiedRandy Palamar
The only place where this behaviour was encountered was in file_lines_iterator() and it was just being worked around.
2023-08-07vim/test.sh: use ${CPP:-cpp} instead of hardcoding to cppHaelwenn (lanodan) Monnier
2023-08-07core/Makefile: Respect $CC and $CFLAGSHaelwenn (lanodan) Monnier
Related: https://bugs.gentoo.org/722014
2023-08-01Prevent flickering in cursesIan Hixson
Reading from curs_refresh(3X) from curses, calling doupdate() repeatedly will cause 'several bursts of output to the screen'. wnoutrefresh() has the smarts to only copy the changed lines to the copied virtual screen, but doupdate() does not. There have been several bug reports related to flickering but all seems to be inconsistenly reproducible due to different terminal buffering behavior. See #1032, #327 Unfortunately, when I am using a slow display, I still notice flickering, so this commit changes the routines for opening new windows and splitting windows to wait until the last change is finished before calling doupdate().
2023-08-01vis-open: allow to show files verticallyVadym Kochan
It might be more comfortable to navigate through the files arranged vertically. Add ability to specify VIS_OPEN_LINES environment variable which is passed to vis-menu as -l option. It would be better to add vis option for this to set it via lua config, but it might be added later. Signed-off-by: Vadym Kochan <vadim4j@gmail.com>
2023-07-28view.c: add word wrappingAndrey Proskurin
this is contolled by the wrapcolumn/wc and breakat/brk options related #142: Word wrap and line breaks related #932: Vis for Prose? related #1092: Disabling line wrapping
2023-07-28view: refactor view_addchAndrey Proskurin
2023-07-28Introduce new `mail` file type.Matěj Cepl
Aside from the possibility of future syntax highlighting (similar to https://github.com/vim/vim/blob/master/runtime/syntax/mail.vim in Vim). After objections on the list, I have decided not to include the conversion and user has to introduce it in their visrc.lua: vis.ftdetect.filetypes.mail.cmd = { "x/\r/ d" }
2023-07-18vis:pipe(): don't segfault if vis->win isn't presentRandy Palamar
When `file` was made optional the variable was changed to be initialized by `vis->win->file` instead of a known safe file pointer. If `vis:pipe()` is called based on the event `FILE_OPEN` the `file` parameter can be valid even when `vis->win` is not yet present. Assuming `file` was provided this would be handled later on if vis didn't segfault. By initializing to NULL when `vis->win` isn't present `file` is given a chance be handled later. In the case where `file` wasn't given and `vis->win` is missing an error is thrown and `vis:pipe()` exits. fixes #1107 - Lua API: vis:pipe() causes a segfault when called before a window is open
2023-07-18Add fullscreen param to vis_pipe_collect() and Lua API vis:pipe()Jörg Bakker
This enables restoring the terminal from a fullscreen command like curses based program. Use cases are e.g. a file picker based on some external program like nnn (https://github.com/jarun/nnn).
2023-07-18fix warning about field width not being an intRandy Palamar
this slipped through in commit 6be370d
2023-07-17Print keybindings containing space correctlyMax Schillinger
Fixes #1060 - :help doesn't display mappings starting with <Space> correctly Co-authored-by: Randy Palamar <palamar@ualberta.ca>
2023-07-16partial revert of commit f55312baJohn Vogel
text_paragraph_prev(): Bring back the previous usage of text_iterator_byte_get() in the while conditional and text_iterator_char_prev() in the loop body. Fixes #1028 - { moves back a paragraph too much if cursor at start of line
2023-06-22Lua API: allow nil in vis:pipe() File and Range parametersJörg Bakker
2023-06-22allow underscore (_) in command namesRandy Palamar
fixes #971
2023-06-21build: simplify generating single payloadChristian Hesse
We can make `od` skip the address radix, so `sed` does not need to remove it.
2023-06-09ci: update checkout action to v3Randy Palamar
2023-06-09ci: don't generate man/index.html symlinkRandy Palamar
this seems to be broken if the actor isn't the owner of the repository
2023-06-09vis-clipboard: don't fail when sel is primary on unsupported platformsRandy Palamar
this is mostly useful for the internal vis usage and makes both `*` and `+` registers work on macOS/cygwin. fixes: #1067
2023-06-08ci: strip owner name regardless of actorRandy Palamar
2023-06-08reword the :[v]split and :[v]new descriptions in vis.1Randy Palamar
(horizontally) and (vertically) were kept to be consistent with the 'v' mnemonic and with the enum labels in the code.
2023-06-08ci: fetch mandoc.css from release tarballRandy Palamar
this is more stable than grabbing from the CVS web interface
2023-06-06Limit to lines within range for inner text objectsMiles Canfield
2023-06-05vis-clipboard: add support for wayclipOwen Rafferty
2023-05-28remove unused vis_message_hide() functionRandy Palamar
the message window gets closed like a normal window and nothing calls this function. In fact, it wasn't even used when it was added 8 years ago in 979ab79.
2023-05-28fix use after free in cmd_files()Randy Palamar
When the cmd closes the window the window pointer gets freed along the way. We can't use win->next to update the loop variable if sam_execute() has been called. Instead we can store win->next early and use that variable to continue the loop. fixes #1090
2023-05-25vis-clipboard: make xsel honor --selectionNick Hanley
2023-05-25ci: fix authentication by using GITHUB_TOKENRandy Palamar
2023-05-24Fix luadoc to use ~= for statusAndrey Proskurin
2023-05-23update test submoduleFelix Van der Jeugt
2023-05-23vis.1: list equivalent key bindings on the same lineRandy Palamar
it is hard to tell which line <C-u> and <C-d> are supposed to belong to in the current version. see #1033
2023-05-23ci: remove deprecated ubuntu-18.04 and switch to ubuntu-latestRandy Palamar
ubuntu-latest is supposed to track the newest supported ubuntu release which as of now is 22.04. 18.04 has been deprecated for a while and seems like it has finally been removed: https://github.blog/changelog/2022-08-09-github-actions-the-ubuntu-18-04-actions-runner-image-is-being-deprecated-and-will-be-removed-by-12-1-22/
2023-05-23build: update alpine in docker build to version 3.18Christian Hesse
Just a version bump, no changes required.
2023-05-23vis-complete: Fix commandline options handlingQuentin Rameau
2023-05-22test/vis: assert cursor at eof behaves as expectedJeremy Bobbin
test for: https://github.com/martanne/vis/issues/1084
2023-05-22test/vis: assert that visibility of the selection doesn't affect stateJeremy Bobbin
test for: https://github.com/martanne/vis/issues/1074
2023-05-22check for EOF before unsetting row, col & line cache in view_coord_getJeremy Bobbin
This commit fixes c22b2c2, which introduced a bug when the EOF was in view.
2023-03-19build: update alpine in docker build to version 3.17Christian Hesse
This requires one extra package, as static liblzma (liblzma.a) was moved to xz-static.
2023-03-19vis: remove unused Arg union memberNick Hanley
This was missed when pairwise selection combinators were removed in 404bb95..d1d5853.
2023-03-19don't set _FORTIFY_SOURCE in configureRandy Palamar
distributions that want this flag set do so on a system wide level. for example Gentoo, Fedora, Debian, and OpenSUSE. since vis sets it when invoking cc via make it overwrites the system setting (and pollutes the output with redefinition warnings). For reference here is the related bug in Gentoo: https://bugs.gentoo.org/892960
2023-03-19fix bug where visual-line selections after view were considered visibleJeremy Bobbin
prior to this patch, if you had a visual-line selection after the view, and try to move it(& all other selections) up into the buffer, the selection would appear prematurely. https://github.com/martanne/vis/issues/1074
2023-03-19implement Selection:remove()Jeremy Bobbin
2023-03-19lua: Make luacheck happyMatěj Cepl