aboutsummaryrefslogtreecommitdiff
path: root/vis.c
AgeCommit message (Collapse)AuthorFilesLines
2015-11-03vis: add vis_keys_inject to place keys into the input queueMarc André Tanner1-6/+24
This function can only be used from within key handlers. The position argument has to point to a valid key from within the same input buffer after which the new input will be inserted.
2015-11-02vis: free input_queue at exitVirgile Andreani1-0/+1
2015-11-02vis: let keys entered via API affect macro recordingMarc André Tanner1-4/+5
2015-11-02vis: make append (a and A) commands repeatableMarc André Tanner1-2/+10
2015-11-02vis: improve count handling for dot commandMarc André Tanner1-2/+12
2015-11-02vis: improve dot commandMarc André Tanner1-53/+88
Use an implicit macro to make changes in insert/replace mode repeatable.
2015-10-27vis: make Vis an opaque type, hide implementaton detailsMarc André Tanner1-11/+108
2015-10-27vis: introduce vis_macro_recording APIMarc André Tanner1-0/+4
2015-10-27vis: introduce vis_prompt_enter APIMarc André Tanner1-4/+19
This is a really bad API/abtraction but at least it allows us to hide some implementation details.
2015-10-27vis: clean up tab/newline insertion codeMarc André Tanner1-2/+42
2015-10-27vis: introduce pseudo operators for putMarc André Tanner1-9/+21
In principle put is not really an operator, however it still should be repeatable and respect count.
2015-10-26vis: introduce explicit operators for cursor creationMarc André Tanner1-2/+7
2015-10-26vis: introduce explicit operators for case changesMarc André Tanner1-6/+19
2015-10-26vis: move key handling functions to main.cMarc André Tanner1-747/+348
2015-10-26vis: merge editor.c into vis.cMarc André Tanner1-101/+589
2015-10-25vis: introduce vis_key_next APIMarc André Tanner1-5/+4
2015-10-25vis: introduce vis_register_{get,set} APIMarc André Tanner1-6/+21
2015-10-25vis: introduce vis_count_{get,set} APIMarc André Tanner1-9/+19
2015-10-25vis: introduce vis_motion_type APIMarc André Tanner1-1/+5
2015-10-25vis: clean up mark handlingMarc André Tanner1-19/+13
2015-10-25vis: convert jumplist navigation to proper motionsMarc André Tanner1-15/+41
2015-10-25vis: convert changelist navigation to proper motionsMarc André Tanner1-16/+45
2015-10-25vis: introduce vis_repeat APIMarc André Tanner1-5/+9
2015-10-25vis: introduce macro APIMarc André Tanner1-37/+73
2015-10-25vis: introduce vis_keys APIMarc André Tanner1-4/+3
2015-10-25vis: introduce vis_cmd APIMarc André Tanner1-4/+4
2015-10-25vis: introduce vis_textobject APIMarc André Tanner1-32/+8
2015-10-25vis: introduce vis_motion APIMarc André Tanner1-124/+89
2015-10-23vis: introduce vis_mode_switch APIMarc André Tanner1-14/+19
2015-10-23vis: introduce vis_operator APIMarc André Tanner1-23/+27
2015-10-23vis: begin librarization of core vis primitivesMarc André Tanner1-101/+61
2015-10-22vis: refactor startup codeMarc André Tanner1-27/+35
2015-10-22ui: introduce and use ui specific die(...) functionMarc André Tanner1-20/+18
2015-10-22vis: overhaul signal handlingMarc André Tanner1-25/+26
2015-10-22vis: remove config selection based on argv[0]Marc André Tanner1-12/+1
I would still like to experiment with a busybox style editor multiplexer which behaves like vi(m), emacs or nano depending on argv[0].
2015-10-22vis: remove global state from key input handlingMarc André Tanner1-4/+7
2015-10-22vis: remove yet more global stateMarc André Tanner1-53/+55
2015-10-22vis: remove yet more global state from motion functionsMarc André Tanner1-13/+13
2015-10-22vis: rename motion typeMarc André Tanner1-9/+9
2015-10-22vis: remove more global state from motion functionsMarc André Tanner1-39/+41
2015-10-22vis: pass editor instance to keyboard action functionsMarc André Tanner1-165/+165
2015-10-22vis: remove more global stateMarc André Tanner1-23/+23
2015-10-22vis: pass editor instance to command handling funcitonsMarc André Tanner1-57/+57
2015-10-22vis: pass editor instance to mode handling functionsMarc André Tanner1-4/+4
2015-10-22vis: refactor operator implementationMarc André Tanner1-33/+26
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é Tanner1-5/+20
2015-10-15vis: preserve ui options when splitting windowsMarc André Tanner1-2/+8
Closes #72
2015-10-14vis: introduce special keys which allow mappings to editor actionsMarc André Tanner1-1/+32
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-14view: cleanup whitespace replacement symbol handlingMarc André Tanner1-5/+5