summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-05-16vis: remove gpMarc André Tanner
This only removes the user visible mapping, the underlying implementation is kept for now. This might change in the future.
2018-05-16vis: implement g~ using tr(1)Marc André Tanner
2018-05-16vis: implement gU using tr(1)Marc André Tanner
2018-05-16vis: implement gu using tr(1)Marc André Tanner
2018-05-16vis: remove gq alias for =Marc André Tanner
2018-05-16text: use mkstemp(3) for temporary file creation in atomic savesMarc André Tanner
Instead of simply appending a tilde to the original file name, we now create an unique temporary file based on the pattern `.filename.vis.XXXXXX`. In case the file does not yet exist, we use 0666 & ~umask as permission, (this should match the previous `open(2)` based behavior).
2018-05-16text: do not unlink existing `file~` when saving to `file`Marc André Tanner
Fail atomic save if temporary file already exists. A follow up commit will use `mkstemp(3)` for temporary file creation.
2018-05-12lexers: handle pony triple quoted strings properlyMurray
2018-04-15Update year numbers in copyright informationMarc André Tanner
2018-04-15ui: make sure $TERM is setMarc André Tanner
libtermkey passes the $TERM value unchecked to libunibilium which just aborts (in debug builds) or crashes (in release builds). Workaround that by defaulting to `xterm`, if $TERM is unset. It should eventually be fixed in libtermkey/unibilium too. This fixes test suite failures on the Debian package build environment. It might also be the reason for failures in other CI environments e.g.: https://github.com/alpinelinux/aports/pull/3768
2018-04-10array: fix off by one error in array_removeMarc André Tanner
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é Tanner
2018-04-08Updates to ruby lexer:Lucas Tolchinsky
Adds `extend`, `include`, `module_function` and `require_relative`.
2018-04-08Fix "parenthese" in identifiersTwoFinger
2018-03-29lexers: add async/await keywords to javascriptDelapouite
2018-03-28Merge branch 'rej' of https://github.com/eworm-de/visMarc André Tanner
2018-03-27Add .rej as a diff/patch file extensionChristian Hesse
2018-03-27main: fix a few typos in commentsDelapouite
2018-03-26man: fix POSIX vi(1) referenceMarc André Tanner
Fix #687
2018-03-26lexers: remove execution file permission from clojure lexerMarc André Tanner
Fix #686
2018-03-25build: add git based version information backMarc André Tanner
2018-03-25build: set version to 0.5Marc André Tanner
2018-03-19build: build standalone binary against latest Alpine packagesMarc André Tanner
2018-03-14build: try to use POSIX tools/options for vis-single targetMarc André Tanner
2018-03-14vis-single: add missing header include for signal(2)Marc André Tanner
2018-03-14Merge branch 'lpeg-ac_check_lib' of https://github.com/Two-Finger/visMarc André Tanner
2018-03-14configure: Improve LPeg detectionTwoFinger
Try the possible library names regardless of .pc file availability.
2018-03-14Merge branch 'zenburn-theme' of https://github.com/casr/visMarc André Tanner
2018-03-14Merge branch 'paranthese-typo' of https://github.com/Two-Finger/visMarc André Tanner
2018-03-14Merge branch 'scheme-filetype' of https://github.com/Two-Finger/visMarc André Tanner
2018-03-12view: use strncat instead of an inline loop to concatenate cell dataMarc André Tanner
2018-03-12view: fix buffer overflow when dealing with combining charactersMarc André Tanner
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é Tanner
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é Tanner
The standard says "if an encoding error occurs ... the conversion state is unspecified".
2018-03-05lua: add more Scheme filename extensionsTwoFinger
.ss and .sls are used in Racket, Guile and Chez, at least.
2018-03-05Fix a typo in identifiersTwoFinger
2018-02-28Merge branch 'vis-open-fixes' of https://github.com/kj/visMarc André Tanner
2018-02-28vis: improve handling of linewise ranges in change operatorMarc André Tanner
2018-02-28Add clojure lexer and filetype supportChristos Chatzifountas
Close #647
2018-02-28lexer: add reference to ReasonML homepageMarc André Tanner
2018-02-28Merge branch 'lexer-improvements' of https://github.com/roguh/visMarc André Tanner
2018-02-27Adds basic Reason ML lexer.Hugo Rivera
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 Rivera
2018-02-27Add ^Vagrantfile$ as a Ruby file extensionHugo Rivera
2018-02-27vis: implement normal/outer paragraph text objectMarc André Tanner
2018-02-27text-object: implement more precise paragraph text objectMarc André Tanner
Fix #543 Close #588
2018-02-27text-motion: ignore blank lines for next/prev paragraph motionsMarc André Tanner
2018-02-27text-motion: implement text_line_blank_{prev,next}Marc André Tanner
2018-02-27vis: reset count after window scroll/slide actionsMarc André Tanner
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 Canfield