diff --git a/syntaxes/sdoc.tmLanguage.json b/syntaxes/sdoc.tmLanguage.json index 47e811d..8078105 100644 --- a/syntaxes/sdoc.tmLanguage.json +++ b/syntaxes/sdoc.tmLanguage.json @@ -453,7 +453,7 @@ }, "composite_node": { "comment": "Composite Node: use the tag pattern and exclude reserved tags; SECTION tag is deprecated", - "begin": "^\\[\\[(?!(DOCUMENT|GRAMMAR|DOCUMENT_FROM_FILE|SECTION)\\]\\])([A-Z]+(?:_[A-Z]+)*)\\]\\]$", + "begin": "^\\[\\[(?!(DOCUMENT|GRAMMAR|DOCUMENT_FROM_FILE)\\]\\])([A-Z]+(?:_[A-Z]+)*)\\]\\]$", "end": "^$", "captures": { "0": { "name": "keyword.sdoc" } }, "patterns": [ diff --git a/tests/integration/syntax/01_basic_document_node/test.itest b/tests/integration/syntax/01_basic_document_node/test.itest index 8adf68e..e7d2e6b 100644 --- a/tests/integration/syntax/01_basic_document_node/test.itest +++ b/tests/integration/syntax/01_basic_document_node/test.itest @@ -1,4 +1,4 @@ -RUN: %parse_syntax %S/sample.sdoc | filecheck %s +RUN: %parse_syntax %S/sample.sdoc | filecheck %s --dump-input=fail CHECK: [1:0-10] "[DOCUMENT]" → source.sdoc keyword.sdoc CHECK: [2:0-5] "TITLE" → source.sdoc keyword.control.sdoc keyword.control.sdoc diff --git a/tests/integration/syntax/section_composite/sample.sdoc b/tests/integration/syntax/section_composite/sample.sdoc new file mode 100644 index 0000000..92997db --- /dev/null +++ b/tests/integration/syntax/section_composite/sample.sdoc @@ -0,0 +1,7 @@ +[DOCUMENT] +TITLE: Document Title + +[[SECTION]] +TITLE: Right section + +[[/SECTION]] diff --git a/tests/integration/syntax/section_composite/test.itest b/tests/integration/syntax/section_composite/test.itest new file mode 100644 index 0000000..4713fb8 --- /dev/null +++ b/tests/integration/syntax/section_composite/test.itest @@ -0,0 +1,9 @@ +RUN: %parse_syntax %S/sample.sdoc | filecheck %s --dump-input=fail + +CHECK: [4:0-11] "[[SECTION]]" → source.sdoc keyword.sdoc +CHECK: [5:0-5] "TITLE" → source.sdoc keyword.control.sdoc keyword.control.sdoc +CHECK: [5:5-7] ": " → source.sdoc keyword.control.sdoc +CHECK: [5:7-21] "Right section" → source.sdoc keyword.control.sdoc string.sdoc +CHECK: [6:0-1] "" → source.sdoc +CHECK: [7:0-12] "[[/SECTION]]" → source.sdoc keyword.sdoc +CHECK: [8:0-1] "" → source.sdoc diff --git a/tests/integration/syntax/section_deprecated/sample.sdoc b/tests/integration/syntax/section_deprecated/sample.sdoc new file mode 100644 index 0000000..670ae80 --- /dev/null +++ b/tests/integration/syntax/section_deprecated/sample.sdoc @@ -0,0 +1,7 @@ +[DOCUMENT] +TITLE: Document Title + +[SECTION] +TITLE: Wrong section + +[/SECTION] diff --git a/tests/integration/syntax/section_deprecated/test.itest b/tests/integration/syntax/section_deprecated/test.itest new file mode 100644 index 0000000..3d9339a --- /dev/null +++ b/tests/integration/syntax/section_deprecated/test.itest @@ -0,0 +1,9 @@ +RUN: %parse_syntax %S/sample.sdoc | filecheck %s --dump-input=fail + +CHECK: [4:0-9] "[SECTION]" → source.sdoc invalid.deprecated.sdoc +CHECK: [5:0-5] "TITLE" → source.sdoc keyword.control.sdoc keyword.control.sdoc +CHECK: [5:5-7] ": " → source.sdoc keyword.control.sdoc +CHECK: [5:7-21] "Wrong section" → source.sdoc keyword.control.sdoc string.sdoc +CHECK: [6:0-1] "" → source.sdoc +CHECK: [7:0-10] "[/SECTION]" → source.sdoc invalid.deprecated.sdoc +CHECK: [8:0-1] "" → source.sdoc