aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/syntax.c
diff options
context:
space:
mode:
authorJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2021-04-14 08:53:25 -0400
committerJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2021-04-15 18:30:04 -0400
commit7d3f31c0643f40645292e03565d18961e8cd72d7 (patch)
tree5b3f2853706ceccbf33a1e3c1c01fecd70180fb5 /src/nvim/syntax.c
parenteb93399d702917eaef21aaa91640a6a6983b5d21 (diff)
downloadrneovim-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.c18
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;