Hacked Parsedown and Markdown to add class inline-code to <code> blocks for proper inline code rendering. Stopped using Parsedown even though Markdown is slower, hence extra delay when previewing pages.

This commit is contained in:
Andrew Manning 2016-05-29 17:06:45 -04:00
parent 75b169f391
commit 3e6af5c876
5 changed files with 28 additions and 6 deletions

View File

@ -93,8 +93,10 @@ class Wiki extends \Zotlabs\Web\Controller {
$hide_editor = false;
$showPageControls = true;
}
$parsedown = new Parsedown();
$renderedContent = $parsedown->text(json_decode($content));
//$parsedown = new Parsedown();
//$renderedContent = $parsedown->text(json_decode($content));
require_once('library/markdown.php');
$renderedContent = Markdown(json_decode($content));
$o .= replace_macros(get_markup_template('wiki.tpl'),array(
'$wikiheader' => $wikiheader,
@ -121,8 +123,10 @@ class Wiki extends \Zotlabs\Web\Controller {
// Render mardown-formatted text in HTML
if((argc() > 2) && (argv(2) === 'preview')) {
$content = $_POST['content'];
$parsedown = new Parsedown();
$html = $parsedown->text($content);
//$parsedown = new Parsedown();
//$html = $parsedown->text($content);
require_once('library/markdown.php');
$html = Markdown($content);
json_return_and_die(array('html' => $html, 'success' => true));
}
@ -230,7 +234,7 @@ class Wiki extends \Zotlabs\Web\Controller {
}
$page = wiki_create_page($name . '.md', $resource_id);
if ($page['success']) {
json_return_and_die(array('url' => '/'.argv(0).'/'.argv(1).'/'.$page['wiki'].'/'.$name, 'success' => true));
json_return_and_die(array('url' => '/'.argv(0).'/'.argv(1).'/'.$page['wiki'].'/'.$name.'.md', 'success' => true));
} else {
logger('Error creating page');
json_return_and_die(array('message' => 'Error creating page.', 'success' => false));

View File

@ -1136,7 +1136,7 @@ class Markdown_Parser {
# Create a code span markup for $code. Called from handleSpanToken.
#
$code = htmlspecialchars(trim($code), ENT_NOQUOTES);
return $this->hashPart("<code>$code</code>");
return $this->hashPart("<code class=\"inline-code\">$code</code>");
}

View File

@ -1074,6 +1074,9 @@ class Parsedown
'element' => array(
'name' => 'code',
'text' => $text,
'attributes' => array(
'class' => 'inline-code'
),
),
);
}

View File

@ -120,6 +120,15 @@ code {
color: #000;
}
.inline-code {
font-size: 1em;
padding: 0;
border: 0;
background: #FFF;
display: inline;
color: #000;
}
pre {
background: #F5F5F5;
color: #333;

View File

@ -4,6 +4,12 @@
width: 100%;
height: 500px;
}
.fade.in {
-webkit-transition: opacity 2s 1s ease;
-moz-transition: opacity 2s 1s ease;
-o-transition: opacity 2s 1s ease;
transition: opacity 2s 1s ease;
}
</style>
<div class="generic-content-wrapper">
<div class="section-title-wrapper">