@@ -27,14 +27,15 @@ object SectionRenderingExtension extends HtmlRenderer.HtmlRendererExtension:
27
27
28
28
case class AnchorLink (link : String ) extends BlankLine (BasedSequence .EmptyBasedSequence ())
29
29
object SectionHandler extends CustomNodeRenderer [Section ]:
30
- val repeatedIds : mutable.Map [(NodeRendererContext , BasedSequence ), Int ] = mutable.Map ()
30
+ val repeatedIds : mutable.Map [(NodeRendererContext , String ), Int ] = mutable.Map ()
31
31
val idGenerator = new HeaderIdGenerator .Factory ().create()
32
32
override def render (node : Section , c : NodeRendererContext , html : HtmlWriter ): Unit =
33
33
val Section (header, body) = node
34
- val idSuffix = repeatedIds.getOrElseUpdate((c, header.getText), 0 )
34
+ val headerText = header.getText.toString
35
+ val idSuffix = repeatedIds.getOrElseUpdate((c, headerText), 0 )
35
36
val ifSuffixStr = if (idSuffix == 0 ) then " " else idSuffix.toString
36
- repeatedIds.update((c, header.getText ), idSuffix + 1 )
37
- val id = idGenerator.getId(header.getText.append( ifSuffixStr) )
37
+ repeatedIds.update((c, headerText ), idSuffix + 1 )
38
+ val id = idGenerator.getId(headerText + ifSuffixStr)
38
39
val anchor = AnchorLink (s " # $id" )
39
40
val headerClass : String = header.getLevel match
40
41
case 1 => " h500"
0 commit comments