Metadata-Version: 2.1
Name: wagtail-pygments
Version: 0.1
Summary: A block render syntax highlighter for Wagtail CMS.
Home-page: https://github.com/truongvan/wagtail-pygments.git
Author: Truong Van
Author-email: truongvan@live.com
License: BSD-3-Clause
Platform: UNKNOWN
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Framework :: Wagtail
Classifier: Framework :: Wagtail :: 2
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Requires-Dist: pygments (>=2.6)
Requires-Dist: wagtail (>=2)

Wagtail Pygments Block
======================
A block render syntax highlighter for Wagtail CMS.

Install
-------

``pip install -i wagtail-pygments``


Example Usage
-------------

1. Use with ``StreamBlock``::

    from wagtail_pygments.blocks import CodeBlock

    class ContentStreamBlock(StreamBlock):
        heading = TextBlock()
        paragraph = TextBlock()
        code = CodeBlock(label='Code')

2. Use with ``StreamField``::

    from wagtail_pygments.blocks import CodeBlock

    class PostPage(Page):
        body = StreamField([
            ('paragraph', RichTextBlock()),
            ('image', ImageChooserBlock()),
            ('embed', EmbedBlock()),
            ('code', CodeBlock())
        ])

3. Example for django template::

    {% load static %}
    <link rel="stylesheet" href="{% static 'css/monokai.css' %}">

    {% for block in page.body %}
    {% if block.block_type == "code" %}
        {{ block.value.code }}
    {% else %}
        {{ block.value }}
    {% endif %}
    {% endfor %}

Languages
---------

Configuring ``WAGTAIL_CODE_BLOCK_LANGUAGES`` in your Django settings::

    WAGTAIL_CODE_BLOCK_LANGUAGES = (
        ('cpp', 'C++'),
        ('java', 'Java'),
        ('python3', 'Python 3'),
        ('bash', 'Bash/Shell'),
        ('javascript', 'Javascript'),
        ('css', "CSS"),
        ('html', "HTML"),
        ('julia', "Julia"),
        ('nginx', "Nginx configuration file"),
        ('numpy', "NumPy"),
        ('django', "Django"),
        ('jinja', "Jinja"),
        ('docker', "Docker"),
        ('jinja', "Jinja"),
        ('yaml', "YAML"),
        ('json', "JSON"),
        ('plpgsql', "PL/pgSQL"),
        ('psql', "PostgreSQL console (psql)"),
    )

Can check full list in ``https://pygments.org/docs/lexers/``.


