@@ -3,12 +3,12 @@ package dotty.tools.scaladoc.tasty.comments.markdown
33import com .vladsch .flexmark .html ._
44
55import dotty .tools .scaladoc .snippets ._
6+ import dotty .tools .scaladoc .util .HTML ._
67
78case class SnippetLine (content : String , lineNo : Int , classes : Set [String ] = Set .empty, messages : Seq [String ] = Seq .empty):
89 def withClass (cls : String ) = this .copy(classes = classes + cls)
9- private def escapeQuotes (msg : String ): String = msg.replace(" \" " , " "" )
1010 def toHTML =
11- val label = if messages.nonEmpty then s """ label=" ${messages.map(escapeQuotes ).mkString(" \n " )}" """ else " "
11+ val label = if messages.nonEmpty then s """ label=" ${messages.map(_.escapeReservedTokens ).mkString(" \n " )}" """ else " "
1212 s """ <span id=" $lineNo" class=" ${classes.mkString(" " )}" $label> $content</span> """
1313
1414object SnippetRenderer :
@@ -89,14 +89,14 @@ object SnippetRenderer:
8989
9090 private def wrapCodeLines (codeLines : Seq [String ]): Seq [SnippetLine ] =
9191 val snippetLines = codeLines.zipWithIndex.map {
92- case (content, idx) => SnippetLine (content, idx)
92+ case (content, idx) => SnippetLine (content.escapeReservedTokens , idx)
9393 }
9494 wrapHiddenSymbols
9595 .andThen(wrapSingleLineComments)
9696 .andThen(wrapMultiLineComments)
9797 .apply(snippetLines)
9898
99- private def addCompileMessages (messages : Seq [SnippetCompilerMessage ])(codeLines : Seq [SnippetLine ]): Seq [SnippetLine ] = // TODO add tooltips and stuff
99+ private def addCompileMessages (messages : Seq [SnippetCompilerMessage ])(codeLines : Seq [SnippetLine ]): Seq [SnippetLine ] =
100100 val messagesDict = messages.filter(_.position.nonEmpty).groupBy(_.position.get.relativeLine).toMap[Int , Seq [SnippetCompilerMessage ]]
101101 codeLines.map { line =>
102102 messagesDict.get(line.lineNo) match
0 commit comments