Skip to content

Commit

Permalink
Merge pull request #19 from zack4485/main
Browse files Browse the repository at this point in the history
Completing anchor link fix
  • Loading branch information
mythz authored Nov 1, 2024
2 parents c105b3b + 95419ee commit 7f14702
Showing 1 changed file with 6 additions and 12 deletions.
18 changes: 6 additions & 12 deletions MyApp/MarkdownPagesBase.cs
Original file line number Diff line number Diff line change
Expand Up @@ -322,7 +322,7 @@ public struct HeadingInfo(int level, string id, string content)
/// <seealso cref="HtmlObjectRenderer{TObject}" />
public class AutoLinkHeadingRenderer : HtmlObjectRenderer<HeadingBlock>
{
private string _relativeHtmlPath;
private string RelativeHtmlPath;

private static readonly string[] HeadingTexts = [
"h1",
Expand All @@ -335,11 +335,7 @@ public class AutoLinkHeadingRenderer : HtmlObjectRenderer<HeadingBlock>

public AutoLinkHeadingRenderer(string relativeHtmlPath)
{
this._relativeHtmlPath = relativeHtmlPath;
}

public AutoLinkHeadingRenderer()
{
this.RelativeHtmlPath = relativeHtmlPath;
}

public event Action<HeadingBlock>? OnHeading;
Expand All @@ -364,9 +360,7 @@ protected override void Write(HtmlRenderer renderer, HeadingBlock obj)
var attrs = obj.TryGetAttributes();
if (attrs?.Id != null && obj.Level <= 4)
{
renderer.Write("<a class=\"header-anchor\" href=\"javascript:;\" onclick=\"location.hash='#");
renderer.Write(attrs.Id);
renderer.Write("'\" aria-label=\"Permalink\">&ZeroWidthSpace;</a>");
renderer.Write($"<a class=\"header-anchor\" href=\"{this.RelativeHtmlPath}#{attrs.Id}\" aria-label=\"Permalink\">&ZeroWidthSpace;</a>");
}

if (renderer.EnableHtmlForBlock)
Expand All @@ -383,11 +377,11 @@ protected override void Write(HtmlRenderer renderer, HeadingBlock obj)

public class AutoLinkHeadingsExtension : IMarkdownExtension
{
private string relativeHtmlPath;
private string RelativeHtmlPath;

public AutoLinkHeadingsExtension(string relativeHtmlPath)
{
this.relativeHtmlPath = relativeHtmlPath;
this.RelativeHtmlPath = relativeHtmlPath;
}

public void Setup(MarkdownPipelineBuilder pipeline)
Expand All @@ -396,7 +390,7 @@ public void Setup(MarkdownPipelineBuilder pipeline)

public void Setup(MarkdownPipeline pipeline, IMarkdownRenderer renderer)
{
renderer.ObjectRenderers.Replace<HeadingRenderer>(new AutoLinkHeadingRenderer());
renderer.ObjectRenderers.Replace<HeadingRenderer>(new AutoLinkHeadingRenderer(RelativeHtmlPath));
}
}

Expand Down

0 comments on commit 7f14702

Please sign in to comment.