@@ -27,14 +27,15 @@ object SectionRenderingExtension extends HtmlRenderer.HtmlRendererExtension:
2727
2828 case class AnchorLink (link : String ) extends BlankLine (BasedSequence .EmptyBasedSequence ())
2929 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 ()
3131 val idGenerator = new HeaderIdGenerator .Factory ().create()
3232 override def render (node : Section , c : NodeRendererContext , html : HtmlWriter ): Unit =
3333 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 )
3536 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)
3839 val anchor = AnchorLink (s " # $id" )
3940 val headerClass : String = header.getLevel match
4041 case 1 => " h500"
0 commit comments