Skip to content

Commit ad33529

Browse files
committed
feat(t-family): add support for Turtle*
1 parent 4ff6109 commit ad33529

4 files changed

Lines changed: 48 additions & 2 deletions

File tree

src/color-schemes/macaron-dark.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,12 @@ module.exports = {
8787
// background: 'hsla(252, 24%, 50%, 0.1)',
8888
},
8989

90+
// reified statement
91+
{
92+
scope: 'meta.triple.reified',
93+
background: 'hsla(280, 70%, 10%, 0.2)',
94+
},
95+
9096

9197
// shared regex scopes
9298
...a_regex_scopes,
@@ -265,6 +271,8 @@ module.exports = {
265271
'variable.other.readwrite.blank-node.underscore': -45,
266272
'variable.other.member.blank-node.label': -10,
267273

274+
// rdf-star
275+
'punctuation.definition.triple-x': -30,
268276
},
269277

270278
chip_boost: {

src/color-schemes/macaron-light.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,13 @@ module.exports = {
8282
// background: 'hsla(252, 24%, 50%, 0.1)',
8383
},
8484

85+
// rdf-star
86+
{
87+
scope: 'meta.triple.reified',
88+
background: 'hsla(140, 80%, 70%, 0.2)',
89+
foreground_adjust: 'saturation(55%)',
90+
},
91+
8592
// shared regex scopes
8693
...a_regex_scopes,
8794
],

src/syntax/t-family.syntax-source

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@ contexts:
8585

8686
triples:
8787
- switch:
88+
- tripleX: [predicateObjectList^, tripleX]
8889
- hollowAnonymousBlankNode: [predicateObjectList^, hollowAnonymousBlankNode]
8990
- anonymousBlankNode: [predicateObjectList?, blankNodePropertyList]
9091
- collection: [predicateObjectList^, collection]

src/syntax/terse.syntax-source

Lines changed: 32 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -337,8 +337,38 @@ contexts:
337337

338338
namedNode:
339339
- switch:
340-
- iriRef
341-
- prefixedName
340+
- iriRef
341+
- prefixedName
342+
343+
tripleX:
344+
- match: '<<'
345+
scope: punctuation.definition.triple-x.begin.SYNTAX meta.triple.reified.SYNTAX
346+
mask: meta.triple.reified.SYNTAX
347+
set: [tripleX_TERMINATE, tripleX_AFTER_BEGIN]
348+
349+
tripleX_AFTER_BEGIN:
350+
- switch:
351+
- tripleX: [predicateObjectListX^, tripleX]
352+
- hollowAnonymousBlankNode: [predicateObjectListX^, hollowAnonymousBlankNode]
353+
- anonymousBlankNode: [predicateObjectListX?, blankNodePropertyList]
354+
- collection: [predicateObjectListX^, collection]
355+
- namedNode: [predicateObjectListX^, namedNode]
356+
- labeledBlankNode: [predicateObjectListX^, labeledBlankNode]
357+
- throw
358+
359+
predicateObjectListX:
360+
- switch:
361+
- verb: [objectX, verb]
362+
363+
objectX:
364+
- switch:
365+
- tripleX
366+
- goto: object
367+
368+
tripleX_TERMINATE:
369+
- match: '>>'
370+
scope: punctuation.definition.triple-x.end.SYNTAX
371+
pop: true
342372

343373
prefixedName:
344374
- goto: [prefixedNameLocal, prefixedNameNamespace]

0 commit comments

Comments
 (0)