summaryrefslogtreecommitdiff
path: root/main.c
AgeCommit message (Collapse)Author
2016-01-16vis: make o and O work in promptMarc André Tanner
2016-01-13Implement command/search prompt history as a regular fileMarc André Tanner
2016-01-13vis: cleanup key binding definitionsMarc André Tanner
This removes the tree based mode structures and instead merges all keybindings in flat modes which uses some more memory but will allow (per mode) run-time configurable key bindings. Make sure to update/remove config.h.
2016-01-06vis: apply <C-v> to all cursors not only primary oneMarc André Tanner
2016-01-06vis: enhance <C-v> to recognize a few special keysMarc André Tanner
Up until now <C-v> in insert/replace mode would only recognize numeric codes in various formats. This commits adds support for a few special keys such as <Enter> or <Tab>.
2015-12-26vis: refactor Lua integrationMarc André Tanner
Lua support can now be disabled at compile time using: $ make CONFIG_LUA=0 This commit also adds an initial Lua API and provides a few default hooks. We now also require Lua >= 5.2 due to the uservalue constructs. In principle the same functionality could be implemented using function environments from Lua 5.1.
2015-12-20vis: fix forceful redraw <C-l>Marc André Tanner
2015-11-28vis: add namespace prefix for MARK_SELECTION_{START,END}Marc André Tanner
2015-11-28vis: improve switching to prompt modeMarc André Tanner
A call to vis_prompt_show will now automatically switch to prompt mode. Within the prompt leave/enter handlers the focused window (vis->win) will still point to the document window not the one referring to the prompt. The selection marks '< and '> are now only updated when a visual mode is left.
2015-11-28vis: implement = operator in terms of fmt(1)Marc André Tanner
2015-11-28vis: add cmd argument to VIS_OP_FILTERMarc André Tanner
2015-11-27vis: improve cursor alignment command <C-a>Marc André Tanner
2015-11-27vis: improve creation of new cursors on line above/belowMarc André Tanner
Use view cell matrix data to create the cursors on more appropriate positions. Closes #108
2015-11-27vis: implement filter operator !Marc André Tanner
It currently works by switching to visual mode and then opening the command prompt with a default range which refers to the currently active selection.
2015-11-23vis: fix compiler warnings related to `ga` implementationMarc André Tanner
2015-11-23vis: implement gaMarc André Tanner
2015-11-19vis: improve <C-p> in visual modeMarc André Tanner
Make sure that the (new) primary cursor is visible after removing the last matched selection.
2015-11-08vis: remove regex based syntax highlightingMarc André Tanner
2015-11-07vis: prefix enum VisMotion values with VIS_Marc André Tanner
2015-11-07vis: tweak enum VisTextObject namesMarc André Tanner
2015-11-07vis: prefix enum VisOperator values with VIS_Marc André Tanner
2015-11-07vis: API documentation and cleanupMarc André Tanner
2015-11-03vis: make open line commands (o and O) repeatableMarc André Tanner
The implementation of O is a bit of a hack and has a few issues: - does not respect auto indentation settings - does not meaningfully repeat when given a count
2015-11-03vis: make single character replace (r command) repeatableMarc André Tanner
2015-11-02vis: make I command repeatableMarc André Tanner
2015-11-02vis: make append (a and A) commands repeatableMarc André Tanner
2015-10-31vis: adapt some comments to new input handling codeMarc André Tanner
2015-10-27vis: make Vis an opaque type, hide implementaton detailsMarc André Tanner
2015-10-27vis: introduce vis_prompt_enter APIMarc André Tanner
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é Tanner
2015-10-27vis: introduce pseudo operators for putMarc André Tanner
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é Tanner
2015-10-26vis: introduce explicit operators for case changesMarc André Tanner
2015-10-26vis: move key handling functions to main.cMarc André Tanner
2015-10-23vis: begin librarization of core vis primitivesMarc André Tanner
2014-09-09Rename vis.[ch] to editor.[ch] and main.c to vis.cMarc André Tanner
2014-09-09Unclutter config.def.h by moving stuff to main.cMarc André Tanner
2014-09-09Open all files given on command lineMarc André Tanner
2014-09-09Add infrastructure for commandsMarc André Tanner
2014-09-09Fix a few memory leaksMarc André Tanner
2014-09-09Change mode input prototypeMarc André Tanner
2014-09-08Improve undo/redoMarc André Tanner
Currently a snapshot is taken whenever an operator is completed or a certain idle time in either insert or replace mode is detected.
2014-09-08Hook up search as a movementMarc André Tanner
2014-09-08Add user prompt infrastructureMarc André Tanner
This is implemented by means of an one line height editor window and a set of custom key bindings.
2014-09-05Cleanup vis.hMarc André Tanner
2014-09-04Skip modes with common prefix if it does not matchMarc André Tanner
2014-09-04Implement movement to a given lineMarc André Tanner
2014-09-04Factor out getkey logicMarc André Tanner
2014-09-03Enable text objects, introduce operator optionsMarc André Tanner
2014-09-01Refactor frontend codeMarc André Tanner
window.[ch] now contains a somewhat generic editor window which is then enhanced in vis.[ch] with a statusbar.