mavimo / sculpin-parsedown
Sculpin Parsedown
Requires
- php: >=5.3.2
- erusev/parsedown: *
This package is auto-updated.
Last update: 2024-11-14 08:49:00 UTC
README
Sculpin is a PHP static site generator, that use markdown file to store content. By default it's parse that files using php-markdown, that is a nice PHP markdown parser, but do not support flavored markdown from github and have some performance issues.
This use the awesome parsedown library that is faster that php-markdown and support flavored markdown syntax.
Performance
I used my blog as test platform with:
- approx 100 posts
- archive (paginated posts)
- tags
- categories
- some static pages
Site is generated on a i7 CPU, an SSD disk and 16GB RAM.
Using markdown:
real 0m8.954s
user 0m7.884s
sys 0m0.235s
Using parsedown:
real 0m6.115s
user 0m5.834s
sys 0m0.267s
the improvement is approx:
real 32%
user 26%
sys 12%
average 29% of improvement.
Installation
To install add in your sculpin.json
file the following package declaration:
{
"require": {
"mavimo/sculpin-parsedown": "@dev"
}
}
Now you can update using sculpin update
command.
After that add the following definition in the sculpin_kernel.yml
:
sculpin_markdown: parser_class: Mavimo\Sculpin\Bundle\ParsedownBundle\ParsedownConverter
Sculpin have a declared dependencie in bundle, so we need to manually patch it, in file:
src/Sculpin/Bundle/MarkdownBundle/MarkdownConverter.php
remove from line 14:
use Michelf\Markdown;
and transform line 48 from:
public function __construct(Markdown $markdown, array $extensions = array())
to
public function __construct(Markdown $markdown, array $extensions = array())
removing Markdown
variable definition.