.. _spkg_pygments:

pygments: Generic syntax highlighter
====================================

Description
-----------

Pygments is a syntax highlighting package written in Python.

It is a generic syntax highlighter suitable for use in code hosting,
forums, wikis or other applications that need to prettify source code.
Highlights are:

-  a wide range of over 300 languages and other text formats is
   supported

-  special attention is paid to details, increasing quality by a fair
   amount

-  support for new languages and formats are added easily
-  a number of output formats, presently HTML, LaTeX, RTF, SVG, all
   image
   formats that PIL supports and ANSI sequences

-  it is usable as a command-line tool and as a library

License
-------

Modified BSD


Upstream Contact
----------------

- Author: Georg Brandl
- Home Page: https://pygments.org

Special Update/Build Instructions
---------------------------------

Patches included:

-  sage_prompt.patch: patch pygments/lexers/agile.py to treat the
   "sage:" prompt like Python's ">>>" prompt. This allows a very
   kludgy patch to be removed from the Sphinx package (see #10118).

Type
----

standard


Dependencies
------------

- $(PYTHON)
- $(PYTHON_TOOLCHAIN)

Version Information
-------------------

package-version.txt::

    2.12.0

install-requires.txt::

    pygments >=2.3.1


Equivalent System Packages
--------------------------

conda:

.. CODE-BLOCK:: bash

    $ conda install  pygments


homebrew:

.. CODE-BLOCK:: bash

    $ brew install pygments


macports:
install the following packages: py-pygments

opensuse:

.. CODE-BLOCK:: bash

    $ sudo zypper install python3-Pygments


void:

.. CODE-BLOCK:: bash

    $ sudo xbps-install  python3-Pygments


See https://repology.org/project/pygments/versions, https://repology.org/project/python:pygments/versions


However, these system packages will not be used for building Sage
because using Python site-packages is not supported by the Sage distribution;
see :trac:`29023`

