Skip to content

Commit

Permalink
Fix: Super, Subscript
Browse files Browse the repository at this point in the history
  • Loading branch information
neolithos committed Apr 5, 2021
1 parent ef8521e commit b0f00f1
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 11 deletions.
5 changes: 3 additions & 2 deletions NeoMarkdigXaml/MarkdownXaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ public static object ToXaml(string markdown, XamlWriter writer, MarkdownPipeline
{
if (writer == null)
throw new ArgumentNullException(nameof(writer));
pipeline = pipeline ?? new MarkdownPipelineBuilder().Build();
pipeline ??= new MarkdownPipelineBuilder().Build();

var renderer = new XamlMarkdownWriter(writer) { BaseUri = baseUri };
pipeline.Setup(renderer);
Expand All @@ -105,7 +105,8 @@ public static object ToXaml(string markdown, XamlWriter writer, MarkdownPipeline

public static MarkdownPipelineBuilder UseXamlSupportedExtensions(this MarkdownPipelineBuilder pipeline)
{
if (pipeline == null) throw new ArgumentNullException(nameof(pipeline));
if (pipeline == null)
throw new ArgumentNullException(nameof(pipeline));
return pipeline
.UseEmphasisExtras()
.UseGridTables()
Expand Down
18 changes: 9 additions & 9 deletions NeoMarkdigXaml/Renderers/XamlInlineRenderer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -97,22 +97,22 @@ private static bool WriteSpan(XamlMarkdownWriter renderer, EmphasisInline span)
case '_': // italic
renderer.WriteStartObject(typeof(Italic));
return true;
case '~': // strike through
renderer.WriteStartObject(typeof(Span));
renderer.WriteResourceMember(null, MarkdownXamlStyle.StrikeThrough);
return true;
case '^': // superscript, subscript
case '~': // 1x strike through, 2x subscript
renderer.WriteStartObject(typeof(Span));
if (span.DelimiterCount == 2)
renderer.WriteResourceMember(null, MarkdownXamlStyle.Superscript);
else
renderer.WriteResourceMember(null, MarkdownXamlStyle.Subscript);
else
renderer.WriteResourceMember(null, MarkdownXamlStyle.StrikeThrough);
return true;
case '^': // 1x superscript
renderer.WriteStartObject(typeof(Span));
renderer.WriteResourceMember(null, MarkdownXamlStyle.Superscript);
return true;
case '+': // underline
case '+': // 2x underline
renderer.WriteStartObject(typeof(Span));
renderer.WriteResourceMember(null, MarkdownXamlStyle.Inserted);
return true;
case '=': // Marked
case '=': // 2x Marked
renderer.WriteStartObject(typeof(Span));
renderer.WriteResourceMember(null, MarkdownXamlStyle.Marked);
return true;
Expand Down

0 comments on commit b0f00f1

Please sign in to comment.