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; $hide_editor = false;
$showPageControls = true; $showPageControls = true;
} }
$parsedown = new Parsedown(); //$parsedown = new Parsedown();
$renderedContent = $parsedown->text(json_decode($content)); //$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( $o .= replace_macros(get_markup_template('wiki.tpl'),array(
'$wikiheader' => $wikiheader, '$wikiheader' => $wikiheader,
@ -121,8 +123,10 @@ class Wiki extends \Zotlabs\Web\Controller {
// Render mardown-formatted text in HTML // Render mardown-formatted text in HTML
if((argc() > 2) && (argv(2) === 'preview')) { if((argc() > 2) && (argv(2) === 'preview')) {
$content = $_POST['content']; $content = $_POST['content'];
$parsedown = new Parsedown(); //$parsedown = new Parsedown();
$html = $parsedown->text($content); //$html = $parsedown->text($content);
require_once('library/markdown.php');
$html = Markdown($content);
json_return_and_die(array('html' => $html, 'success' => true)); 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); $page = wiki_create_page($name . '.md', $resource_id);
if ($page['success']) { 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 { } else {
logger('Error creating page'); logger('Error creating page');
json_return_and_die(array('message' => 'Error creating page.', 'success' => false)); 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. # Create a code span markup for $code. Called from handleSpanToken.
# #
$code = htmlspecialchars(trim($code), ENT_NOQUOTES); $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( 'element' => array(
'name' => 'code', 'name' => 'code',
'text' => $text, 'text' => $text,
'attributes' => array(
'class' => 'inline-code'
),
), ),
); );
} }

View File

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

View File

@ -4,6 +4,12 @@
width: 100%; width: 100%;
height: 500px; 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> </style>
<div class="generic-content-wrapper"> <div class="generic-content-wrapper">
<div class="section-title-wrapper"> <div class="section-title-wrapper">