aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/repl/SyntaxHighlighter.scala
diff options
context:
space:
mode:
authorFelix Mulder <felix.mulder@gmail.com>2016-04-27 14:14:50 +0200
committerFelix Mulder <felix.mulder@gmail.com>2016-04-28 11:00:40 +0200
commitd1ec1407b88f70f4172ad48163f6c7e677a38958 (patch)
tree4329de5f6465dcdf218bc6336f9777daa9d3c088 /src/dotty/tools/dotc/repl/SyntaxHighlighter.scala
parent0f91408cb2d616c0ee0332b80e0d006bae3f9e9d (diff)
downloaddotty-d1ec1407b88f70f4172ad48163f6c7e677a38958.tar.gz
dotty-d1ec1407b88f70f4172ad48163f6c7e677a38958.tar.bz2
dotty-d1ec1407b88f70f4172ad48163f6c7e677a38958.zip
Fix highlighting tokens after newline predated by '='
Diffstat (limited to 'src/dotty/tools/dotc/repl/SyntaxHighlighter.scala')
-rw-r--r--src/dotty/tools/dotc/repl/SyntaxHighlighter.scala6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/dotty/tools/dotc/repl/SyntaxHighlighter.scala b/src/dotty/tools/dotc/repl/SyntaxHighlighter.scala
index edb0ba040..527bcffc2 100644
--- a/src/dotty/tools/dotc/repl/SyntaxHighlighter.scala
+++ b/src/dotty/tools/dotc/repl/SyntaxHighlighter.scala
@@ -38,7 +38,7 @@ object SyntaxHighlighting {
'q' :: 'r' :: 's' :: 't' :: 'u' :: 'v' :: 'w' :: 'x' :: 'y' :: 'z' :: Nil
private val typeEnders =
- '{' :: '}' :: ')' :: '(' :: '=' :: ' ' :: ',' :: '.' :: Nil
+ '{' :: '}' :: ')' :: '(' :: '=' :: ' ' :: ',' :: '.' :: '\n' :: Nil
def apply(chars: Iterable[Char]): Vector[Char] = {
var prev: Char = 0
@@ -46,7 +46,7 @@ object SyntaxHighlighting {
val newBuf = new StringBuilder
@inline def keywordStart =
- prev == 0 || prev == ' ' || prev == '{' || prev == '('
+ prev == 0 || prev == ' ' || prev == '{' || prev == '(' || prev == '\n'
@inline def numberStart(c: Char) =
c.isDigit && (!prev.isLetter || prev == '.' || prev == ' ' || prev == '(' || prev == '\u0000')
@@ -224,7 +224,7 @@ object SyntaxHighlighting {
def append(c: Char, shouldHL: String => Boolean, highlight: String => String) = {
var curr: Char = 0
val sb = new StringBuilder(s"$c")
- while (remaining.nonEmpty && curr != ' ' && curr != '(') {
+ while (remaining.nonEmpty && curr != ' ' && curr != '(' && curr != '\n') {
curr = takeChar()
if (curr != ' ') sb += curr
}