src/Tools/VSCode/src/vscode_rendering.scala
changeset 64830 9bc44bef99e6
parent 64821 37bf7acf6a4b
child 64833 0f410e3b1d20
equal deleted inserted replaced
64829:07f209e957bc 64830:9bc44bef99e6
    45 {
    45 {
    46   /* diagnostics */
    46   /* diagnostics */
    47 
    47 
    48   def diagnostics: List[Text.Info[Command.Results]] =
    48   def diagnostics: List[Text.Info[Command.Results]] =
    49     snapshot.cumulate[Command.Results](
    49     snapshot.cumulate[Command.Results](
    50       model.doc.text_range, Command.Results.empty, VSCode_Rendering.diagnostics_elements, _ =>
    50       model.content.text_range, Command.Results.empty, VSCode_Rendering.diagnostics_elements, _ =>
    51       {
    51       {
    52         case (res, Text.Info(_, msg @ XML.Elem(Markup(_, Markup.Serial(i)), body)))
    52         case (res, Text.Info(_, msg @ XML.Elem(Markup(_, Markup.Serial(i)), body)))
    53         if body.nonEmpty => Some(res + (i -> msg))
    53         if body.nonEmpty => Some(res + (i -> msg))
    54 
    54 
    55         case _ => None
    55         case _ => None
    59 
    59 
    60   def diagnostics_output(results: List[Text.Info[Command.Results]]): List[Protocol.Diagnostic] =
    60   def diagnostics_output(results: List[Text.Info[Command.Results]]): List[Protocol.Diagnostic] =
    61   {
    61   {
    62     (for {
    62     (for {
    63       Text.Info(text_range, res) <- results.iterator
    63       Text.Info(text_range, res) <- results.iterator
    64       range = model.doc.range(text_range)
    64       range = model.content.doc.range(text_range)
    65       (_, XML.Elem(Markup(name, _), body)) <- res.iterator
    65       (_, XML.Elem(Markup(name, _), body)) <- res.iterator
    66     } yield {
    66     } yield {
    67       val message = Pretty.string_of(body, margin = diagnostics_margin)
    67       val message = Pretty.string_of(body, margin = diagnostics_margin)
    68       val severity = VSCode_Rendering.message_severity.get(name)
    68       val severity = VSCode_Rendering.message_severity.get(name)
    69       Protocol.Diagnostic(range, message, severity = severity)
    69       Protocol.Diagnostic(range, message, severity = severity)