aboutsummaryrefslogtreecommitdiff
path: root/test/functional/ui/sign_spec.lua
Commit message (Collapse)AuthorAge
* perf(column): only invalidate lines affected by added signLuuk van Baal2023-11-29
|
* fix(column): apply numhl signs when 'signcolumn' is "no" (#26167)luukvbaal2023-11-23
|
* refactor(sign): move legacy signs to extmarksLuuk van Baal2023-11-17
| | | | | | | | | | | | | | | | | | | | Problem: The legacy signlist data structures and associated functions are redundant since the introduction of extmark signs. Solution: Store signs defined through the legacy commands in a hashmap, placed signs in the extmark tree. Replace signlist associated functions. Usage of the legacy sign commands should yield no change in behavior with the exception of: - "orphaned signs" are now always removed when the line it is placed on is deleted. This used to depend on the value of 'signcolumn'. - It is no longer possible to place multiple signs with the same identifier in a single group on multiple lines. This will now move the sign instead. Moreover, both signs placed through the legacy sign commands and through |nvim_buf_set_extmark()|: - Will show up in both |sign-place| and |nvim_buf_get_extmarks()|. - Are displayed by increasing sign identifier, left to right. Extmark signs used to be ordered decreasingly as opposed to legacy signs.
* fix(statuscolumn): fix sign column highlights (#21727)luukvbaal2023-01-11
| | | Resolve #21726.
* docs: fix typosdundargoc2022-11-02
|
* fix(column): move sign sentinel after inserting/deleting lines (#20400)zeertzjq2022-09-29
|
* chore: fix typos (#17331)dundargoc2022-03-10
| | | | | | Co-authored-by: Hongyi Lyu <hongyi.lyu95@gmail.com> Co-authored-by: Gregory Anders <greg@gpanders.com> Co-authored-by: notomo <notomo.motono@gmail.com> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* fix(signcol): update cursor when signcol changesLewis Russell2022-02-24
| | | | Fixes #14195
* fix(screen): don't put empty sign text in line number columnMatt Wozniski2022-01-04
| | | | | | When `signcolumn=number` but no sign on a given line has any text, display the line's line number instead of the (empty) sign text in the line number column.
* test(sign): add test for culhl optionGregory Anders2021-12-08
|
* fixup! fix(highlight): remove syncolor.vimGregory Anders2021-07-28
|
* Handle 'orphaned signs' on line deletion for signcolumn >= 2Dan Aloni2021-04-17
|
* opt: add tests (#13783)Sirisak Lueangsaksri2021-01-20
|
* feat(sign):Allow signs to be 0 width (#13290)Lukas Reineke2020-12-24
| | | | Adds support for signs to be 0 cells wide. If all signs of the same group have no width, the signcolumn will not be rendered for that group.
* tests/ui: remove unnecessary screen:detach()Björn Linse2019-10-13
| | | | | | | | | | | | | It is perfectly fine and expected to detach from the screen just by the UI disconnecting from nvim or exiting nvim. Just keep detach() in screen_basic_spec, to get some coverage of the detach method itself. This avoids hang on failure in many situations (though one could argue that detach() should be "fast", or at least "as fast as resize", which works in press-return already). Never use detach() just to change the size of the screen, try_resize() method exists for that specifically.
* screen: Adjust buffer sizes for multiple sign columns #10314oni-link2019-06-24
| | | | | | | | * screen: Fix to draw signs with combining characters. The buffer size for signs can be too small, because the upper length limit of a sign can be 56 bytes. If combining characters are only two bytes in size, this reduces to 32 bytes. * screen: Adjust buffer size to maximal sign column count
* vim-patch:8.1.0701: sign message not translated and inconsistent spacingAndrej Zieger2019-05-26
| | | | | | | Problem: Sign message not translated and inconsistent spacing. Solution: Add _() for translation. Add a space. (Ken Takata) Also use MSG_BUF_LEN instead of BUFSIZ. https://github.com/vim/vim/commit/d730c8e2974609034016ca66db09d2ef78784343
* vim-patch:8.1.0614: placing signs can be complicatedAndrej Zieger2019-05-26
| | | | | | | | Problem: Placing signs can be complicated. Solution: Add functions for defining and placing signs. Introduce a group name to avoid different plugins using the same signs. (Yegappan Lakshmanan, closes vim/vim#3652) https://github.com/vim/vim/commit/162b71479bd4dcdb3a2ef9198a1444f6f99e6843
* vim-patch:8.1.1072: extending sign and foldcolumn below the text is ↵Marco Hinz2019-04-03
| | | | | | | | | | | | confusing (#9816) Problem: Extending sign and foldcolumn below the text is confusing. Solution: Let the sign and foldcolumn stop at the last text line, just like the line number column. Also stop the command line window leader. (Christian Brabandt) https://github.com/vim/vim/commit/8ee4c01b8c79a29065c1af05e5d9c0721069765f Closes https://github.com/neovim/neovim/issues/9613
* signs: support multiple columns #9295Dan Aloni2019-03-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | closes #990 closes #9295 - Support for multiple auto-adjusted sign columns. With this change, having more than one sign on a line, and with the 'auto' setting on 'signcolumn', extra columns will shown automatically to accomodate all the existing signs. For example, suppose we have this view: 5147 } 5148 5149 return sign->typenr; 5150 } 5151 } 5152 return 0; 5153 } 5154 We have GitGutter installed, so it tells us about modified lines that are not commmited. So let's change line 5152: 5147 } 5148 5149 return sign->typenr; 5150 } 5151 } ~ 5152 return 0; 5153 } 5154 Now we add a mark over line 5152 using 'ma' in normal mode: 5147 } 5148 5149 return sign->typenr; 5150 } 5151 } a ~ 5152 return 0; 5153 } 5154 Previously, Vim/Nvim would have picked only one of the signs, because there was no support for having multiple signs in a line. - Remove signs from deleted lines. Suppose we have highlights on a group of lines and we delete them: + 6 use std::ops::Deref; --+ 7 use std::borrow::Cow; --+ 8 use std::io::{Cursor}; 9 use proc_macro2::TokenStream; 10 use syn::export::ToTokens; --+ 11 use std::io::Write; >> 12 use std::ops::Deref; Without this change, these signs will momentarily accumulate in the sign column until the plugins wake up to refresh them. + --+ --+ --+ >> 6 Discussion: It may be better to extend the API a bit and allow this to happen for only certain types of signs. For example, VIM marks and vim-gitgutter removal signs may want to be presreved, unlike line additions and linter highlights. - 'signcolumn': support 'auto:NUM' and 'yes:NUM' settings - sort signs according to id, from lowest to highest. If you have git-gutter, vim-signature, and ALE, it would appear in this order: git-gutter - vim-signature - ALE. - recalculate size before screen update - If no space for all signs, prefer the higher ids (while keeping the rendering order from low to high). - Prevent duplicate signs. Duplicate signs were invisible to the user, before using our extended non-standard signcolumn settings. - multi signcols: fix bug related to wrapped lines. In wrapped lines, the wrapped parts of a line did not include the extra columns if they existed. The result was a misdrawing of the wrapped parts. Fix the issue by: 1. initializing the signcol counter to 0 when we are on a wrap boundary 2. allowing for the draw of spaces in that case.
* strings: make vim_snprintf handle %d correctly againBjörn Linse2018-12-24
| | | | This was broken in #9369 (4680ca2)
* signs: Add "numhl" argument #9113Reto Schnyder2018-10-13
| | | | | close #9113 ref #9040
* 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
* win: enable more functional testsJan Edmund Lazo2018-01-06
| | | | | | - plugin/shada_spec.lua: Use \r\n as Windows EOL for tests on BufWriteCmd, FileWriteCmd, FileAppendCmd. Alternative is 'set fileformat=unix'.
* functests: Fix some ui/*_spec testsZyX2017-04-09
|
* functests: Replace execute with either command or feed_commandZyX2017-04-09
| | | | | | | | | | Hope this will make people using feed_command less likely: this hides bugs. Already found at least two: 1. msgpackparse() will show internal error: hash_add() in case of duplicate keys, though it will still work correctly. Currently silenced. 2. ttimeoutlen was spelled incorrectly, resulting in option not being set when expected. Test was still functioning somehow though. Currently fixed.
* Mark some functional tests as pending in WindowsRui Abreu Ferreira2016-08-26
|
* tests: don't ignore highlights in various testsBjörn Linse2016-08-14
|
* functests: Check logs in lua codeZyX2016-06-10
| | | | | | It is otherwise impossible to determine which test failed sanitizer/valgrind check. test/functional/helpers.lua module return was changed so that tests which do not provide after_each function to get new check will automatically fail.
* tests/ui: Also test character at cursorBjörn Linse2015-03-09
|
* shadow previously set signs #1893Felipe Morales2015-02-13