From 48418408b3b03e176a4674763696753f070f29b0 Mon Sep 17 00:00:00 2001 From: Eugene Yokota Date: Fri, 14 Sep 2018 00:02:02 -0400 Subject: [PATCH] Follow up on Position extension https://github.com/sbt/util/pull/173 added the ability to carry range position. This exposes it to the sbt server. --- .../internal/server/LanguageServerReporter.scala | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/main/src/main/scala/sbt/internal/server/LanguageServerReporter.scala b/main/src/main/scala/sbt/internal/server/LanguageServerReporter.scala index 28551be7c..644e01024 100644 --- a/main/src/main/scala/sbt/internal/server/LanguageServerReporter.scala +++ b/main/src/main/scala/sbt/internal/server/LanguageServerReporter.scala @@ -111,8 +111,19 @@ class LanguageServerReporter( } yield { val line = line0.toLong - 1L val pointer = pointer0.toLong + val r = ( + pos.startLine.toOption, + pos.startColumn.toOption, + pos.endLine.toOption, + pos.endColumn.toOption + ) match { + case (Some(sl), Some(sc), Some(el), Some(ec)) => + Range(Position(sl.toLong - 1, sc.toLong), Position(el.toLong - 1, ec.toLong)) + case _ => + Range(Position(line, pointer), Position(line, pointer + 1)) + } Diagnostic( - Range(start = Position(line, pointer), end = Position(line, pointer + 1)), + r, Option(toDiagnosticSeverity(problem.severity)), None, Option("sbt"),