summaryrefslogtreecommitdiff
path: root/ui-curses.c
AgeCommit message (Collapse)Author
2016-05-26ui: properly redraw status line when window focus changesMarc André Tanner
2016-05-22vis: refactor status line handlingMarc André Tanner
Make window status bar content configurable via Lua.
2016-05-22vis: add function to change window statusbar contentMarc André Tanner
2016-05-22vis: add functions to query window sizeMarc André Tanner
2016-05-22ui: s/UiStyles/UiStyle/gMarc André Tanner
2016-05-10Revert "vis: clean up interaction between vis and ui"Marc André Tanner
This caused issues on OpenBSD where it crashed the terminal. Also on Mac OS X suspend via ^Z (Ctrl-Z) was missing a \r i.e. the shell prompt was not properly redrawn. While in principle user interfaces should not have to depend on libtermkey, in practice this won't be an issue unless we are adding a non-terminal based UI (which won't happen anytime soon). This reverts commit 8f92b98848f9366e78c7aa824615bade83971513. Close #311
2016-05-04vis: enable large file optimizations for files with long linesMarc André Tanner
2016-05-04vis: clean up cursor column displayMarc André Tanner
2016-05-04vis: clean up interaction between vis and uiMarc André Tanner
A concrete user interface implementation should not have to depend on libtermkey. Therefore the vis core now uses an independent instance to parse keys.
2016-05-04vis: re-open stdin as /dev/tty when reaching EOFMarc André Tanner
This handles (notices the missing - at the end of the command line): $ printf ":new\n" | vis more gracefully. This instructs vis to read commands (not file content) from stdin. Once all input from stdin is consumed we open /dev/tty and start processing regular keyboard input instead.
2016-04-17vis: indicate primary cursor by using a different color instead of blinkingMarc André Tanner
Blinking caused more problems (#251, #202) than it solved. Blank cells were especially problematic.
2016-04-08vis: let :e recreate a window at the same location as the old oneMarc André Tanner
Close #224
2016-04-08vis: indicate primary cursor number in status barMarc André Tanner
If there exist multiple cursors, [n/m] is added to the status bar. Meaning the n-th cursor out of the existing m cursors is currently the primary one.
2016-03-23Remove identically replicated copyright comments from source filesMarc André Tanner
2016-03-12ui/view: general code cleanupMarc André Tanner
2016-03-12ui: use correct default cell styleMarc André Tanner
This is important for files without associated syntax highlighting. The selections should now again be visible.
2016-03-12ui: make primary cursor blink even if no lua theme has been loadedMarc André Tanner
2016-03-11ui: also blink primary cursor if it is on a blank cellMarc André Tanner
2016-03-10view: add query function for multiple cursorsMarc André Tanner
2016-03-10ui: make primary cursor blinkMarc André Tanner
2016-03-10ui: add support for blink style attributeMarc André Tanner
2016-02-12Improve large file supportMarc André Tanner
Disable absolute line numbers for large files (currently anything bigger than 32MiB). This speeds up moving around with for example nn% since no new lines need to be calculated. Of course movements like :nn will be unaffected. The optimizations can be disabled by explicitly enabling absolute line numbers as in :set number
2016-01-30Improve Lua error reportingMarc André Tanner
Display Lua errors in a dedicated window/file. A typo or missing dependency (e.g. lpeg) in visrc.lua will no longer silently fail without any indication. The Lua integration in view.h is not yet converted.
2016-01-17ui: display current line number instead of relative 0Marc André Tanner
2016-01-17ui: support color definitions in terms of the 256 color paletteMarc André Tanner
2016-01-13Implement command/search prompt history as a regular fileMarc André Tanner
2016-01-13ui: make statusbar configurableMarc André Tanner
2016-01-10Simplify code by using text_bytes_alloc0Marc André Tanner
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-17ui: improve fallback code in case of unknown termMarc André Tanner
If the current $TERM value indicates 256 color support fall back to xterm-256color otherwise try xterm. Improves upon 43605fded457cec954600b688d54242341eedc7c Closes #105
2015-11-11ui: fall back to xterm-256color if term initialization failsMarc André Tanner
This improves behaviour for unknwown/unrecognized terminals as is the case for self contained binaries built with "make standalone" which only includes a fixed set of terminal descriptions. Of course the terminal capabilities won't match, which will likely cause some display issues.
2015-11-08ui: warn if theme loading failedMarc André Tanner
2015-11-08Fix warnings found by static analyzerMarc André Tanner
2015-11-08Update year numbers in Copyright clauseMarc André Tanner
2015-11-08Remove trailing white space from source filesMarc André Tanner
2015-11-08ui: try to make sure that selected text is still visibleMarc André Tanner
2015-11-08ui: load syntax theme based on the number of supported colorsMarc André Tanner
The theme to use can be overriden via the $VIS_THEME environment variable. $ VIS_THEME=solarized vis
2015-11-08vis: implement :set colorcolumnMarc André Tanner
2015-11-08ui: make default selection visibleMarc André Tanner
2015-11-08ui: redo syntax coloring after resizeMarc André Tanner
2015-11-08vis: implement :set cursorlineMarc André Tanner
2015-11-08vis: experimental support for lua/lpeg based syntax highlightingMarc André Tanner
The lua based lexers are searched in the following order: $VIS_PATH/lexers $HOME/.vis/lexers /usr/share/vis/lexers followed by the standard lua package.path
2015-11-07vis: API documentation and cleanupMarc André Tanner
2015-11-03vis: let libtermkey map <DEL> to <Backspace>Marc André Tanner
2015-10-27ui: make color parsing more robustMarc André Tanner
2015-10-27ui: properly restore terminal state upon exitMarc André Tanner
2015-10-27vis: make Vis an opaque type, hide implementaton detailsMarc André Tanner
2015-10-27vis: introduce vis_macro_recording APIMarc André Tanner
2015-10-26vis: move key handling functions to main.cMarc André Tanner