aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-04-10array: fix off by one error in array_removeMarc André Tanner1-1/+1
If the array was full, attempting to remove an element caused an out of bounds memory access. As an example this was triggered when reaching the capacity limit of the jumplist. It can be forced by repeatedly searching for something (i.e. `/.` and then holding down `n`).
2018-04-10Merge branch 'typos' of https://github.com/Two-Finger/visMarc André Tanner6-24/+24
2018-04-08Updates to ruby lexer:Lucas Tolchinsky1-4/+4
Adds `extend`, `include`, `module_function` and `require_relative`.
2018-04-08Fix "parenthese" in identifiersTwoFinger6-24/+24
2018-03-29lexers: add async/await keywords to javascriptDelapouite1-8/+9
2018-03-28Merge branch 'rej' of https://github.com/eworm-de/visMarc André Tanner1-1/+1
2018-03-27Add .rej as a diff/patch file extensionChristian Hesse1-1/+1
2018-03-27main: fix a few typos in commentsDelapouite1-2/+2
2018-03-26man: fix POSIX vi(1) referenceMarc André Tanner1-1/+2
Fix #687
2018-03-26lexers: remove execution file permission from clojure lexerMarc André Tanner1-0/+0
Fix #686
2018-03-25build: add git based version information backMarc André Tanner1-1/+1
2018-03-25build: set version to 0.5Marc André Tanner1-1/+1
2018-03-19build: build standalone binary against latest Alpine packagesMarc André Tanner1-1/+2
2018-03-14build: try to use POSIX tools/options for vis-single targetMarc André Tanner1-2/+4
2018-03-14vis-single: add missing header include for signal(2)Marc André Tanner1-0/+1
2018-03-14Merge branch 'lpeg-ac_check_lib' of https://github.com/Two-Finger/visMarc André Tanner1-23/+23
2018-03-14configure: Improve LPeg detectionTwoFinger1-23/+23
Try the possible library names regardless of .pc file availability.
2018-03-14Merge branch 'zenburn-theme' of https://github.com/casr/visMarc André Tanner2-1/+40
2018-03-14Merge branch 'paranthese-typo' of https://github.com/Two-Finger/visMarc André Tanner7-18/+18
2018-03-14Merge branch 'scheme-filetype' of https://github.com/Two-Finger/visMarc André Tanner1-1/+1
2018-03-12view: use strncat instead of an inline loop to concatenate cell dataMarc André Tanner1-4/+1
2018-03-12view: fix buffer overflow when dealing with combining charactersMarc André Tanner1-2/+5
The `cell.len` attribute refers to the number of bytes of the underlying text which are represented by this cell. The actual NUL terminated data being displayed can have a completely unrelated length. For example a NUL byte has a `cell.len` of 1, but is displayed as `cell.data = "^@"`. Because we currently have a fixed cell capacity of 16 bytes (including the terminating NUL byte) long sequences of combining characters won't be displayed correctly. See also #679
2018-03-11view: properly advance over incomplete unicode sequenceMarc André Tanner1-1/+1
When fetching more text we have to skip the bytes processed by the previous cell, otherwise we end up in an infinite loop.
2018-03-11Reset parsing state after mbrtowc(3) failureMarc André Tanner4-0/+6
The standard says "if an encoding error occurs ... the conversion state is unspecified".
2018-03-05lua: add more Scheme filename extensionsTwoFinger1-1/+1
.ss and .sls are used in Racket, Guile and Chez, at least.
2018-03-05Fix a typo in identifiersTwoFinger7-18/+18
2018-02-28Merge branch 'vis-open-fixes' of https://github.com/kj/visMarc André Tanner3-5/+19
2018-02-28vis: improve handling of linewise ranges in change operatorMarc André Tanner2-3/+7
2018-02-28Add clojure lexer and filetype supportChristos Chatzifountas2-0/+196
Close #647
2018-02-28lexer: add reference to ReasonML homepageMarc André Tanner1-2/+1
2018-02-28Merge branch 'lexer-improvements' of https://github.com/roguh/visMarc André Tanner2-2/+89
2018-02-27Adds basic Reason ML lexer.Hugo Rivera2-0/+87
See https://reasonml.github.io/docs/en/comparison-to-ocaml.html for major differences between Reason and OCaml.
2018-02-27Add .yml as a YAML file extensionHugo Rivera1-1/+1
2018-02-27Add ^Vagrantfile$ as a Ruby file extensionHugo Rivera1-1/+1
2018-02-27vis: implement normal/outer paragraph text objectMarc André Tanner7-6/+23
2018-02-27text-object: implement more precise paragraph text objectMarc André Tanner1-2/+31
Fix #543 Close #588
2018-02-27text-motion: ignore blank lines for next/prev paragraph motionsMarc André Tanner1-6/+4
2018-02-27text-motion: implement text_line_blank_{prev,next}Marc André Tanner2-0/+26
2018-02-27vis: reset count after window scroll/slide actionsMarc André Tanner1-0/+2
Previously something like n<C-e> would also apply the count `n` to the subsequent action.
2018-02-24Fix asm lexer to correctly match conditional jcc, cmovcc, and setcc instructionsMiles Canfield1-2/+12
2018-02-19sam: fix g/^$/Marc André Tanner1-2/+7
With POSIX ERE the pattern ^$ matches strings ending with a new line because an empty match is reported after the trailing newline at the very end of the input. This is undesirable for use cases like x g/^$/ d which is supposed to delete all empty lines of a file. As a fix we disregard empty matches at the end of the given range.
2018-02-19configure: fix static lpeg detection messagesQuentin Rameau1-4/+5
2018-02-19Merge branch 'colors-6.1' of https://github.com/michaelforney/visMarc André Tanner1-2/+2
2018-02-19man: add a note about the visrc.lua structure to vis.1Peter Nagy1-0/+5
As seen in #669 I didn't *get it* one needs to have a special stub in `visrc.lua` for everything to work properly. Putting at least a few words in the man page might help some others like me in the future :) Close #671
2018-02-19Merge branch 'master' of https://github.com/ii8/visMarc André Tanner3-61/+192
2018-02-18Support COLOR_PAIRS > SHRT_MAXMichael Forney1-2/+2
In ncurses 6.1, the TERMINAL structure was updated[0] to store data in `int` instead of `short`, and terminfo definitions for 256-color terminals were updated from `pairs#32767` to `pairs#0x10000`. However, since vis stores the value of COLOR_PAIRS in a short (ncurses internally stores it as an int), it is now overflowing into negative, breaking color support completely. The standard `init_pair` entry points still use `short` for their parameters, so just restrict the pairs to `SHRT_MAX` during allocation. [0] http://invisible-island.net/ncurses/announce-6.1.html#h4-new-library
2018-01-27lua: recognize scheme library definition filesMurray Calavera1-1/+1
2018-01-27lexers: improve scheme lexerMurray Calavera1-59/+190
* fix character literals (#\" no longer quotes the entire file etc.) * properly nest block comments and support simplified datum comment * add r7rs keywords, functions and directives * fix identifiers - pipes were not recognized as delimiters - some valid identifiers were not recognized - some were partially parsed as keywords - quoting only worked on plain alphanumeric identifiers * fix numbers (some valid numbers were not recognised) * dont parse boolean constants as functions
2018-01-27lexers: pony missing tilde for unsafe operatorsMurray Calavera1-1/+1
2018-01-27vis-complete: send whole paths for completionTwoFinger2-1/+5
text_object_word() was only sending the last part of a pathname to vis-complete. text_object_longword() is better, but sometimes may send a bit too much, so leading delimiters for some languages are stripped additionally.