From 05a24a615db6622ec99c5bccbf982d83b30728d4 Mon Sep 17 00:00:00 2001 From: Nicolas Stucki Date: Fri, 26 Jun 2020 17:14:00 +0200 Subject: [PATCH] Fix #68 and fix #77: End names on open brackets --- src/typescript/Scala.tmLanguage.ts | 4 ++-- tests/unit/#77.test.scala | 15 +++++++++++++++ 2 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 tests/unit/#77.test.scala diff --git a/src/typescript/Scala.tmLanguage.ts b/src/typescript/Scala.tmLanguage.ts index 7d8ebc3..7d67e85 100644 --- a/src/typescript/Scala.tmLanguage.ts +++ b/src/typescript/Scala.tmLanguage.ts @@ -568,7 +568,7 @@ export const scalaTmLanguage: TmLanguage = { } }, { - match: '\\b(?:(case|open)\\s+)?(class|object)\\s+([^\\s\\{\\(\\[]+)', + match: '\\b(?:(case|open)\\s+)?(class|object)\\s+([^\\s\\{\\(\\[;]+)', captures: { '1': { name: 'keyword.declaration.scala' @@ -935,7 +935,7 @@ export const scalaTmLanguage: TmLanguage = { inheritance: { patterns: [ { - match: '(extends|with|derives)\\s+([^\\s\\(\\{\\[\\]]+|(?=\\([^\\)]+=>))', + match: '(extends|with|derives)\\s+([^\\s\\(\\{\\[\\]\\)\\};]+|(?=\\([^\\)]+=>))', captures: { '1': { name: 'keyword.declaration.scala' diff --git a/tests/unit/#77.test.scala b/tests/unit/#77.test.scala new file mode 100644 index 0000000..d46ec17 --- /dev/null +++ b/tests/unit/#77.test.scala @@ -0,0 +1,15 @@ +// SYNTAX TEST "source.scala" + + +class A extends B with NoStackTrace) +// ^^^^ keyword.declaration.scala +// ^^^^^^^^^^^^ entity.other.inherited-class.scala +// ^ meta.bracket.scala +class A extends B with NoStackTrace} +// ^^^^ keyword.declaration.scala +// ^^^^^^^^^^^^ entity.other.inherited-class.scala +// ^ punctuation.section.block.end.scala +class A extends B with NoStackTrace] +// ^^^^ keyword.declaration.scala +// ^^^^^^^^^^^^ entity.other.inherited-class.scala +// ^ meta.bracket.scala