summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-12-30sam: change write command implementation to not change argv[]Marc André Tanner
The same Command struct might be used for multiple command executions. An example is `:X wq` which is roughly equivalent to `:wqa` in vim.
2016-12-30sam: explicitly pass invalid range for X and Y commandsMarc André Tanner
These are never used because there is always an implicit select command prepended.
2016-12-30sam: use more expressive name for select commandMarc André Tanner
This is not really used, but commands can expect to have argv[0] set to something. Also "s" is ambigious with the substitute command.
2016-12-29Add rc lexerMichael Forney
2016-12-29vis-lua: allow vis:map to set up key aliases and actionsMarc André Tanner
2016-12-29vis-lua: introduce vis:action_registerMarc André Tanner
2016-12-29vis: cleanup key action lifetime managementMarc André Tanner
2016-12-29vis-lua: simplify lua function reference handlingMarc André Tanner
2016-12-29vis-lua: luaL_checkstring already checks for NULL return valueMarc André Tanner
2016-12-29test: updateMarc André Tanner
2016-12-29vis: unmap all conflicting bindings of a forced map commandMarc André Tanner
2016-12-29map: implement map_prefix_deleteMarc André Tanner
2016-12-29map: implement map_firstMarc André Tanner
2016-12-28vis: do not free right hand side of mapping twiceMarc André Tanner
Fix #447
2016-12-28build: use latest Lua 5.3.x for make local and standalone buildsMarc André Tanner
2016-12-27build: update libtermkey to version 0.19Marc André Tanner
Close #445
2016-12-27vis: properly free dynamic key bindingsMarc André Tanner
The handling of :unmap needs to be revisited at some point.
2016-12-27array: implement array_removeMarc André Tanner
2016-12-27travis: install 9baseMarc André Tanner
This should enable sam related tests for Linux builds.
2016-12-27build: configure ncurses with --disable-leaksMarc André Tanner
Makes analysis with valgrind easier.
2016-12-27build: pass $CFLAGS_EXTRA through make debug targetMarc André Tanner
2016-12-26fix help text for next/prev matchErlend Fagerheim
2016-12-23text-objects: explicitly ignore return value of strtoll(3)Marc André Tanner
We are only interested in the first invalid character.
2016-12-23Apply format string attribute to printf style functionsMarc André Tanner
Not strictly C99 conform, but widely supported and easy enough to NOP for compilers which do not support it. Besides it was already used to mark certain functions as noreturn.
2016-12-23text: make text_vprintf static, it is only used within text.cMarc André Tanner
2016-12-22text: remove Filepos typedefMarc André Tanner
The idea might be good, but it was almost unused.
2016-12-22text: introduce EMARK to denote an invalid markMarc André Tanner
Technically this macro name is in the reserved namespace of errno.h. The same is true for EPOS. Maybe we should rename them at some point, but for now the short names are convenient. Fix #443 Close #444
2016-12-22test: updateMarc André Tanner
2016-12-22vis-lua: store Vis context in upvalues where neededMarc André Tanner
2016-12-22text: change datatype of Mark to uintptr_tMarc André Tanner
This should avoid undefined pointer comparisons.
2016-12-22text: make default block size overridable via C pre-processorMarc André Tanner
This will be used for unit test purposes to force more allocations.
2016-12-22buffer: make default buffer size overridable via C pre-processorMarc André Tanner
2016-12-22text: avoid undefined multiple accesses in expressionMarc André Tanner
Work around for a (bogus?) tis-interpreter warning.
2016-12-22text: do not rely on indeterminate value in a comparisonMarc André Tanner
2016-12-22build: do not install lua/doc directoryMarc André Tanner
2016-12-22build: also include working tree state in version informationMarc André Tanner
2016-12-21vis: implement `gh` and `gl` to move by relative byte offsetsMarc André Tanner
2016-12-21vis: implement `go` to move to absolute byte positionMarc André Tanner
2016-12-21vis: implement g8Marc André Tanner
Shows hex values up to the next UTF-8 encoded character.
2016-12-20vis: improve literal insertion via <C-v> in insert modeMarc André Tanner
2016-12-20vis: improve gaMarc André Tanner
2016-12-20ui: increase maximum info message lengthMarc André Tanner
2016-12-20buffer: implement buffer_capacity utility functionMarc André Tanner
2016-12-20buffer: implement buffer_appendf to append formatted contentMarc André Tanner
2016-12-20buffer: fix error case in buffer_append0Marc André Tanner
Do not change buffer length when failing to append.
2016-12-19vis-lua: implement vis.registers[] arrayMarc André Tanner
Notice that currently only single letter register names/array indices are supported. Register handling needs to be cleaned up at some point.
2016-12-19vis: introduce vis_register_from utility functionMarc André Tanner
2016-12-19vis-lua: simplify obj_ref_new error handlingMarc André Tanner
2016-12-19vis-lua: simplify object reference checkingMarc André Tanner
Make obj_ref_check handle invalid object references. The luaL_argerror function throws a Lua error and never returns, hence all return value checks become obsolete.
2016-12-19vis-lua: implement file.marks[] arrayMarc André Tanner
We need to retrieve a pointer to the File struct but can not store it directly in the Lua uservalue because the address is already used for the regular file object (of type vis.file). For now we use file->marks as an address and then use offsetof to retrieve the start of the struct.