summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-02-15test/vis: add a test for the lexer text objectMarc André Tanner
2017-02-15test/vis: source the default visrc.lua fileMarc André Tanner
This loads the default plugins whose functionality can now also be tested.
2017-02-15test/vis: remove C function related tests for nowMarc André Tanner
2017-02-15vis: use single function call to print version informationMarc André Tanner
This results in a slightly smaller binary while still avoiding #ifdefs. Close #494
2017-02-15vis: remove motion and text objects related to C functionsMarc André Tanner
These do not really belong into the editor core. If desired they could be implemented in Lua instead.
2017-02-15text-motions: remove unused text_line_lastcharMarc André Tanner
2017-02-14travis: re-enable code coverageMarc André Tanner
2017-02-14travis: use apsolute paths for ${C,LD}FLAGSMarc André Tanner
This should fix build breakage of the test/util/keys utility.
2017-02-14travis: tweak build matrixMarc André Tanner
Try to test the different regex backends and builds with/without Lua support.
2017-02-14test: updateMarc André Tanner
2017-02-14Skip tests if Lua support is not compiled inMarc André Tanner
2017-02-14vis: add compile time features to version outputMarc André Tanner
2017-02-12test/vim: tweak combining characters testMarc André Tanner
2017-02-12view: improve handling of long sequences of combining charactersMarc André Tanner
They will still not be displayed correctly, but at least they should no longer cause memory errors.
2017-02-11test: updateMarc André Tanner
Should fix travis failure.
2017-02-11test/vis: use [0-9]+ instead of \d+ in regexMarc André Tanner
2017-02-11test: updateMarc André Tanner
2017-02-11test/vim: add a file with lots of combining charactersMarc André Tanner
The actual test just invokes `ga` and `g8` which has only a temporary visual effect which our testing infrastructure is currently not able to check.
2017-02-11test/vis: add some test related to multiple cursors/selectionsMarc André Tanner
2017-02-11test/vis: drop cpp(1) as a preprocessorMarc André Tanner
It is not worth the trouble to deal with different escaping rules. The tests should be relatively small and self contained anyway, hence comments should not be that important.
2017-02-10vis: make r handle special keys like <Tab>Marc André Tanner
Unlike vim we do not respect `:set expandtab` here.
2017-02-10vis: make t, T, f and F work for special keysMarc André Tanner
Fix #491
2017-02-10vis: introduce vis_keys_utf8Marc André Tanner
2017-02-09sam: fix bogus clang compiler warningMarc André Tanner
Strictly speaking this is a compiler bug: https://llvm.org/bugs/show_bug.cgi?id=22062 The C11 standard section 6.4.4.3 says: "An identifier declared as an enumeration constant has type int." and 6.7.2.2: "Each enumerated type shall be compatible with char, a signed integer type, or an unsigned integer type. The choice of type is implementation-defined, but shall be capable of representing the values of all the members of the enumeration." So while `err` can store a value larger than that of any enumeration member, it could also be of signed type, resulting in a warning about comparing integers of different signs. Converting it to size_t before the range check and array indexing, should fix both warnings. Fix #478
2017-02-09text: fix use of uninitialized variable in error pathMarc André Tanner
2017-02-09Slightly update developer section of READMEMarc André Tanner
2017-02-09Remove regex section from READMEMarc André Tanner
By now we have efficient forward searches using the TRE regex backend. Further improvements can be discussed in #488. Close #260
2017-02-08vis: improve <C-d> and <C-t> implementation in insert modeMarc André Tanner
Fix #487
2017-02-08vis: fix cursor positioning after :helpMarc André Tanner
2017-02-08vis: make `ga` and `g8` more robustMarc André Tanner
Fixes CID 141179
2017-02-08vis-menu: check read(2) return valueMarc André Tanner
Fixes CID 137371
2017-02-08vis-digraph: properly initialize local variableMarc André Tanner
Fixes CID 141180
2017-02-08test: updateMarc André Tanner
2017-02-08text: clean up iterator semanticsMarc André Tanner
We now guarantee the existence of at least one non-sentinel piece at all time and allow iterators to recover from these delimiting pieces.
2017-02-08sam: execute commands even if we have no valid rangeMarc André Tanner
In an ideal world this should never happen. However, if for some reason all cursors/selections become invalid, default to an empty range. This at least allows to terminate the editor gracefully whereas before the command would silently be ignored.
2017-02-08text: remove special case for marks at start of fileMarc André Tanner
Unlike EOF address 0 needs no special treatment.
2017-02-08view: fix view_cursors_scroll_to to operate on current stateMarc André Tanner
This should fix display issues when entering the first newline of a file.
2017-02-08vis: make sure prompt starts newline terminatedMarc André Tanner
2017-02-08test/core: adjust mark related testsMarc André Tanner
2017-02-08test/core: add tests for new iterator semanticsMarc André Tanner
2017-02-07Allow {} to be nested in shell variablesS. Gilles
This allows lines like : ${FOO:="${bar}/baz"} to be highlighted correctly.
2017-02-07test: updateMarc André Tanner
2017-02-07test: add a few new tests related to text objectsMarc André Tanner
2017-02-07vis: improve text object handlingMarc André Tanner
Fix `gN` and delimited inner variants when given a count.
2017-02-07vis: reformat text object definitionsMarc André Tanner
2017-02-06Disable keymap for movement_key characterMichael Forney
The character following a movement_key command should not be subject to keymap translation since it is used to find characters in the document.
2017-02-05vis: set $vis_file{name,path} environment variables for external commandsMarc André Tanner
2017-02-05vis: add file argument to vis_pipeMarc André Tanner
2017-02-04view: reduce redraws upon selection changesMarc André Tanner
2017-02-04view: keep track of the most recently created cursorMarc André Tanner
Previously this was done implicitly through the primary cursor which was always adjusted when a new cursor is being created. However, this is no longer the case and we do not want to iterate through all cursors when creating a new one. In the longterm we might want to store cursors in a contiguous memory location (i.e. an array) instead of chaising pointers all over the place.