From 8cb27f4bfd8256a8865f122f2024399282a19310 Mon Sep 17 00:00:00 2001 From: Dan Lew Date: Fri, 16 Mar 2018 14:17:06 -0500 Subject: [PATCH] Added support for IndentedCodeBlock --- .../markwon/renderer/SpannableMarkdownVisitor.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/library/src/main/java/ru/noties/markwon/renderer/SpannableMarkdownVisitor.java b/library/src/main/java/ru/noties/markwon/renderer/SpannableMarkdownVisitor.java index 75c70c32..8dd38627 100644 --- a/library/src/main/java/ru/noties/markwon/renderer/SpannableMarkdownVisitor.java +++ b/library/src/main/java/ru/noties/markwon/renderer/SpannableMarkdownVisitor.java @@ -1,6 +1,7 @@ package ru.noties.markwon.renderer; import android.support.annotation.NonNull; +import android.support.annotation.Nullable; import android.text.Spanned; import android.text.TextUtils; import android.text.style.StrikethroughSpan; @@ -22,6 +23,7 @@ import org.commonmark.node.Heading; import org.commonmark.node.HtmlBlock; import org.commonmark.node.HtmlInline; import org.commonmark.node.Image; +import org.commonmark.node.IndentedCodeBlock; import org.commonmark.node.Link; import org.commonmark.node.ListBlock; import org.commonmark.node.ListItem; @@ -142,7 +144,15 @@ public class SpannableMarkdownVisitor extends AbstractVisitor { @Override public void visit(FencedCodeBlock fencedCodeBlock) { + visitCodeBlock(fencedCodeBlock.getInfo(), fencedCodeBlock.getLiteral()); + } + @Override + public void visit(IndentedCodeBlock indentedCodeBlock) { + visitCodeBlock(null, indentedCodeBlock.getLiteral()); + } + + private void visitCodeBlock(@Nullable String info, @NonNull String code) { newLine(); final int length = builder.length(); @@ -151,7 +161,7 @@ public class SpannableMarkdownVisitor extends AbstractVisitor { builder.append('\u00a0').append('\n'); builder.append( configuration.syntaxHighlight() - .highlight(fencedCodeBlock.getInfo(), fencedCodeBlock.getLiteral()) + .highlight(info, code) ); builder.append('\u00a0').append('\n');