76 lines
2.5 KiB
JSON
76 lines
2.5 KiB
JSON
{
|
|
"scopeName": "source.css.tailwind",
|
|
"fileTypes": [],
|
|
"injectionSelector": "meta.property-list.css, meta.property-list.scss",
|
|
"name": "TailwindCSS",
|
|
"patterns": [
|
|
{
|
|
"begin": "^\\s*(@)apply\\b",
|
|
"beginCaptures": {
|
|
"0": {
|
|
"name": "keyword.control.at-rule.apply.tailwind"
|
|
},
|
|
"1": {
|
|
"name": "punctuation.definition.keyword.tailwind"
|
|
}
|
|
},
|
|
"end": ";",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.terminator.rule.tailwind"
|
|
}
|
|
},
|
|
"patterns": [
|
|
{
|
|
"begin": "(?x)\n(?=\n (?:\\|)? # Possible anonymous namespace prefix\n (?:\n [-\\[:.*\\#a-zA-Z_] # Valid selector character\n |\n [^\\x00-\\x7F] # Which can include non-ASCII symbols\n |\n \\\\ # Or an escape sequence\n (?:[0-9a-fA-F]{1,6}|.)\n )\n)",
|
|
"end": "(?=\\s*[;])",
|
|
"patterns": [
|
|
{
|
|
"match": "!\\s*important(?![\\w-])",
|
|
"name": "keyword.other.important.tailwind"
|
|
},
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "punctuation.definition.entity.tailwind"
|
|
},
|
|
"2": {
|
|
"patterns": [
|
|
{
|
|
"include": "source.css#escapes"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"match": "(?x)\n(\\.)? # Valid class-name\n(\n (?: [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n )+\n) # Followed by either:\n(?= $ # - End of the line\n | [\\s,.\\#)\\[:{>;+~|] # - Another selector\n | /\\* # - A block comment\n)",
|
|
"name": "entity.other.attribute-name.class.tailwind"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "(?i)(?<![\\w-])(config|theme)(\\()",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "support.function.config.tailwind"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.section.function.begin.bracket.round.tailwind"
|
|
}
|
|
},
|
|
"end": "\\)",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.section.function.end.bracket.round.tailwind"
|
|
}
|
|
},
|
|
"patterns": [
|
|
{
|
|
"include": "source.css#property-values"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|