diff options
author | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2021-04-14 08:53:25 -0400 |
---|---|---|
committer | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2021-04-15 18:30:04 -0400 |
commit | 7d3f31c0643f40645292e03565d18961e8cd72d7 (patch) | |
tree | 5b3f2853706ceccbf33a1e3c1c01fecd70180fb5 /src/nvim/syntax.c | |
parent | eb93399d702917eaef21aaa91640a6a6983b5d21 (diff) | |
download | rneovim-7d3f31c0643f40645292e03565d18961e8cd72d7.tar.gz rneovim-7d3f31c0643f40645292e03565d18961e8cd72d7.tar.bz2 rneovim-7d3f31c0643f40645292e03565d18961e8cd72d7.zip |
vim-patch:8.2.2761: using "syn include" does not work properly
Problem: Using "syn include" does not work properly.
Solution: Don't add current_syn_inc_tag to topgrp. (Jaehwang Jerry Jung,
closes vim/vim#8104)
https://github.com/vim/vim/commit/2e240bd428c0033d16f201d7f837636412358199
Cherry-pick AssertHighlightGroups from patch v8.2.2068.
Diffstat (limited to 'src/nvim/syntax.c')
-rw-r--r-- | src/nvim/syntax.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/nvim/syntax.c b/src/nvim/syntax.c index 825aef1465..77a751e5ad 100644 --- a/src/nvim/syntax.c +++ b/src/nvim/syntax.c @@ -5306,13 +5306,17 @@ get_id_list( xfree(name); break; } - if (name[1] == 'A') - id = SYNID_ALLBUT; - else if (name[1] == 'T') - id = SYNID_TOP; - else - id = SYNID_CONTAINED; - id += current_syn_inc_tag; + if (name[1] == 'A') { + id = SYNID_ALLBUT + current_syn_inc_tag; + } else if (name[1] == 'T') { + if (curwin->w_s->b_syn_topgrp >= SYNID_CLUSTER) { + id = curwin->w_s->b_syn_topgrp; + } else { + id = SYNID_TOP + current_syn_inc_tag; + } + } else { + id = SYNID_CONTAINED + current_syn_inc_tag; + } } else if (name[1] == '@') { if (skip) { id = -1; |