aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-02-24vis-lua: implement vis:redraw()Marc André Tanner1-0/+13
2020-02-24lua: add `redrawtime` optionGeorgi Kirilov3-7/+35
Upper bound lexing time and cancel highlighting if it is exceeded.
2020-02-24lua: fix documentation typos and errorsGeorgi Kirilov1-2/+2
2020-02-24lua: optimize the win:style() loopGeorgi Kirilov1-11/+12
barely noticeable CPU usage improvement, although the number of iterations went down by an order of magnitude.
2020-02-24ci: update README status badgesMarc André Tanner1-2/+1
2020-02-23sam: warn when attempting to write to an existing fileMarc André Tanner1-0/+4
Add ! to override.
2020-02-23sam: fix modification time comparision when writing fileMarc André Tanner1-6/+13
The modification time should only be compared when dealing with the same file i.e. the following should work without a warning: $ touch foo; sleep 1; touch bar $ vis foo :w bar Also switch from path to inode based file equality testing.
2020-02-22ci: fix test coverage uploadMarc André Tanner3-0/+6
2020-02-22test: updateMarc André Tanner1-5/+5
2020-02-22test/vim: add info about skipped testsMarc André Tanner1-0/+1
2020-02-22test/util: fix compilation with old libtermkey versionsMarc André Tanner1-2/+1
2020-02-22Merge branch 'vis-interop-tests' of https://github.com/x1ddos/vis-testMarc André Tanner8-0/+20
2020-02-22sam: re-take range after pre-save hooks are runalex1-2/+14
A vis.events.FILE_SAVE_PRE callback may mutate the file text, making the original range passed to cmd_write incorrect. It is unclear how to realign the range after the callback is done for the cases where an active selection in visual mode is present or an explicit range like :1,2w! was specified. However, this commit resolves the issue for the case where the whole file is expected to be written.
2020-02-21test/vis: add a couple lua-vis interop testsalex8-0/+20
The tests assert that the entire file text is written to disk even if mutated in a vis.events.FILE_SAVE_PRE hooks.
2020-02-21vis: allow tests to have an optional lua scriptalex1-0/+9
The script named after <test-name>.lua, if exists, is run just before loading and executing <test-name>.keys. This allows tests to inject Lua code in the running vis instance to help augment the test environment. For instance, a test could listen to vis.events.FILE_SAVE_PRE events and mutate file text.
2020-02-20ci: add periodical coverity scan checkMarc André Tanner1-0/+53
2020-02-20ci: add Lua API documentation generationMarc André Tanner1-0/+39
2020-02-20ci: add Lua static code analysisMarc André Tanner1-0/+20
2020-02-20ci: add man page generationMarc André Tanner1-0/+38
2020-02-20ci: add windows buildsMarc André Tanner1-0/+52
2020-02-20ci: add macOS buildsMarc André Tanner1-0/+50
2020-02-20ci: add ubuntu buildsMarc André Tanner1-0/+56
2020-02-20test: updateMarc André Tanner1-5/+5
2020-02-17test/core: avoid compiler warning about zero length format stringMarc André Tanner1-2/+2
2020-02-13test/util: list all enum values to fix compiler warningMarc André Tanner1-5/+8
2020-02-13ci: add sourcehut build manifestsMarc André Tanner4-0/+69
2020-02-13test: updateMarc André Tanner1-9/+5
2020-02-13test/sam: add test for anchor behavior involving new linesMarc André Tanner2-0/+2
2020-02-13test/vim: skip tests if vim is not availableMarc André Tanner1-3/+7
2020-02-13test/vis: use C.UTF-8 localeMarc André Tanner1-1/+1
2020-02-13Fix compiler warningsMarc André Tanner2-1/+6
2020-02-12sam: support optional count for text commandsMarc André Tanner2-14/+26
The text given for the a, i and c commands can be prefixed with an optional count indicating how often the text should be inserted, defaults to 1.
2020-02-12sam: move parse_number code, no functional changeMarc André Tanner1-9/+9
2020-02-11lexers: fix TOML comments not being detectedRandy1-1/+1
`operator` variable matches "#", leaving nothing for the comments rule to match. Since "#" only marks comments in TOML, I just went ahead and removed the character from the `operator` token.
2020-02-11lexers: remove TOML indent errorRandy1-4/+0
According to the TOML github page[1], indentation can be tabs *and/or* spaces, so `indent_error` is removed. [1] https://github.com/toml-lang/toml#example
2020-02-10vis-lua: avoid string memory leaks in error caseMarc André Tanner1-6/+3
The function lua_pushstring can throw an error, meaning it will setjmp(3) out thereby leaking the allocated memory. By using lua_newuserdata we let Lua free the memory during a GC run.
2020-02-10vis: omit error message when vis-menu(1) is cancelledMarc André Tanner1-1/+1
2020-02-10vis-menu: use distinct error code upon cancelling selectionMarc André Tanner2-6/+7
The following exit statuses are used: 0 an item was successfully selected 1 the selection was cancelled >1 failure, some error occured
2020-02-10lexers: add git rebase lexerMarc André Tanner2-0/+53
2020-02-10filetype: highlight column 72 in git commit messagesMarc André Tanner1-0/+4
2020-02-10lexers: ruby squiggly heredocsKelsey Judson1-1/+1
2020-02-09filetype: add more Prolog filename extensionsKarl Schultheisz1-1/+1
2020-02-07vis: restore mode when dot-repeatingGeorgi Kirilov1-0/+1
2020-02-07lua: add <plugin>/init.lua to package.pathGeorgi Kirilov1-2/+4
2020-02-07build: improve debug flagsMarc André Tanner1-1/+1
Make macro definitions and enums available to debugger.
2020-02-07doc: update release numberMarc André Tanner1-1/+1
2020-02-07Merge branch 'lexer-c' of https://github.com/zsugabubus/visMarc André Tanner1-16/+42
2020-02-07Merge branch 'fix-cc-cell' of https://github.com/zsugabubus/visMarc André Tanner1-5/+6
2020-02-04vis: make core code more robustMarc André Tanner3-30/+69
The core vis code was originally written under the assumption that there always exists at least one window. However, when being called from the Lua configuration file during start up this is not yet the case. In general, Lua code should always be placed within appropriate event handlers e.g. vis.events.INIT for global configuration. Invoking API functions depending on an active window from top level statements is not supported. Where before the editor simply crashed, these changes turn such code sections into NOPs. Fix #561
2020-02-03array: make array_sort work for empty arraysMarc André Tanner1-1/+2