summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ide/highlight.rs7
-rw-r--r--src/syntax/lexer.rs1
2 files changed, 8 insertions, 0 deletions
diff --git a/src/ide/highlight.rs b/src/ide/highlight.rs
index 5f615d04..75201d93 100644
--- a/src/ide/highlight.rs
+++ b/src/ide/highlight.rs
@@ -192,6 +192,13 @@ pub fn highlight(node: &LinkedNode) -> Option<Category> {
) => Some(Category::Interpolated),
Some(SyntaxKind::FuncCall) => Some(Category::Function),
Some(SyntaxKind::FieldAccess)
+ if node.parent().and_then(|p| p.parent_kind())
+ == Some(SyntaxKind::SetRule)
+ && node.next_sibling().is_none() =>
+ {
+ Some(Category::Function)
+ }
+ Some(SyntaxKind::FieldAccess)
if node
.parent()
.and_then(|p| p.parent())
diff --git a/src/syntax/lexer.rs b/src/syntax/lexer.rs
index 433d0def..1064939d 100644
--- a/src/syntax/lexer.rs
+++ b/src/syntax/lexer.rs
@@ -429,6 +429,7 @@ impl Lexer<'_> {
'-' if self.s.eat_if('>') => SyntaxKind::Shorthand,
'=' if self.s.eat_if('>') => SyntaxKind::Shorthand,
':' if self.s.eat_if('=') => SyntaxKind::Shorthand,
+ '.' if self.s.eat_if("..") => SyntaxKind::Shorthand,
'_' => SyntaxKind::Underscore,
'$' => SyntaxKind::Dollar,