aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-10-22vis: remove more global stateMarc André Tanner1-23/+23
2015-10-22vis: pass editor instance to command handling funcitonsMarc André Tanner2-58/+58
2015-10-22vis: pass editor instance to mode handling functionsMarc André Tanner3-23/+23
2015-10-22vis: refactor operator implementationMarc André Tanner2-34/+28
Pass editor instance and text to operate on as parameter instead of using global state.
2015-10-22vis: include :-commands in :help outputMarc André Tanner1-0/+4
2015-10-22vis: improve :help text, add separate status mode namesMarc André Tanner4-10/+38
2015-10-22text: introduce text_appendf utility functionMarc André Tanner2-0/+9
2015-10-22vis: correct typos in help textDavid B. Lamkins1-18/+18
2015-10-20view: ensure minimal window sizeMarc André Tanner1-0/+4
Do not create empty windows, more importantly do not overwrite random memory. Closes #80
2015-10-15vis: preserve ui options when splitting windowsMarc André Tanner1-2/+8
Closes #72
2015-10-15ui: add uniform function prefixMarc André Tanner1-22/+22
Not strictly necessary since those are static, but still nicer.
2015-10-15ui: cleanup redrawingMarc André Tanner4-64/+61
2015-10-15vis: alias <C-h> to <Backspace>Marc André Tanner1-0/+4
libtermkey-0.18 does no longer treat them as equal.
2015-10-14vis: introduce special keys which allow mappings to editor actionsMarc André Tanner3-1/+44
Key bindings in vis are always recursive, hence mapping ~ to ~l will cause an infinite loop. Instead vis supports special editor "keys" which map to internal editor functions. As an example one can thus map ~ to <vis-operator-case-swap>l or even <vis-operator-case-swap><cursor-char-next> Furthermore this makes it possible to completely unmap core editor features such as operators, the corresponding funtionality is still available via its corresponding special key.
2015-10-14vis: fix name clash of keyboard actionsMarc André Tanner1-2/+2
2015-10-14view: cleanup whitespace replacement symbol handlingMarc André Tanner4-39/+37
2015-10-14view: cleanup option handlingMarc André Tanner7-23/+46
2015-10-14ui: refactor syntax style definitionsMarc André Tanner7-194/+590
Styles can now be specified as strings which will make them easier to specify from outside the editor. The following style attributes can be given in a comma separated list: bold italics underlined fore:color back:color where color is either a hex value of the form #aabbcc or one of the predefined colors: black red green yellow blue magenta cyan white
2015-10-11vis: properly ignore tab at command promptMarc André Tanner2-1/+13
Closes #77
2015-10-09text: fix usage of va_arg in text_vprintfDavid B. Lamkins1-1/+4
Closes #76
2015-10-08ui: fix ressource leak (CID 114606)Marc André Tanner1-5/+6
2015-10-08build: always take revision from current branchMarc André Tanner1-1/+1
2015-10-06travis: remove harmful line continuation symbolsMarc André Tanner1-2/+2
2015-10-06travis: install libtermkey dependencyMarc André Tanner1-1/+5
2015-10-06Change release tarball compression to gzipMarc André Tanner2-2/+2
2015-10-06add a new Makefile target 'release' to build release tarballChristian Hesse2-1/+5
2015-10-06update version handling to work with tags or without gitChristian Hesse1-6/+13
2015-10-05Add section about build dependencies to READMEMarc André Tanner1-2/+11
2015-10-05vis: add rudimentary :help commandMarc André Tanner2-0/+36
2015-10-05Add a profile Makefile targetMarc André Tanner1-0/+3
2015-10-05text: add text_{v,}printf functionMarc André Tanner2-0/+21
Convenient way to insert formated data into a Text.
2015-10-05vis: fix key alias implementationMarc André Tanner1-0/+1
2015-10-05vis: introduce keyboard actionsMarc André Tanner3-310/+1189
This adds another level of indirection by defining keyboard actions which will likely eventually be used by a :map command.
2015-10-05vis: remove now unused common_prefix mode attributeMarc André Tanner2-2/+0
2015-10-05vis: consolidate all text objects into one modeMarc André Tanner1-13/+2
2015-10-05vis: add rudimentary support for key aliasesMarc André Tanner2-4/+10
This will eventually be exposed via a :map style command.
2015-10-05buffer: add functions to prepend data to an existing bufferMarc André Tanner2-0/+16
2015-10-05vis: cleanup keyboard handling implementationMarc André Tanner3-32/+29
2015-10-05vis: update mode diagram in config.def.h to be closer to realityMarc André Tanner1-25/+17
2015-10-05vis: convert mark handling to new input handling codeMarc André Tanner2-129/+42
2015-10-05vis: convert insertion of register from insert modeMarc André Tanner2-42/+9
2015-10-05vis: convert register specification to new input handling codeMarc André Tanner2-41/+13
2015-10-05vis: convert macro recording / replay to new input handling codeMarc André Tanner1-16/+19
2015-10-05vis: convert insert verbatim to new input handling codeMarc André Tanner1-18/+19
2015-10-05vis: convert to/till movements to new input handlingMarc André Tanner1-7/+5
2015-10-05vis: adapt r (replace) to new input handlingMarc André Tanner1-6/+7
2015-10-05vis: change key binding function prototypesMarc André Tanner3-191/+256
The idea is to work more like a finite state machine. Every function gets an additional argument keys which holds the already read keyboard input. The return value of the functions should point to the first not consumed key. A return value of NULL indicates that more input is needed. The function will be called again from the editor core when more input is available. These changes are mostly mechanical and in many cases not optimal, they will be cleaned up in further commits.
2015-10-05vis: rework input handling using libtermkeyMarc André Tanner9-577/+585
Key bindings are now specified as symbolic key strings, this will eventually allow run time configurable key mappings. This introduces a bulid time dependency on libtermkey which can be found at: http://www.leonerd.org.uk/code/libtermkey/
2015-09-15Add utfnext utility functionMarc André Tanner2-0/+9
2015-09-15buffer: add buffer_put0 to store a NUL terminated stringMarc André Tanner2-1/+7