aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/syntax.c
Commit message (Collapse)AuthorAge
...
| * vim-patch:8.0.1146: redraw when highlight is set with same namesJan Edmund Lazo2019-07-06
| | | | | | | | | | | | Problem: Redraw when highlight is set with same names. (Ozaki Kiichi) Solution: Only free and save a name when it changed. (closes vim/vim#2120) https://github.com/vim/vim/commit/452030e530aad9b08fcfa71737d098b33c752b85
| * vim-patch:8.0.0755: terminal window does not have colors in the GUIJan Edmund Lazo2019-07-06
| | | | | | | | | | | | Problem: Terminal window does not have colors in the GUI. Solution: Lookup the GUI color. https://github.com/vim/vim/commit/26af85d97ba1ed0ade6cdd41890ca04ed879b9c7
* | Merge #10391 from janlazo/vim-8.1.0495Justin M. Keyes2019-07-16
|\ \ | | | | | | vim-patch:8.1.{495,505,531,533,583,623,630,641,686,715,833,1012,1221,1651}
| * | vim-patch:8.1.0495: :filter only supports some commandsJan Edmund Lazo2019-07-15
| | | | | | | | | | | | | | | | | | | | | Problem: :filter only supports some commands. Solution: Add :filter support for more commands. (Marcin Szamotulski, closes vim/vim#2856) https://github.com/vim/vim/commit/f86db78fed78541cefdb706e4779ce5ae9ca7820
* | | Merge pull request #10504 from bfredl/hl_defBjörn Linse2019-07-16
|\ \ \ | |/ / |/| | highlight: expose builtin highlight groups using hl_group_set event
| * | highlight: expose builtin highlight groups using hl_group_set eventBjörn Linse2019-07-14
| | |
* | | syntax: refactor syn_list_header to not use magic valueBjörn Linse2019-07-14
| | |
* | | syntax: fix missing newlines in execute("syn list"). fixes #10467Björn Linse2019-07-14
|/ /
* / ui: add 'redrawdebug' option for flexible debugging of redrawingBjörn Linse2019-07-09
|/
* highlight: show "hi Group" message correctly when not using the screenBjörn Linse2019-07-05
| | | | | | | ext_message doesn't set msg_col. Add a space and let client deal with wrapping. When using silent redirect show the unwrapped message form. Removed check is already part of msg_advance()
* ui: add 'winblend' to support blending of floating windowsBjörn Linse2019-06-25
| | | | Also add `hi blend=` attribute to override transparency of indiviual attributes.
* vim-patch:8.1.0198: there is no hint that syntax is disabled for 'redrawtime'Jan Edmund Lazo2019-06-24
| | | | | | Problem: There is no hint that syntax is disabled for 'redrawtime'. Solution: Add a message. https://github.com/vim/vim/commit/0a6efcd27d62935c465b4406c0c0db9be10a0ddb
* vim-patch:8.1.0437: may access freed memory when syntax HL times outJan Edmund Lazo2019-06-24
| | | | | | Problem: May access freed memory when syntax HL times out. (Philipp Gesang) Solution: Clear b_sst_first when clearing b_sst_array. https://github.com/vim/vim/commit/95892c27b242cdbc78e622c7a861a4e15aec7a30
* vim-patch:8.1.0673: functionality for signs is spread out over several filesAndrej Zieger2019-05-26
| | | | | | | Problem: Functionality for signs is spread out over several files. Solution: Move most of the sign functionality into sign.c. (Yegappan Lakshmanan, closes vim/vim#3751) https://github.com/vim/vim/commit/bbea47075cc4e7826e9f8c203e4272ba023ed7b0
* lintJustin M. Keyes2019-05-25
|
* vim-patch:8.0.1496: VIM_CLEAR()Justin M. Keyes2019-05-25
| | | | | | | | Problem: Clearing a pointer takes two lines. Solution: Add VIM_CLEAR() and replace vim_clear(). (Hirohito Higashi, closes #2629) vim-patch:8.0.1481
* vim-patch:8.1.1209: clever compiler warns for buffer being too smallJan Edmund Lazo2019-04-27
| | | | | | Problem: Clever compiler warns for buffer being too small. Solution: Make the buffer bigger (even though it's not really needed). https://github.com/vim/vim/commit/5431589d25e73892fcf7ad1eaca53f742c1c9303
* vim-patch:8.0.1133: syntax timeout not used correctlyJan Edmund Lazo2019-04-23
| | | | | | | Problem: Syntax timeout not used correctly. Solution: Do not pass the timeout to syntax_start() but set it explicitly. (Yasuhiro Matsumoto, closes vim/vim#2139) https://github.com/vim/vim/commit/f3d769a585040ac47f7054057758809024ef6377
* lintJan Edmund Lazo2019-04-23
|
* vim-patch:8.0.0647: syntax highlighting can make cause a freezeJan Edmund Lazo2019-04-23
| | | | | | Problem: Syntax highlighting can make cause a freeze. Solution: Apply 'redrawtime' to syntax highlighting, per window. https://github.com/vim/vim/commit/06f1ed2f78c5c03af95054fc3a8665df39dec362
* floats: add NormalFloat highlight and 'nonumber' defaultBjörn Linse2019-03-12
|
* vim-patch:8.0.0643: when a pattern search is slow Vim becomes unusableBilly Su2019-03-07
| | | | | | | | | Problem: When 'hlsearch' is set and matching with the last search pattern is very slow, Vim becomes unusable. Cannot quit search by pressing CTRL-C. Solution: When the search times out set a flag and don't try again. Check for timeout and CTRL-C in NFA loop that adds states. https://github.com/vim/vim/commit/fbd0b0af6800f6ff89857863d6a07ea03f09ff6c
* rename ui_is_external to ui_has (#9576)Justin M. Keyes2019-02-03
|
* build: enable -WshadowJustin M. Keyes2019-01-02
| | | | | | | | | | Note about shada.c: - shada_read_next_item_start was intentionally shadowing `unpacked` and `i` because many of the macros (e.g. ADDITIONAL_KEY) implicitly depended on those variable names. - Macros were changed to parameterize `unpacked` (but not `i`). Macros like CLEAR_GA_AND_ERROR_OUT do control-flow (goto), so any other approach is messy.
* vim-patch:8.1.0098: segfault when pattern with \z() is very slow (#9283)Justin M. Keyes2018-11-29
| | | | | | | | Problem: Segfault when pattern with \z() is very slow. Solution: Check for NULL regprog. Add "nfa_fail" to test_override() to be able to test this. Fix that 'searchhl' resets called_emsg. https://github.com/vim/vim/commit/bcf9442307075bac40d44328c8bf7ea21857b138 closes #8788
* diff/highlight: do not overlay low-priority CursorLineJustin M. Keyes2018-11-27
| | | | ref #6380
* ui: disable clearing almost everywhereBjörn Linse2018-10-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid clearing the screen in most situations. NOT_VALID should be equivalent to CLEAR unless some external force messed up the terminal, for these situations <c-l> and :mode will still clear the screen. Also eliminate some obsolete code in screen.c, that dealt with that in vim drawing window 1 can mess up window 2, but this never happens in nvim. But what about slow terminals? There is two common meanings in which a terminal is said to be "slow": Most commonly (and in the sense of vim:s nottyfast) it means low bandwidth for sending bytes from nvim to the terminal. If the screen is very similar before and after the update_screen(CLEAR) this change should reduce bandwidth. If the screen is quite different, but there is no new regions of contiguous whitespace, clearing doesn't reduce bandwidth significantly. If the new screen contains a lot of whitespace, it will depend of if vsplits are used or not: as long as there is no vsplits, ce is used to cheaply clear the rest of the line, so full-screen clear is not needed to reduce bandwith. However a left vsplit currently needs to be padded with whitespace all the way to the separator. It is possible ec (clear N chars) can be used to reduce bandwidth here if this is a problem. (All of this assumes that one doesn't set Normal guibg=... on a non-BCE terminal, if you do you are doomed regardless of this change). Slow can also mean that drawing pixels on the screen is slow. E-ink screens is a recent example. Avoiding clearing and redrawing the unchanged part of the screen will always improve performance in these cases.
* vim-patch:8.0.1777: cannot cleanup before loading another colorscheme (#9104)Jan Edmund Lazo2018-10-11
| | | | | Problem: Cannot cleanup before loading another colorscheme. Solution: Add the ColorSchemePre autocommand event. https://github.com/vim/vim/commit/60a68362aa73f4a6cb534688978f9dc2b16e60fe
* ui: rename ext_newgrid to ext_linegridBjörn Linse2018-10-01
|
* startup: don't erase screen on `:hi Normal` during startupBjörn Linse2018-09-20
| | | | | | | | | NB: existing `color default` test was actually enough to trigger the bug, when ext_newgrid=false is used. I created the `:hi Normal` test as I thought the builtin colors wouldn't set Normal (unless 'bg' is changed) But as the root cause actually comes from `:hi Normal`, it makes sense to still add the separate test (if `color default` here gets optimized to become a no-op, or something).
* startup: wait for embedder before executing startup commands and filesBjörn Linse2018-09-18
| | | | | | Give embeders a chance to set up nvim, by processing a request before startup. This allows an external UI to show messages and prompts from --cmd and buffer loading (e.g. swap files)
* lint: cleanup after parent commitsZviRackover2018-08-16
|
* Remove has_mbyte from lines near changes in parent commitZviRackover2018-08-16
|
* Remove occurences of mb_head_offZviRackover2018-08-15
|
* cursor_shape: use attribute ids instead of syntax idsBjörn Linse2018-08-13
| | | | | As attribute ids is the convention in the UI protocol Also remove non-threadsafe calls in tui.c to syntax module.
* Remove some occrrences of enc_utf8 and has_mbyteZviRackover2018-08-06
| | | | | Removing uses and related dead code in the locallity of changes of the two parent commits.
* Remove all occurences of the mb_ptr2char macroZviRackover2018-08-06
| | | | | | | First step towards implemening issue #7401. The same can be done for all deprecated mb_ functions in follow-up patches.
* Merge #8742 vim-patch:8.0.0791,0831,1072,1078,1088Justin M. Keyes2018-08-04
|\
| * vim-patch:8.0.1088: occasional memory use after freeJan Edmund Lazo2018-07-29
| | | | | | | | | | | | Problem: Occasional memory use after free. Solution: Use the highlight table directly, don't keep a pointer. https://github.com/vim/vim/commit/414168d97fad45387a3d7dd16449d15b27079ad8
| * vim-patch:8.0.1078: using freed memory with ":hi Normal"Jan Edmund Lazo2018-07-29
| | | | | | | | | | | | Problem: Using freed memory with ":hi Normal". Solution: Get "item" again after updating the table. https://github.com/vim/vim/commit/b4ea1914b8ca7c368253bd96e6b3cb9e3392da1c
| * vim-patch:8.0.1072: :highlight command causes a redraw even when nothing changedJan Edmund Lazo2018-07-29
| | | | | | | | | | | | Problem: The :highlight command causes a redraw even when nothing changed. Solution: Only set "need_highlight_changed" when an attribute changed. https://github.com/vim/vim/commit/99433291b135094d9592c41f96d3ccd60073e2c1
| * vim-patch:8.0.0831: with 8 colors the bold attribute is not set properlyJan Edmund Lazo2018-07-29
| | | | | | | | | | | | | | | | Problem: With 8 colors the bold attribute is not set properly. Solution: Move setting HL_TABLE() out of lookup_color. (closes vim/vim#1901) https://github.com/vim/vim/commit/12d853fae1fc37c33874b5cf1e40a2dfaf04268c Use TriState on lookup_color() to avoid 'NOLINT' comments.
| * vim-patch:8.0.0791: terminal colors depend on the systemJan Edmund Lazo2018-07-29
| | | | | | | | | | | | Problem: Terminal colors depend on the system. Solution: Use the highlight color lookup tables. https://github.com/vim/vim/commit/b41bf8e6b45a773456031954bca1bc4212cbffbe
* | syntax: syn_pattern.sp_syncing is boolJan Edmund Lazo2018-07-30
| |
* | syntax: add const to get_syntax_attr() paramsJan Edmund Lazo2018-07-30
| |
* | syntax: add const to syn_finish_line() params,varsJan Edmund Lazo2018-07-30
| |
* | syntax: did_header is boolJan Edmund Lazo2018-07-29
| | | | | | | | | | | | | | Refactor all affected functions: - add const - declare and initialize on same line - update boolean declarations from int with bool
* | syntax: scl_id is intJan Edmund Lazo2018-07-29
| |
* | syntax: refactor get_id_list()Jan Edmund Lazo2018-07-29
| | | | | | | | | | | | Add const to parameters and variables. Declare and init variables on same line. Use `sizeof(*ptr)` to calculate size for malloc().
* | syntax: refactor syn_combine_list()Jan Edmund Lazo2018-07-29
| | | | | | | | | | | | | | | | | | Add const on parameters and variables. Update declarations to avoid typecasts. Use `sizeof(*ptr)` for malloc() to reduce effect of type changes. ie. short to int16_t Update syn_compare_stub() variable declarations for consistency.