From c8849558fa76068fdbcd04a729dad9a73cdc55ae Mon Sep 17 00:00:00 2001 From: deathaxe Date: Wed, 10 Dec 2025 17:50:46 +0100 Subject: [PATCH] Add support for custom @import modifier functions This commit adds patterns to scope function calls of unknown names within import at-rules, as PostCSS can add additional language features via plugins' custom parsers. --- PostCSS.sublime-syntax | 8 ++++++++ tests/syntax_test_scope.postcss | 19 +++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/PostCSS.sublime-syntax b/PostCSS.sublime-syntax index c97eb6b..f842ce2 100644 --- a/PostCSS.sublime-syntax +++ b/PostCSS.sublime-syntax @@ -57,6 +57,14 @@ contexts: - include: postcss-variable-definitions - include: postcss-variables + at-import-body: + - meta_prepend: true + - match: (?:(?!layer|supports|url){{ident}})(?=\() + scope: meta.function-call.identifier.css variable.function.css + push: + - other-function-arguments-list-body + - function-arguments-list-begin + at-other: - meta_prepend: true - include: postcss-at-apply diff --git a/tests/syntax_test_scope.postcss b/tests/syntax_test_scope.postcss index 392e1be..16c07bd 100644 --- a/tests/syntax_test_scope.postcss +++ b/tests/syntax_test_scope.postcss @@ -24,6 +24,25 @@ // ^^^ variable.other.postcss // ^ punctuation.section.interpolation.end.postcss +/* + * import at-rules + */ + + @import "url" prefix(tw); +//^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.css.postcss +// ^^^^^^^^^^^^^^^^^^^^^^^^ meta.at-rule.import.css +// ^^^^^^^ keyword.control.directive.css +// ^ punctuation.definition.keyword.css +// ^^^^^ meta.string.css string.quoted.double.css +// ^ punctuation.definition.string.begin.css +// ^ punctuation.definition.string.end.css +// ^^^^^^ variable.function.css +// ^^^^ meta.function-call.arguments.css meta.group.css +// ^ punctuation.section.group.begin.css +// ^^ support.constant.property-value.css +// ^ punctuation.section.group.end.css +// ^ punctuation.terminator.rule.css + /* * unknown at-rules */