Go to file
2011-07-03 11:30:09 +02:00
DependencyInjection Change Knplabs to Knp. BC break before Symfony2 release. 2011-07-03 11:30:09 +02:00
Helper Change Knplabs to Knp. BC break before Symfony2 release. 2011-07-03 11:30:09 +02:00
Parser Change Knplabs to Knp. BC break before Symfony2 release. 2011-07-03 11:30:09 +02:00
Resources/config Change Knplabs to Knp. BC break before Symfony2 release. 2011-07-03 11:30:09 +02:00
Tests Change Knplabs to Knp. BC break before Symfony2 release. 2011-07-03 11:30:09 +02:00
Twig/Extension Change Knplabs to Knp. BC break before Symfony2 release. 2011-07-03 11:30:09 +02:00
vendor/parser Improve doc and comments 2010-07-22 12:06:54 +02:00
.gitignore Update gitignore 2011-05-10 09:14:07 -07:00
KnpMarkdownBundle.php Change Knplabs to Knp. BC break before Symfony2 release. 2011-07-03 11:30:09 +02:00
LICENSE Initial commit 2010-05-05 17:11:02 +02:00
MarkdownParserInterface.php Change Knplabs to Knp. BC break before Symfony2 release. 2011-07-03 11:30:09 +02:00
phpunit.xml.dist Add phpunit.xml and test bootstrap 2011-05-10 09:14:21 -07:00
README.markdown Change Knplabs to Knp. BC break before Symfony2 release. 2011-07-03 11:30:09 +02:00

Provide markdown conversion to your Symfony2 projects.

This implementation is based on Michel Fortin work. We added PHP5 sugar, feature selection, and unit tests.

INSTALLATION

Put MarkdownBundle in a vendor/bundles/Knp/Bundle/MarkdownBundle dir.

USAGE

// Use the service
$html = $this->container->get('markdown.parser')->transform($text);

// Use the helper
echo $view['markdown']->transform($text);

If you have enabled the twig markdown filter, you can use the following in your twig templates:

{{ my_data | markdown }}

Change the parser implementation

Create a service implementing Knp\Bundle\MarkdownBundle\ParserInterface, then configure the bundle to use it:

knp_markdown:
      parser:
              service: my.markdown.parser

This bundle comes with 4 parser services, all based on the same algorithm but providing different levels of compliance to the markdown specification:

  • markdown.parser.max // fully compliant = slower (default implementation)
  • markdown.parser.medium // expensive and uncommon features dropped
  • markdown.parser.light // expensive features dropped
  • markdown.parser.min // most features dropped = faster

For more details, see the implementations in Parser/Preset.

TEST

phpunit -c myapp vendor/bundles/Knp/Bundle/MarkdownBundle