This extension has been deprecated. All of its functionality now exists in league/commonmark
1.3+ under the League\CommonMark\Extension\SmartPunct
namespace, so you should upgrade to that version and use that bundled extension instead of this one.
Intelligently converts ASCII quotes, dashes, and ellipses to their Unicode equivalents. For use with the league/commonmark
Markdown parser for PHP.
For example, this Markdown...
"CommonMark is the PHP League's Markdown parser," she said. "It's super-configurable... you can even use additional extensions to expand its capabilities -- just like this one!"
Will result in this HTML:
<p>“CommonMark is the PHP League’s Markdown parser,” she said. “It’s super-configurable… you can even use additional extensions to expand its capabilities – just like this one!”</p>
Via Composer
$ composer require league/commonmark-ext-smartpunct
Extensions can be added to any new Environment
:
use League\CommonMark\CommonMarkConverter;
use League\CommonMark\Environment;
use League\CommonMark\Ext\SmartPunct\SmartPunctExtension;
// Obtain a pre-configured Environment with all the CommonMark parsers/renderers ready-to-go
$environment = Environment::createCommonMarkEnvironment();
// Add this extension
$environment->addExtension(new SmartPunctExtension());
// Set your configuration
$config = [
'smartpunct' => [
'double_quote_opener' => '“',
'double_quote_closer' => '”',
'single_quote_opener' => '‘',
'single_quote_closer' => '’',
],
];
// Instantiate the converter engine and start converting some Markdown!
$converter = new CommonMarkConverter($config, $environment);
echo $converter->convertToHtml('# Hello World!');
Please see CHANGELOG for more information what has changed recently.
$ composer test
If you discover any security related issues, please email colinodell@gmail.com instead of using the issue tracker.
This library is licensed under the BSD-3 license. See the License File for more information.