magdkudama / twig-highlight
Twig extension to highlight content
dev-master
2014-11-12 12:46 UTC
Requires
- twig/twig: ~1.12
Requires (Dev)
- kzykhys/pygments: dev-master
- phpunit/phpunit: ~4.0
Suggests
- kzykhys/pygments: Pygments wrapper for PHP
This package is auto-updated.
Last update: 2025-03-29 00:17:12 UTC
README
Simple extension to highlight code (it could be done using a filter or a function, of course... but why not with a custom tag? :D).
Installing
Add the dependency to the composer.json
file:
{ "require": { "magdkudama/twig-highlight": "dev-master" } }
A minimum working version:
<?php use MagdKudama\Highlight\Extension; use MagdKudama\Highlight\Engine\PygmentsRenderer; $twig = // Initialize Twig! $twig->addExtension(new Extension(new PygmentsRenderer()));
Usage
{% highlight 'php' with { theme: 'vim' } ignore_errors %} <?php echo "Hello World!"; for ($i = 0; $i < 10; $i++) { echo $i; } {% endhighlight %} {% highlight 'php' with { theme: 'vim' } %} ... code here ... {% endhighlight %} {% highlight 'php' %} ... code here ... {% endhighlight %} {% highlight 'php' ignore_errors %} ... code here ... {% endhighlight %}
The language (php in this case) is required, but the parameters (with {}
and ignore_errors
are optional).
If you don't want to use Pygments, you can create your own engine by implementing the MagdKudama\Highlight\Engine
interface.
TODO
- Support... Maybe Geshi?
- Default content when there's an error... Maybe!
License
Twig highlight extension is licensed under the MIT license.
Contributors
- Magd Kudama [magdkudama]