protected override void Write(NormalizeRenderer renderer, CodeBlock obj) { var fencedCodeBlock = obj as FencedCodeBlock; if (fencedCodeBlock != null) { var opening = new string(fencedCodeBlock.FencedChar, fencedCodeBlock.FencedCharCount); renderer.Write(opening); if (fencedCodeBlock.Info != null) { renderer.Write(fencedCodeBlock.Info); } if (!string.IsNullOrEmpty(fencedCodeBlock.Arguments)) { renderer.Write(" ").Write(fencedCodeBlock.Arguments); } /* TODO do we need this causes a empty space and would render html attributes to markdown. * var attributes = obj.TryGetAttributes(); * if (attributes != null) * { * renderer.Write(" "); * renderer.Write(attributes); * } */ renderer.WriteLine(); renderer.WriteLeafRawLines(obj, true); renderer.Write(opening); } else { renderer.WriteLeafRawLines(obj, false, true); } renderer.FinishBlock(renderer.Options.EmptyLineAfterCodeBlock); }
protected override void Write(NormalizeRenderer renderer, HtmlBlock obj) { renderer.WriteLeafRawLines(obj, true, false); }