From 9984e73ff396b7da71bb19416f5ed15296d50d98 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Tue, 11 Apr 2023 17:26:00 +0200 Subject: [PATCH] Fix highlighting of identifiers before brackets --- src/ide/highlight.rs | 11 +++++++---- tests/ref/compiler/highlight.png | Bin 80489 -> 81677 bytes tests/typ/compiler/highlight.typ | 1 + 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/ide/highlight.rs b/src/ide/highlight.rs index cf8fdd109..9180aaee7 100644 --- a/src/ide/highlight.rs +++ b/src/ide/highlight.rs @@ -261,10 +261,13 @@ fn highlight_ident(node: &LinkedNode) -> Option { let next_leaf = node.next_leaf(); if let Some(next) = &next_leaf { if node.range().end == next.offset() - && next.kind() == SyntaxKind::LeftParen - && matches!(next.parent_kind(), Some(SyntaxKind::Args | SyntaxKind::Params)) - || (next.kind() == SyntaxKind::LeftBracket - && next.parent_kind() == Some(SyntaxKind::ContentBlock)) + && ((next.kind() == SyntaxKind::LeftParen + && matches!( + next.parent_kind(), + Some(SyntaxKind::Args | SyntaxKind::Params) + )) + || (next.kind() == SyntaxKind::LeftBracket + && next.parent_kind() == Some(SyntaxKind::ContentBlock))) { return Some(Tag::Function); } diff --git a/tests/ref/compiler/highlight.png b/tests/ref/compiler/highlight.png index 182aca453b04bea348711cb79821309a9d241b48..7f69fd6b272523cb447b5e3deb7f7797eadba584 100644 GIT binary patch delta 20505 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 AO#lD@ delta 19250 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