aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/screen.c
Commit message (Collapse)AuthorAge
* buffer: add support for virtual text annotationsBjörn Linse2018-09-17
|
* style: indent, then lintJustin M. Keyes2018-09-13
|
* vim-patch:8.1.0374: moving the cursor is slow when 'relativenumber' is setJustin M. Keyes2018-09-13
| | | | | | Problem: Moving the cursor is slow when 'relativenumber' is set. Solution: Only redraw the number column, not all lines. https://github.com/vim/vim/commit/bd9a53c06c8869ad811cb3dd01a309c9be7d7a63
* vim-patch:8.0.1161rpigott2018-09-13
|
* vim-patch:8.1.0372: screen updating slow when 'cursorline' is set (#8986)Justin M. Keyes2018-09-12
| | | | | Problem: Screen updating slow when 'cursorline' is set. Solution: Only redraw the old and new cursor line, not all lines. https://github.com/vim/vim/commit/90a997987dbbe43af3c15118a35f658f0f037d1d
* UI/cleanup: Remove most redraw_later_clear() callsJustin M. Keyes2018-09-12
| | | | | | Vim :! may "mess up the screen" because of e.g. switching between cooked mode, but Nvim just uses pipes. So maybe we can avoid these redraw_later_clear() CYA calls.
* vim-patch:8.0.1809: various typosJan Edmund Lazo2018-09-11
| | | | | | Problem: Various typos. Solution: Correct the mistakes, change "cursur" to "cursor". (closes vim/vim#2887) https://github.com/vim/vim/commit/b9464821901623f983528acaed9e4dc2cea7387b
* Merge pull request #8945 from ZviRackover/fix-7401-step5Björn Linse2018-09-11
|\ | | | | mbyte: remove mb_char2bytes
| * lint: clean-up after parent commitsZviRackover2018-09-09
| |
| * Remove has_mbytes local to lines changed in parent commitZviRackover2018-09-09
| |
| * Refactor: Remove occurences of mb_char2bytesZviRackover2018-09-09
| |
* | Merge pull request #8915 from rickyz/line_wrappingBjörn Linse2018-09-09
|\ \ | |/ |/| Fix terminal line wrapping detection in the TUI.
| * tui: Hint wrapped lines to terminals.Ricky Zhou2018-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, when neovim would wrap a line across multiple lines, terminal emulators could not detect that the lines represent a single wrapped line as opposed to several separate lines. As a result, many terminals' selection/copying functionality would treat a wrapped line as several newline-delimited lines. Fix this by reenabling a "special trick" from Vim. When a line is wrapped, write the last character of that line followed by the first character of the next line to the terminal. This hints to the terminal that the next line is a continuation of the current line. Extends the raw_line event with a "wrap" parameter which controls when to do wrap hinting.
* | Merge #8921 'highlight: Fix after-EOL matches at cursor'Justin M. Keyes2018-09-04
|\ \ | |/ |/|
| * vim-patch:8.1.0344: 'hlsearch' highlighting has a gap after /$Ricky Zhou2018-09-03
|/ | | | | | | Problem: 'hlsearch' highlighting has a gap after /$. Solution: Remove suspicious code. (Ricky Zhou, closes vim/vim#3400) https://github.com/vim/vim/commit/7ee3f15b21042cb8148980ea486137eaf1b55bcd
* lint: clean-up after parent commitsZviRackover2018-08-31
|
* Remove has_mbytes from lines local to parent commitZviRackover2018-08-31
|
* Refactor: remove mb_ptr2len_len, mb_ptr2cells and mb_ptr2cells_lenZviRackover2018-08-31
| | | | Remove occurences of these macros.
* Merge #8863 'refactor: Remove mb_head_off() 'Justin M. Keyes2018-08-28
|\
| * Remove has_mbyte from lines near changes in parent commitZviRackover2018-08-16
| |
| * Remove occurences of mb_head_offZviRackover2018-08-15
| |
* | Merge #8903 from janlazo/vim-8.0.0883Justin M. Keyes2018-08-26
|\ \
| * | vim-patch:8.0.1228: invalid memory access in GUI testJan Edmund Lazo2018-08-24
| | | | | | | | | | | | | | | | | | Problem: Invalid memory access in GUI test. Solution: Check that the row is not outside of the screen. https://github.com/vim/vim/commit/0e19fc07e73214f94441cb3a495504a1de21eb07
* | | vim-patch:8.0.1214: accessing freed memory when EXITFREE is setJan Edmund Lazo2018-08-25
|/ / | | | | | | | | | | | | Problem: Accessing freed memory when EXITFREE is set and there is more than one tab and window. (Dominique Pelle) Solution: Free options later. Skip redraw when exiting. https://github.com/vim/vim/commit/4f1982800f0aff28df6875e718a786f6c4b11ad9
* | lintJan Edmund Lazo2018-08-23
| |
* | vim-patch:8.0.1041: bogus characters when indenting during visual-block appendJan Edmund Lazo2018-08-23
|/ | | | | | | Problem: Bogus characters appear when indenting kicks in while doing a visual-block append. Solution: Recompute when indenting is done. (Christian Brabandt) https://github.com/vim/vim/commit/e2e69e48134cbfdedea7802810932f8592705024
* Merge #8829 from ZviRackover/fix-7401-step2Justin M. Keyes2018-08-15
|\
| * lint: clean up after parent commitZviRackover2018-08-14
| |
| * Remove occurrences of 'has_mbyte' near lines changes by parent commitZviRackover2018-08-13
| |
| * Remove all occurrences of mb_off2cellsZviRackover2018-08-13
| |
* | Merge pull request #8790 from bfredl/hlattrBjörn Linse2018-08-14
|\ \ | | | | | | pass highlight attrs per value and thread-safely to TUI thread
| * | highlight: HlAttrs is a value type; treat it like suchBjörn Linse2018-08-13
| |/
* / vim-patch:8.1.0057: popup menu displayed wrong when using autocmdJason Felice2018-08-09
|/ | | | | | | Problem: Popup menu displayed wrong when using autocmd. Solution: Use aucmd_prepbuf(). Force updating status line if the popup menu is going to be redrawn anyway. (Christian Brabandt, closes vim/vim#3009) https://github.com/vim/vim/commit/6ba3ec1bace67513a352326864cebc16b3c5bc56
* vim-patch:8.0.1705: when making a vertical split the mode message isn't updatedJan Edmund Lazo2018-08-06
| | | | | | | | Problem: When making a vertical split the mode message isn't always updated, "VISUAL" remains. (Alexei Averchenko) Solution: Only reset clear_cmdline when filling all columns of the last screen line. (Tom M. closes vim/vim#2611) https://github.com/vim/vim/commit/5bab555c2f1b3b86d57e4adeb86d908eff477fc9
* vim-patch:8.0.1169: highlignting one char too many with 'list' and 'cul'Jan Edmund Lazo2018-08-06
| | | | | | Problem: Highlignting one char too many with 'list' and 'cul'. Solution: Check for 'list' being active. (Ozaki Kiichi, closes vim/vim#2177) https://github.com/vim/vim/commit/5ece3e359c4b96d0f9bf1ce690223545f40f34b8
* vim-patch:8.0.1168: wrong highlighting with combination of match and ↵Jan Edmund Lazo2018-08-06
| | | | | | | | | 'cursorline' Problem: wrong highlighting with combination of match and 'cursorline'. Solution: Use "line_attr" when appropriate. (Ozaki Kiichi, closes vim/vim#2111) But don't highlight more than one character. https://github.com/vim/vim/commit/0aa398f55a327282c70f56e0bac2dcb9521da378
* Merge #8749 from janlazo/clint-tristateJustin M. Keyes2018-08-04
|\
| * misc: refactor plines_win{,_nofill}()Jan Edmund Lazo2018-08-02
| | | | | | | | | | Add const to params and variables (declare and init on same line). winheight (param) is bool so replace TRUE/FALSE macros with true/false.
| * fold: add const to hasFoldingWin() variablesJan Edmund Lazo2018-08-02
| | | | | | | | cache is bool so update callers to pass true/false, not TRUE/FALSE.
| * screen: screen_cleared is TriStateJan Edmund Lazo2018-08-01
| |
* | syntax: add const to get_syntax_attr() paramsJan Edmund Lazo2018-07-30
|/
* screen: add const and reindent update_debug_signs()Jan Edmund Lazo2018-07-27
|
* vim-patch:8.0.0837: signs can be drawn on top of console messagesJan Edmund Lazo2018-07-27
| | | | | | | Problem: Signs can be drawn on top of console messages. Solution: don't redraw at a prompt or when scrolled up. (Christian Brabandt, closes vim/vim#1907) https://github.com/vim/vim/commit/0792048842493f224bbd7a5dfb348d834f61b205
* screen.c: add update_window_hl to special redrawing entrypointsBjörn Linse2018-07-27
| | | | | | | | | | | The following (run as a script) used to cause a crash due to :sign using a special redraw (not updating nvim's specific highlight data structures) without proper redraw first, as split just flags for redraw later. set cursorline sign define piet text=>> texthl=Search split sign place 3 line=2 name=piet buffer=1
* screen.c: fix redrawing tabline when messages overflow screenBjörn Linse2018-07-24
|
* ui: use line-based rather than char-based updates in screen.cBjörn Linse2018-07-21
| | | | | | | | | | | | | Add ext_newgrid and ext_hlstate extensions. These use predefined highlights and line-segment based updates, for efficiency and simplicity.. The ext_hlstate extension in addition allows semantic identification of builtin and syntax highlights. Reimplement the old char-based updates in the remote UI layer, for compatibility. For the moment, this is still the default. The bulitin TUI uses the new line-based protocol. cmdline uses curwin cursor position when ext_cmdline is active.
* ui: add TODO for non-working terminal linewrapBjörn Linse2018-07-21
| | | | Note: this has not been working since the TUI reimplementation
* highlight: refactor to use stateful representationBjörn Linse2018-07-21
| | | | | This allows us to keep track of the source higlight groups, and not only the final combined highlights.
* highlight: extract low-level highlight logic from syntax, uiBjörn Linse2018-07-21
|
* screen: truncate showmode messagesBjörn Linse2018-07-12
| | | | | Before this, bottom of screen got messed up when modemsg (+ one extra space to not force terminal scroll) didn't fit on one line.