Skip to content

Commit 38c31bb

Browse files
Merge pull request #185 from nicolasstucki/fix-#182
Identify bounds of `&&`, `||` and `!` operators
2 parents a45260e + 1bcf8af commit 38c31bb

File tree

2 files changed

+40
-1
lines changed

2 files changed

+40
-1
lines changed

src/typescript/Scala.tmLanguage.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -621,7 +621,7 @@ export const scalaTmLanguage: TmLanguage = {
621621
name: 'keyword.operator.arithmetic.scala'
622622
},
623623
{
624-
match: '(!|&&|\\|\\|)',
624+
match: `(?<!${opchar})(!|&&|\\|\\|)(?!${opchar})`,
625625
name: 'keyword.operator.logical.scala'
626626
},
627627
{

tests/unit/#182.test.scala

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
// SYNTAX TEST "source.scala"
2+
3+
true&&false
4+
// ^^^^ constant.language.scala
5+
// ^^ keyword.operator.logical.scala
6+
// ^^^^^ constant.language.scala
7+
b&&false
8+
// ^^ keyword.operator.logical.scala
9+
// ^^^^^ constant.language.scala
10+
11+
b&&b
12+
// ^^ keyword.operator.logical.scala
13+
b||b
14+
// ^^ keyword.operator.logical.scala
15+
!b
16+
// ^ keyword.operator.logical.scala
17+
18+
b&&&b
19+
// ^^^ - keyword.operator.logical.scala
20+
b&&?b
21+
// ^^^ - keyword.operator.logical.scala
22+
b&&!b
23+
// ^^^ - keyword.operator.logical.scala
24+
b!&&b
25+
// ^^^ - keyword.operator.logical.scala
26+
b&&+b
27+
// ^^^ - keyword.operator.logical.scala
28+
b&&^b
29+
// ^^^ - keyword.operator.logical.scala
30+
b&&~b
31+
// ^^^ - keyword.operator.logical.scala
32+
b&&#b
33+
// ^^^ - keyword.operator.logical.scala
34+
b&&%b
35+
// ^^^ - keyword.operator.logical.scala
36+
b&&@b
37+
// ^^^ - keyword.operator.logical.scala
38+
b@&&b
39+
// ^^^ - keyword.operator.logical.scala

0 commit comments

Comments
 (0)