Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

django-pygments

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

django-pygments

Django app that provides a template tag and 2 filters for doing syntax highlighting with Pygments

  • 0.8
  • PyPI
  • Socket score

Maintainers
1

description

"django-pygments" is a Django app that provides a template tag and two filters for doing syntax highlighting with Pygments.

dependencies

  • Pygments

installation

  • Add "django_pygments" to your project directory and to INSTALLED_APPS in your "settings.py",
  • If you want to see the integrated demo page, add a "urls.py" entry for "django_pygments.views.demo".

The project is also available on PyPI:

pip install django-pygments

usage

  • Enclose your code snippet in a pre tag with the non-standard "lang" attribute set to a supported language like this:
<pre lang="python">....</pre>
  • See the view and demo template for examples on how to use the "pygmentify" and "pygmentify_inline" filters (the latter is rather useful for RSS feeds, because it inlines CSS styles by passing noclasses=True to pygments.formatters.HtmlFormatter) or the "pygment" tag.

  • While using the "pygment" template tag, you can pass keyword arguments that you would pass to Pygments HtmlFormatter class constructor by passing them as with keyword arguments along with the pygment tag. Look at demo template for examples. There is one caveat with this feature still. You can only pass Python values as argument values (like strings wrapped within quotes or True or False boolean values, etc.). It doesn't support Django template/context variables as arguments yet.

    E.g: to disable line numbering, use:

{% pygment linenos=False %}
    <pre lang="python">...</pre>
{% endpygment %}

notes

  • The custom HTML formatter class displays each line as an ordered list element, thus implementing line numbering without interfering with copy/pasting.
  • To see a list of supported languages, look at the "lexer_names" variable in "utils.py".

license

3-clause BSD

credits

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc