diff --git a/src/CustomMarkdown.php b/src/CustomMarkdown.php
index 11e76253..d1f49229 100644
--- a/src/CustomMarkdown.php
+++ b/src/CustomMarkdown.php
@@ -74,6 +74,22 @@ class CustomMarkdown extends \Michelf\Markdown
return parent::_doAnchors_inline_callback($matches);
}
+ protected function _doCodeBlocks_callback($matches) {
+ $codeblock = $matches[1];
+
+ $codeblock = $this->outdent($codeblock);
+ $codeblock = htmlspecialchars($codeblock, ENT_NOQUOTES);
+
+ $codeblock = preg_replace('/\A\n+|\n+\z/', '', $codeblock);
+ $codeblock = preg_replace('/\n/', '
', $codeblock);
+ $codeblock = preg_replace('/\t/', '&tab;', $codeblock);
+ $codeblock = preg_replace('/ /', ' ', $codeblock);
+
+ $codeblock = "
$codeblock\n
";
+ return "\n\n".$this->hashBlock($codeblock)."\n\n";
+ }
+
+
protected function doHardBreaks($text)
{
return preg_replace_callback('/\n(?=[\[\]\(\)\w])/', [&$this, '_doHardBreaks_callback'], $text);