Merge pull request #3 from tree-sitter/highlighting-properties
Add property sheet for syntax highlighting
This commit is contained in:
commit
339e040a18
|
@ -13,7 +13,7 @@ install:
|
||||||
- npm install
|
- npm install
|
||||||
|
|
||||||
test_script:
|
test_script:
|
||||||
- npm test
|
- npm run test-windows
|
||||||
|
|
||||||
build: off
|
build: off
|
||||||
|
|
||||||
|
|
15
package.json
15
package.json
|
@ -13,9 +13,18 @@
|
||||||
"nan": "^2.11.1"
|
"nan": "^2.11.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"tree-sitter-cli": "^0.13.10"
|
"tree-sitter-cli": "^0.14.5"
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "tree-sitter test && tree-sitter parse examples --quiet --time"
|
"test": "tree-sitter test && tree-sitter parse examples/*.css --quiet --time",
|
||||||
}
|
"test-windows": "tree-sitter test"
|
||||||
|
},
|
||||||
|
"tree-sitter": [
|
||||||
|
{
|
||||||
|
"scope": "source.css",
|
||||||
|
"file-types": ["css"],
|
||||||
|
"injection-regex": "^css$",
|
||||||
|
"highlights": "src/highlights.json"
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,140 @@
|
||||||
|
@schema "tree-sitter-highlight-schema";
|
||||||
|
|
||||||
|
comment {
|
||||||
|
scope: 'comment';
|
||||||
|
}
|
||||||
|
|
||||||
|
tag_name,
|
||||||
|
nesting_selector,
|
||||||
|
universal_selector {
|
||||||
|
scope: 'tag';
|
||||||
|
}
|
||||||
|
|
||||||
|
sibling_selector > [token="~"],
|
||||||
|
child_selector > [token=">"],
|
||||||
|
adjacent_sibling_selector > [token="+"] {
|
||||||
|
scope: 'operator';
|
||||||
|
}
|
||||||
|
|
||||||
|
attribute_selector > {
|
||||||
|
& > [token="="],
|
||||||
|
& > [token="^="],
|
||||||
|
& > [token="|="],
|
||||||
|
& > [token="~="],
|
||||||
|
& > [token="$="],
|
||||||
|
& > [token="*="] {
|
||||||
|
scope: 'operator';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
attribute_selector > plain_value {
|
||||||
|
scope: 'string';
|
||||||
|
}
|
||||||
|
|
||||||
|
pseudo_element_selector > tag_name,
|
||||||
|
pseudo_class_selector > class_name {
|
||||||
|
scope: 'attribute';
|
||||||
|
}
|
||||||
|
|
||||||
|
class_name {
|
||||||
|
scope: 'property';
|
||||||
|
}
|
||||||
|
|
||||||
|
id_name {
|
||||||
|
scope: 'property';
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace_name {
|
||||||
|
scope: 'property';
|
||||||
|
}
|
||||||
|
|
||||||
|
function_name {
|
||||||
|
scope: 'function';
|
||||||
|
}
|
||||||
|
|
||||||
|
property_name,
|
||||||
|
plain_value {
|
||||||
|
&[text='^--'] {
|
||||||
|
scope: 'variable';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
property_name {
|
||||||
|
scope: 'property';
|
||||||
|
}
|
||||||
|
|
||||||
|
attribute_name {
|
||||||
|
scope: 'attribute';
|
||||||
|
}
|
||||||
|
|
||||||
|
[token="@media"],
|
||||||
|
[token="@import"],
|
||||||
|
[token="@charset"],
|
||||||
|
[token="@namespace"],
|
||||||
|
[token="@supports"],
|
||||||
|
[token="@keyframes"],
|
||||||
|
at_keyword,
|
||||||
|
to,
|
||||||
|
from,
|
||||||
|
important {
|
||||||
|
scope: 'keyword';
|
||||||
|
}
|
||||||
|
|
||||||
|
string_value {
|
||||||
|
scope: 'string';
|
||||||
|
}
|
||||||
|
|
||||||
|
color_value {
|
||||||
|
scope: 'string.special';
|
||||||
|
}
|
||||||
|
|
||||||
|
integer_value,
|
||||||
|
float_value {
|
||||||
|
scope: 'number';
|
||||||
|
|
||||||
|
& > unit {
|
||||||
|
scope: 'type';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* plain_value': [
|
||||||
|
{match:'^(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)$', scopes:'support.constant.color.w3c-standard'}
|
||||||
|
{match:'^(aliceblue|antiquewhite|aquamarine|azure|beige|bisque|blanchedalmond|blueviolet|brown|burlywood
|
||||||
|
|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan
|
||||||
|
|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange
|
||||||
|
|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise
|
||||||
|
|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen
|
||||||
|
|gainsboro|ghostwhite|gold|goldenrod|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki
|
||||||
|
|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow
|
||||||
|
|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray
|
||||||
|
|lightslategrey|lightsteelblue|lightyellow|limegreen|linen|magenta|mediumaquamarine|mediumblue
|
||||||
|
|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise
|
||||||
|
|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|oldlace|olivedrab|orangered
|
||||||
|
|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum
|
||||||
|
|powderblue|rebeccapurple|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell
|
||||||
|
|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato
|
||||||
|
|transparent|turquoise|violet|wheat|whitesmoke|yellowgreen)$', scopes: 'support.constant.color.w3c-extended'}
|
||||||
|
'support.constant.property-value.css'
|
||||||
|
] */
|
||||||
|
|
||||||
|
feature_name {
|
||||||
|
scope: 'property';
|
||||||
|
}
|
||||||
|
|
||||||
|
color_value > [token="#"],
|
||||||
|
id_selector > [token="#"],
|
||||||
|
selectors > [token=","] {
|
||||||
|
scope: 'punctuation.delimiter';
|
||||||
|
}
|
||||||
|
|
||||||
|
[token="and"],
|
||||||
|
[token="or"],
|
||||||
|
[token="not"],
|
||||||
|
[token="only"],
|
||||||
|
keyword_query,
|
||||||
|
binary_expression > [token="+"],
|
||||||
|
binary_expression > [token="-"],
|
||||||
|
binary_expression > [token="/"],
|
||||||
|
binary_expression > [token="*"] {
|
||||||
|
scope: 'operator';
|
||||||
|
}
|
|
@ -1740,3 +1740,4 @@
|
||||||
"_block_item"
|
"_block_item"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -13,7 +13,7 @@ extern "C" {
|
||||||
#define ts_builtin_sym_end 0
|
#define ts_builtin_sym_end 0
|
||||||
#define TREE_SITTER_SERIALIZATION_BUFFER_SIZE 1024
|
#define TREE_SITTER_SERIALIZATION_BUFFER_SIZE 1024
|
||||||
|
|
||||||
#ifndef TREE_SITTER_RUNTIME_H_
|
#ifndef TREE_SITTER_API_H_
|
||||||
typedef uint16_t TSSymbol;
|
typedef uint16_t TSSymbol;
|
||||||
typedef struct TSLanguage TSLanguage;
|
typedef struct TSLanguage TSLanguage;
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue