summaryrefslogtreecommitdiff
path: root/window.c
AgeCommit message (Collapse)Author
2015-04-22Rename window.[ch] to view.[ch]Marc André Tanner
2015-04-22More renames, no functional changesMarc André Tanner
Win -> View, window_* -> view_*
2015-04-15Try to remember column position when moving across linesMarc André Tanner
This currently only works for non-wrapped lines.
2015-04-10Highlight matching cursor symbolMarc André Tanner
2015-04-07Fix cell attributes for tabsMarc André Tanner
This should fix some selection artifacts.
2015-04-07Show cursor in visual modeMarc André Tanner
2015-04-07Set '< and '> marksMarc André Tanner
2015-04-05Fix clang static analyzer warningsMarc André Tanner
2015-04-05Introduce new struct VisTextMarc André Tanner
This adds yet another layer of indirection and stores vi related stuff which is associated with a given text but shared among all windows displaying it (e.g. marks). This will also help if one wants to keep texts arround which aren't currently displayed.
2015-04-03Add option to display relative line numbersMarc André Tanner
:set rnu Based on a patch by Sebastian Götte.
2015-04-03Preliminary user interface separationMarc André Tanner
In theory only ui-curses.[hc] should depend on curses, however in practice keyboard input is still handled in vis.c. Furthermore the syntax definitions as well as keyboard bindings and selection code in window.c still depends on some curses constants. There is also a slight regression in that the window status bar does not show the current mode name. This and related global state should be eliminated in the future.
2015-01-13Add new logical linewise movementsMarc André Tanner
The column position is currently not correctly preserved when there are lines with multibyte characters involved spanning multiple screen lines. In general this might still be a bit fragile.
2015-01-13Rename window_line_* functionsMarc André Tanner
2015-01-06Fix some compiler warningsMarc André Tanner
2015-01-04Change window_cursor_getxy APIMarc André Tanner
2015-01-03Fix size_t specifiers in format stringsMatthias Braun
2015-01-01Rename mark related functionsMarc André Tanner
2014-12-23Optionally display line numbers alongside fileMarc André Tanner
Enable/disable with :set number [0|1]
2014-10-25Fix mode switching bugsMarc André Tanner
2014-10-25Set MARK_SELECTION_{START,END} in visual modeMarc André Tanner
2014-10-23Move feature test macros to config.mkMarc André Tanner
2014-09-27Implement 'zt', 'zz', 'zb'Marc André Tanner
In particular 'zb' might not work if there are wrapped lines involved.
2014-09-24Implement 'g0', 'gm', 'g$'Marc André Tanner
2014-09-23Implement linewise visual modeMarc André Tanner
2014-09-22Fix display of selection in visual modeMarc André Tanner
2014-09-19Improve syntax highlightingMarc André Tanner
2014-09-19Remove some TODO itemsMarc André Tanner
2014-09-19Windows style newlines are actually \r\n not \n\rMarc André Tanner
This is fiddely stuff, hopefully it doesn't break too much
2014-09-19Implement expand tab functionality, make tabwidth configurableMarc André Tanner
If expandtab is enabled then inserted tabs are replaced by tabwidth amount of spaces. Both settings apply to all windows files and can be changed via: :set tabwidth n # where 1 <= n <= 8 :set expandtab (1|yes|true)|(0|no|false)
2014-09-16Implement CTRL-{U,D,E,Y} in normal modeMarc André Tanner
2014-09-16Clean up cursor handling in window.[ch]Marc André Tanner
2014-09-15More efficient syntax highlighting, first match winsMarc André Tanner
2014-09-14Fix clang static analyzer warningsMarc André Tanner
2014-09-13Introduce some helper functions dealing with FilerangeMarc André Tanner
2014-09-13Rename text_insert_raw to text_insertMarc André Tanner
2014-09-13Introduce and use EPOS instead of (size_t)-1Marc André Tanner
2014-09-13Make window_selection_get to return the correct rangeMarc André Tanner
This makes the operator operate on the correct file range if executed from visual mode. The problem is that if the cursor is visible the selection seems larger than it actually is. The cell under the cursor is actually not part of the selection eventhough it is visually indistinguishable from it. The somewhat hacky way around this is to hide the cursor once selection is active and show it again once the selection is cleared. This will probably cause a headache if the cursor needs to be visible while a selection is active like for example in the command prompt.
2014-09-13Add movements 'H', 'M', 'L'Marc André Tanner
H moves to the n-th window line from top M moves to the middle window line L moves to the n-th window line from bottom
2014-09-11Fix bug when moving to characters with display width > 1Marc André Tanner
2014-09-11Add :edit commandMarc André Tanner
2014-09-11Fix warnings about redefinition of typedefed structsMarc André Tanner
2014-09-10Add comments where appropriateMarc André Tanner
2014-09-09Cleanup header filesMarc André Tanner
2014-09-09Remove trailing whitespaces (sed 's/[ \t]*$//')Marc André Tanner
2014-09-09Rename vis.[ch] to editor.[ch] and main.c to vis.cMarc André Tanner
2014-09-09Fix a few memory leaksMarc André Tanner
2014-09-02Teach window_cursor_to how to display the end of the fileMarc 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.