- Home
- Languages
- Styles
- FAQ
- Get it
- Docs

# Available lexers

This page lists all available builtin lexers and the options they take.

Currently, all lexers support these options:

stripnl

  Strip leading and trailing newlines from the input (default: `True`)

stripall

  Strip all leading and trailing whitespace from the input (default: `False`).

ensurenl

  Make sure that the input ends with a newline (default: `True`). This is required for some lexers that consume input linewise.

  New in version 1.3.

tabsize

  If given and greater than 0, expand tabs in the input (default: `0`).

encoding

  If given, must be an encoding name (such as `"utf-8"`). This encoding will be used to convert the input string to Unicode (if it is not already a Unicode string). The default is `"guess"`.

  If this option is set to `"guess"`, a simple UTF-8 vs. Latin-1 detection is used, if it is set to `"chardet"`, the chardet library is used to guess the encoding of the input.

  New in version 0.6.

The “Short Names” field lists the identifiers that can be used with the get_lexer_by_name() function.

These lexers are builtin and can be imported from pygments.lexers:

## Lexers for ActionScript and MXML

class pygments.lexers.actionscript.ActionScript3Lexer
  Short names

    actionscript3, as3

  Filenames

    *.as

  MIME types

    application/x-actionscript3, text/x-actionscript3, text/actionscript3

  For ActionScript 3 source code.

  New in version 0.11.

class pygments.lexers.actionscript.ActionScriptLexer
  Short names

    actionscript, as

  Filenames

    *.as

  MIME types

    application/x-actionscript, text/x-actionscript, text/actionscript

  For ActionScript source code.

  New in version 0.9.

class pygments.lexers.actionscript.MxmlLexer
  Short names

    mxml

  Filenames

    *.mxml

  MIME types

    None

  For MXML markup. Nested AS3 in <script> tags is highlighted by the appropriate lexer.

  New in version 1.1.

## Lexers for computer algebra systems

class pygments.lexers.algebra.BCLexer
  Short names

    bc

  Filenames

    *.bc

  MIME types

    None

  A BC lexer.

  New in version 2.1.

class pygments.lexers.algebra.GAPLexer
  Short names

    gap

  Filenames

    *.g, *.gd, *.gi, *.gap

  MIME types

    None

  For GAP source code.

  New in version 2.0.

class pygments.lexers.algebra.MathematicaLexer
  Short names

    mathematica, mma, nb

  Filenames

    *.nb, *.cdf, *.nbp, *.ma

  MIME types

    application/mathematica, application/vnd.wolfram.mathematica, application/vnd.wolfram.mathematica.package, application/vnd.wolfram.cdf

  Lexer for Mathematica source code.

  New in version 2.0.

class pygments.lexers.algebra.MuPADLexer
  Short names

    mupad

  Filenames

    *.mu

  MIME types

    None

  A MuPAD lexer. Contributed by Christopher Creutzig <christopher@creutzig.de>.

  New in version 0.8.

## Lexers for AmbientTalk language

class pygments.lexers.ambient.AmbientTalkLexer
  Short names

    ambienttalk, ambienttalk/2, at

  Filenames

    *.at

  MIME types

    text/x-ambienttalk

  Lexer for AmbientTalk source code.

  New in version 2.0.

## Lexers for the AMDGPU ISA assembly

class pygments.lexers.amdgpu.AMDGPULexer
  Short names

    amdgpu

  Filenames

    *.isa

  MIME types

    None

  For AMD GPU assembly.

  New in version 2.8.

## Lexers for the AMPL language

class pygments.lexers.ampl.AmplLexer
  Short names

    ampl

  Filenames

    *.run

  MIME types

    None

  For AMPL source code.

  New in version 2.2.

## Lexers for ANSYS Parametric Design Language

class pygments.lexers.apdlexer.apdlexer
  Short names

    ansys, apdl

  Filenames

    *.ans

  MIME types

    None

  For APDL source code.

  New in version 2.9.

## Lexers for APL

class pygments.lexers.apl.APLLexer
  Short names

    apl

  Filenames

    *.apl, *.aplf, *.aplo, *.apln, *.aplc, *.apli, *.dyalog

  MIME types

    None

  A simple APL lexer.

  New in version 2.0.

## Lexer for Archetype-related syntaxes, including:

class pygments.lexers.archetype.AdlLexer
  Short names

    adl

  Filenames

    *.adl, *.adls, *.adlf, *.adlx

  MIME types

    None

  Lexer for ADL syntax.

  New in version 2.1.

class pygments.lexers.archetype.CadlLexer
  Short names

    cadl

  Filenames

    *.cadl

  MIME types

    None

  Lexer for cADL syntax.

  New in version 2.1.

class pygments.lexers.archetype.OdinLexer
  Short names

    odin

  Filenames

    *.odin

  MIME types

    text/odin

  Lexer for ODIN syntax.

  New in version 2.1.

## Lexer for Arrow

class pygments.lexers.arrow.ArrowLexer
  Short names

    arrow

  Filenames

    *.arw

  MIME types

    None

  Lexer for Arrow: https://pypi.org/project/py-arrow-lang/

  New in version 2.7.

## Lexer for various ASCII armored files

class pygments.lexers.asc.AscLexer
  Short names

    asc, pem

  Filenames

    *.asc, *.pem, iddsa, idecdsa, idecdsask, ided25519, ided25519sk, idrsa

  MIME types

    application/pgp-keys, application/pgp-encrypted, application/pgp-signature

  Lexer for ASCII armored files, containing —–BEGIN/END …—– wrapped base64 data.

  New in version 2.10.

## Lexers for assembly languages

class pygments.lexers.asm.CObjdumpLexer
  Short names

    c-objdump

  Filenames

    *.c-objdump

  MIME types

    text/x-c-objdump

  For the output of `objdump -Sr` on compiled C files.

class pygments.lexers.asm.Ca65Lexer
  Short names

    ca65

  Filenames

    *.s

  MIME types

    None

  For ca65 assembler sources.

  New in version 1.6.

class pygments.lexers.asm.CppObjdumpLexer
  Short names

    cpp-objdump, c++-objdumb, cxx-objdump

  Filenames

    *.cpp-objdump, *.c++-objdump, *.cxx-objdump

  MIME types

    text/x-cpp-objdump

  For the output of `objdump -Sr` on compiled C++ files.

class pygments.lexers.asm.DObjdumpLexer
  Short names

    d-objdump

  Filenames

    *.d-objdump

  MIME types

    text/x-d-objdump

  For the output of `objdump -Sr` on compiled D files.

class pygments.lexers.asm.Dasm16Lexer
  Short names

    dasm16

  Filenames

    *.dasm16, *.dasm

  MIME types

    text/x-dasm16

  For DCPU-16 Assembly.

  Check http://0x10c.com/doc/dcpu-16.txt

  New in version 2.4.

class pygments.lexers.asm.GasLexer
  Short names

    gas, asm

  Filenames

    *.s, *.S

  MIME types

    text/x-gas

  For Gas (AT&T) assembly code.

class pygments.lexers.asm.HsailLexer
  Short names

    hsail, hsa

  Filenames

    *.hsail

  MIME types

    text/x-hsail

  For HSAIL assembly code.

  New in version 2.2.

class pygments.lexers.asm.LlvmLexer
  Short names

    llvm

  Filenames

    *.ll

  MIME types

    text/x-llvm

  For LLVM assembly code.

class pygments.lexers.asm.LlvmMirBodyLexer
  Short names

    llvm-mir-body

  Filenames

    None

  MIME types

    None

  For LLVM MIR examples without the YAML wrapper.

  For more information on LLVM MIR see https://llvm.org/docs/MIRLangRef.html.

  New in version 2.6.

class pygments.lexers.asm.LlvmMirLexer
  Short names

    llvm-mir

  Filenames

    *.mir

  MIME types

    None

  Lexer for the overall LLVM MIR document format.

  MIR is a human readable serialization format that’s used to represent LLVM’s machine specific intermediate representation. It allows LLVM’s developers to see the state of the compilation process at various points, as well as test individual pieces of the compiler.

  For more information on LLVM MIR see https://llvm.org/docs/MIRLangRef.html.

  New in version 2.6.

class pygments.lexers.asm.NasmLexer
  Short names

    nasm

  Filenames

    *.asm, *.ASM

  MIME types

    text/x-nasm

  For Nasm (Intel) assembly code.

class pygments.lexers.asm.NasmObjdumpLexer
  Short names

    objdump-nasm

  Filenames

    *.objdump-intel

  MIME types

    text/x-nasm-objdump

  For the output of `objdump -d -M intel`.

  New in version 2.0.

class pygments.lexers.asm.ObjdumpLexer
  Short names

    objdump

  Filenames

    *.objdump

  MIME types

    text/x-objdump

  For the output of `objdump -dr`.

class pygments.lexers.asm.TasmLexer
  Short names

    tasm

  Filenames

    *.asm, *.ASM, *.tasm

  MIME types

    text/x-tasm

  For Tasm (Turbo Assembler) assembly code.

## Lexers for automation scripting languages

class pygments.lexers.automation.AutoItLexer
  Short names

    autoit

  Filenames

    *.au3

  MIME types

    text/x-autoit

  For AutoIt files.

  AutoIt is a freeware BASIC-like scripting language designed for automating the Windows GUI and general scripting

  New in version 1.6.

class pygments.lexers.automation.AutohotkeyLexer
  Short names

    autohotkey, ahk

  Filenames

    *.ahk, *.ahkl

  MIME types

    text/x-autohotkey

  For autohotkey source code.

  New in version 1.4.

## Lexer for the BARE schema

class pygments.lexers.bare.BareLexer
  Short names

    bare

  Filenames

    *.bare

  MIME types

    None

  For BARE schema schema source.

  New in version 2.7.

## Lexers for BASIC like languages (other than VB.net)

class pygments.lexers.basic.BBCBasicLexer
  Short names

    bbcbasic

  Filenames

    *.bbc

  MIME types

    None

  BBC Basic was supplied on the BBC Micro, and later Acorn RISC OS. It is also used by BBC Basic For Windows.

  New in version 2.4.

class pygments.lexers.basic.BlitzBasicLexer
  Short names

    blitzbasic, b3d, bplus

  Filenames

    *.bb, *.decls

  MIME types

    text/x-bb

  For BlitzBasic source code.

  New in version 2.0.

class pygments.lexers.basic.BlitzMaxLexer
  Short names

    blitzmax, bmax

  Filenames

    *.bmx

  MIME types

    text/x-bmx

  For BlitzMax source code.

  New in version 1.4.

class pygments.lexers.basic.CbmBasicV2Lexer
  Short names

    cbmbas

  Filenames

    *.bas

  MIME types

    None

  For CBM BASIC V2 sources.

  New in version 1.6.

class pygments.lexers.basic.MonkeyLexer
  Short names

    monkey

  Filenames

    *.monkey

  MIME types

    text/x-monkey

  For Monkey source code.

  New in version 1.6.

class pygments.lexers.basic.QBasicLexer
  Short names

    qbasic, basic

  Filenames

    *.BAS, *.bas

  MIME types

    text/basic

  For QBasic source code.

  New in version 2.0.

class pygments.lexers.basic.VBScriptLexer
  Short names

    vbscript

  Filenames

    *.vbs, *.VBS

  MIME types

    None

  VBScript is scripting language that is modeled on Visual Basic.

  New in version 2.4.

## Lexer for BDD(Behavior-driven development)

class pygments.lexers.bdd.BddLexer
  Short names

    bdd

  Filenames

    *.feature

  MIME types

    text/x-bdd

  Lexer for BDD(Behavior-driven development), which highlights not only keywords, but also comments, punctuations, strings, numbers, and variables.

  New in version 2.11.

## Lexers for BibTeX bibliography data and styles

class pygments.lexers.bibtex.BSTLexer
  Short names

    bst, bst-pybtex

  Filenames

    *.bst

  MIME types

    None

  A lexer for BibTeX bibliography styles.

  New in version 2.2.

class pygments.lexers.bibtex.BibTeXLexer
  Short names

    bibtex, bib

  Filenames

    *.bib

  MIME types

    text/x-bibtex

  A lexer for BibTeX bibliography data format.

  New in version 2.2.

## Lexers for the Boa language

class pygments.lexers.boa.BoaLexer
  Short names

    boa

  Filenames

    *.boa

  MIME types

    None

  Lexer for the Boa language.

  New in version 2.4.

## Lexers for “business-oriented” languages

class pygments.lexers.business.ABAPLexer
  Short names

    abap

  Filenames

    *.abap, *.ABAP

  MIME types

    text/x-abap

  Lexer for ABAP, SAP’s integrated language.

  New in version 1.1.

class pygments.lexers.business.CobolFreeformatLexer
  Short names

    cobolfree

  Filenames

    *.cbl, *.CBL

  MIME types

    None

  Lexer for Free format OpenCOBOL code.

  New in version 1.6.

class pygments.lexers.business.CobolLexer
  Short names

    cobol

  Filenames

    *.cob, *.COB, *.cpy, *.CPY

  MIME types

    text/x-cobol

  Lexer for OpenCOBOL code.

  New in version 1.6.

class pygments.lexers.business.GoodDataCLLexer
  Short names

    gooddata-cl

  Filenames

    *.gdc

  MIME types

    text/x-gooddata-cl

  Lexer for GoodData-CL script files.

  New in version 1.4.

class pygments.lexers.business.MaqlLexer
  Short names

    maql

  Filenames

    *.maql

  MIME types

    text/x-gooddata-maql, application/x-gooddata-maql

  Lexer for GoodData MAQL scripts.

  New in version 1.4.

class pygments.lexers.business.OpenEdgeLexer
  Short names

    openedge, abl, progress

  Filenames

    *.p, *.cls

  MIME types

    text/x-openedge, application/x-openedge

  Lexer for OpenEdge ABL (formerly Progress) source code.

  New in version 1.5.

## Lexers for C/C++ languages

class pygments.lexers.c_cpp.CLexer
  Short names

    c

  Filenames

    *.c, *.h, *.idc, *.x[bp]m

  MIME types

    text/x-chdr, text/x-csrc, image/x-xbitmap, image/x-xpixmap

  For C source code with preprocessor directives.

  Additional options accepted:

  stdlibhighlighting

    Highlight common types found in the C/C++ standard library (e.g. size_t). (default: `True`).

  c99highlighting

    Highlight common types found in the C99 standard library (e.g. int8_t). Actually, this includes all fixed-width integer types. (default: `True`).

  c11highlighting

    Highlight atomic types found in the C11 standard library (e.g. atomic_bool). (default: `True`).

  platformhighlighting

    Highlight common types found in the platform SDK headers (e.g. clockid_t on Linux). (default: `True`).

class pygments.lexers.c_cpp.CppLexer
  Short names

    cpp, c++

  Filenames

    *.cpp, *.hpp, *.c++, *.h++, *.cc, *.hh, *.cxx, *.hxx, *.C, *.H, *.cp, *.CPP

  MIME types

    text/x-c++hdr, text/x-c++src

  For C++ source code with preprocessor directives.

  Additional options accepted:

  stdlibhighlighting

    Highlight common types found in the C/C++ standard library (e.g. size_t). (default: `True`).

  c99highlighting

    Highlight common types found in the C99 standard library (e.g. int8_t). Actually, this includes all fixed-width integer types. (default: `True`).

  c11highlighting

    Highlight atomic types found in the C11 standard library (e.g. atomic_bool). (default: `True`).

  platformhighlighting

    Highlight common types found in the platform SDK headers (e.g. clockid_t on Linux). (default: `True`).

## Lexers for other C-like languages

class pygments.lexers.c_like.ArduinoLexer
  Short names

    arduino

  Filenames

    *.ino

  MIME types

    text/x-arduino

  For Arduino(tm) source.

  This is an extension of the CppLexer, as the Arduino® Language is a superset of C++

  New in version 2.1.

class pygments.lexers.c_like.CharmciLexer
  Short names

    charmci

  Filenames

    *.ci

  MIME types

    None

  For Charm++ interface files (.ci).

  New in version 2.4.

class pygments.lexers.c_like.ClayLexer
  Short names

    clay

  Filenames

    *.clay

  MIME types

    text/x-clay

  For Clay source.

  New in version 2.0.

class pygments.lexers.c_like.CudaLexer
  Short names

    cuda, cu

  Filenames

    *.cu, *.cuh

  MIME types

    text/x-cuda

  For NVIDIA CUDA™ source.

  New in version 1.6.

class pygments.lexers.c_like.ECLexer
  Short names

    ec

  Filenames

    *.ec, *.eh

  MIME types

    text/x-echdr, text/x-ecsrc

  For eC source code with preprocessor directives.

  New in version 1.5.

class pygments.lexers.c_like.MqlLexer
  Short names

    mql, mq4, mq5, mql4, mql5

  Filenames

    *.mq4, *.mq5, *.mqh

  MIME types

    text/x-mql

  For MQL4 and MQL5 source code.

  New in version 2.0.

class pygments.lexers.c_like.NesCLexer
  Short names

    nesc

  Filenames

    *.nc

  MIME types

    text/x-nescsrc

  For nesC source code with preprocessor directives.

  New in version 2.0.

class pygments.lexers.c_like.OmgIdlLexer
  Short names

    omg-idl

  Filenames

    *.idl, *.pidl

  MIME types

    None

  Lexer for Object Management Group Interface Definition Language.

  New in version 2.9.

class pygments.lexers.c_like.PikeLexer
  Short names

    pike

  Filenames

    *.pike, *.pmod

  MIME types

    text/x-pike

  For Pike source code.

  New in version 2.0.

class pygments.lexers.c_like.SwigLexer
  Short names

    swig

  Filenames

    *.swg, *.i

  MIME types

    text/swig

  For SWIG source code.

  New in version 2.0.

class pygments.lexers.c_like.ValaLexer
  Short names

    vala, vapi

  Filenames

    *.vala, *.vapi

  MIME types

    text/x-vala

  For Vala source code with preprocessor directives.

  New in version 1.1.

## Lexers for the Cap’n Proto schema language

class pygments.lexers.capnproto.CapnProtoLexer
  Short names

    capnp

  Filenames

    *.capnp

  MIME types

    None

  For Cap’n Proto source.

  New in version 2.2.

## Lexer for the Concise data definition language (CDDL), a notational

class pygments.lexers.cddl.CddlLexer
  Short names

    cddl

  Filenames

    *.cddl

  MIME types

    text/x-cddl

  Lexer for CDDL definitions.

  New in version 2.8.

## Lexer for the Chapel language

class pygments.lexers.chapel.ChapelLexer
  Short names

    chapel, chpl

  Filenames

    *.chpl

  MIME types

    None

  For Chapel source.

  New in version 2.0.

## Lexer for the Clean language

class pygments.lexers.clean.CleanLexer
  Short names

    clean

  Filenames

    *.icl, *.dcl

  MIME types

    None

  Lexer for the general purpose, state-of-the-art, pure and lazy functional programming language Clean (http://clean.cs.ru.nl/Clean).

## Lexers for configuration file formats

class pygments.lexers.configs.ApacheConfLexer
  Short names

    apacheconf, aconf, apache

  Filenames

    .htaccess, apache.conf, apache2.conf

  MIME types

    text/x-apacheconf

  Lexer for configuration files following the Apache config file format.

  New in version 0.6.

class pygments.lexers.configs.AugeasLexer
  Short names

    augeas

  Filenames

    *.aug

  MIME types

    None

  Lexer for Augeas.

  New in version 2.4.

class pygments.lexers.configs.Cfengine3Lexer
  Short names

    cfengine3, cf3

  Filenames

    *.cf

  MIME types

    None

  Lexer for CFEngine3 policy files.

  New in version 1.5.

class pygments.lexers.configs.DockerLexer
  Short names

    docker, dockerfile

  Filenames

    Dockerfile, *.docker

  MIME types

    text/x-dockerfile-config

  Lexer for Docker configuration files.

  New in version 2.0.

class pygments.lexers.configs.IniLexer
  Short names

    ini, cfg, dosini

  Filenames

    *.ini, *.cfg, *.inf, .editorconfig, *.service, *.socket, *.device, *.mount, *.automount, *.swap, *.target, *.path, *.timer, *.slice, *.scope

  MIME types

    text/x-ini, text/inf

  Lexer for configuration files in INI style.

class pygments.lexers.configs.KconfigLexer
  Short names

    kconfig, menuconfig, linux-config, kernel-config

  Filenames

    Kconfig*, *Config.in*, external.in*, standard-modules.in

  MIME types

    text/x-kconfig

  For Linux-style Kconfig files.

  New in version 1.6.

class pygments.lexers.configs.LighttpdConfLexer
  Short names

    lighttpd, lighty

  Filenames

    lighttpd.conf

  MIME types

    text/x-lighttpd-conf

  Lexer for Lighttpd configuration files.

  New in version 0.11.

class pygments.lexers.configs.NestedTextLexer
  Short names

    nestedtext, nt

  Filenames

    *.nt

  MIME types

    None

  Lexer for NextedText, a human-friendly data format.

  New in version 2.9.

class pygments.lexers.configs.NginxConfLexer
  Short names

    nginx

  Filenames

    nginx.conf

  MIME types

    text/x-nginx-conf

  Lexer for Nginx configuration files.

  New in version 0.11.

class pygments.lexers.configs.PacmanConfLexer
  Short names

    pacmanconf

  Filenames

    pacman.conf

  MIME types

    None

  Lexer for pacman.conf.

  Actually, IniLexer works almost fine for this format, but it yield error token. It is because pacman.conf has a form without assignment like:

  > UseSyslog Color TotalDownload CheckSpace VerbosePkgLists

  These are flags to switch on.

  New in version 2.1.

class pygments.lexers.configs.PkgConfigLexer
  Short names

    pkgconfig

  Filenames

    *.pc

  MIME types

    None

  Lexer for pkg-config (see also manual page).

  New in version 2.1.

class pygments.lexers.configs.PropertiesLexer
  Short names

    properties, jproperties

  Filenames

    *.properties

  MIME types

    text/x-java-properties

  Lexer for configuration files in Java’s properties format.

  Note: trailing whitespace counts as part of the value as per spec

  New in version 1.4.

class pygments.lexers.configs.RegeditLexer
  Short names

    registry

  Filenames

    *.reg

  MIME types

    text/x-windows-registry

  Lexer for Windows Registry files produced by regedit.

  New in version 1.6.

class pygments.lexers.configs.SingularityLexer
  Short names

    singularity

  Filenames

    *.def, Singularity

  MIME types

    None

  Lexer for Singularity definition files.

  New in version 2.6.

class pygments.lexers.configs.SquidConfLexer
  Short names

    squidconf, squid.conf, squid

  Filenames

    squid.conf

  MIME types

    text/x-squidconf

  Lexer for squid configuration files.

  New in version 0.9.

class pygments.lexers.configs.TOMLLexer
  Short names

    toml

  Filenames

    *.toml, Pipfile, poetry.lock

  MIME types

    None

  Lexer for TOML, a simple language for config files.

  New in version 2.4.

class pygments.lexers.configs.TermcapLexer
  Short names

    termcap

  Filenames

    termcap, termcap.src

  MIME types

    None

  Lexer for termcap database source.

  This is very simple and minimal.

  New in version 2.1.

class pygments.lexers.configs.TerminfoLexer
  Short names

    terminfo

  Filenames

    terminfo, terminfo.src

  MIME types

    None

  Lexer for terminfo database source.

  This is very simple and minimal.

  New in version 2.1.

class pygments.lexers.configs.TerraformLexer
  Short names

    terraform, tf

  Filenames

    *.tf

  MIME types

    application/x-tf, application/x-terraform

  Lexer for terraformi .tf files.

  New in version 2.1.

## Lexers for misc console output

class pygments.lexers.console.PyPyLogLexer
  Short names

    pypylog, pypy

  Filenames

    *.pypylog

  MIME types

    application/x-pypylog

  Lexer for PyPy log files.

  New in version 1.5.

class pygments.lexers.console.VCTreeStatusLexer
  Short names

    vctreestatus

  Filenames

    None

  MIME types

    None

  For colorizing output of version control status commands, like “hg status” or “svn status”.

  New in version 2.0.

## Lexer for Crystal

class pygments.lexers.crystal.CrystalLexer
  Short names

    cr, crystal

  Filenames

    *.cr

  MIME types

    text/x-crystal

  For Crystal source code.

  New in version 2.2.

## Lexers for Csound languages

class pygments.lexers.csound.CsoundDocumentLexer
  Short names

    csound-document, csound-csd

  Filenames

    *.csd

  MIME types

    None

  For Csound documents.

  New in version 2.1.

class pygments.lexers.csound.CsoundOrchestraLexer
  Short names

    csound, csound-orc

  Filenames

    *.orc, *.udo

  MIME types

    None

  For Csound orchestras.

  New in version 2.1.

class pygments.lexers.csound.CsoundScoreLexer
  Short names

    csound-score, csound-sco

  Filenames

    *.sco

  MIME types

    None

  For Csound scores.

  New in version 2.1.

## Lexers for CSS and related stylesheet formats

class pygments.lexers.css.CssLexer
  Short names

    css

  Filenames

    *.css

  MIME types

    text/css

  For CSS (Cascading Style Sheets).

class pygments.lexers.css.LessCssLexer
  Short names

    less

  Filenames

    *.less

  MIME types

    text/x-less-css

  For LESS styleshets.

  New in version 2.1.

class pygments.lexers.css.SassLexer
  Short names

    sass

  Filenames

    *.sass

  MIME types

    text/x-sass

  For Sass stylesheets.

  New in version 1.3.

class pygments.lexers.css.ScssLexer
  Short names

    scss

  Filenames

    *.scss

  MIME types

    text/x-scss

  For SCSS stylesheets.

## Lexers for D languages

class pygments.lexers.d.CrocLexer
  Short names

    croc

  Filenames

    *.croc

  MIME types

    text/x-crocsrc

  For Croc source.

class pygments.lexers.d.DLexer
  Short names

    d

  Filenames

    *.d, *.di

  MIME types

    text/x-dsrc

  For D source.

  New in version 1.2.

class pygments.lexers.d.MiniDLexer
  Short names

    minid

  Filenames

    None

  MIME types

    text/x-minidsrc

  For MiniD source. MiniD is now known as Croc.

## Pygments lexers for Dalvik VM-related languages

class pygments.lexers.dalvik.SmaliLexer
  Short names

    smali

  Filenames

    *.smali

  MIME types

    text/smali

  For Smali (Android/Dalvik) assembly code.

  New in version 1.6.

## Lexers for data file format

class pygments.lexers.data.JsonBareObjectLexer
  Short names

    None

  Filenames

    None

  MIME types

    None

  For JSON data structures (with missing object curly braces).

  New in version 2.2.

  Deprecated since version 2.8.0: Behaves the same as JsonLexer now.

class pygments.lexers.data.JsonLdLexer
  Short names

    jsonld, json-ld

  Filenames

    *.jsonld

  MIME types

    application/ld+json

  For JSON-LD linked data.

  New in version 2.0.

class pygments.lexers.data.JsonLexer
  Short names

    json, json-object

  Filenames

    *.json, Pipfile.lock

  MIME types

    application/json, application/json-object

  For JSON data structures.

  New in version 1.5.

class pygments.lexers.data.YamlLexer
  Short names

    yaml

  Filenames

    *.yaml, *.yml

  MIME types

    text/x-yaml

  Lexer for YAML, a human-friendly data serialization language.

  New in version 0.11.

## Lexers for Devicetree language

class pygments.lexers.devicetree.DevicetreeLexer
  Short names

    devicetree, dts

  Filenames

    *.dts, *.dtsi

  MIME types

    text/x-c

  Lexer for Devicetree files.

  New in version 2.7.

## Lexers for diff/patch formats

class pygments.lexers.diff.DarcsPatchLexer
  Short names

    dpatch

  Filenames

    *.dpatch, *.darcspatch

  MIME types

    None

  DarcsPatchLexer is a lexer for the various versions of the darcs patch format. Examples of this format are derived by commands such as `darcs annotate --patch` and `darcs send`.

  New in version 0.10.

class pygments.lexers.diff.DiffLexer
  Short names

    diff, udiff

  Filenames

    *.diff, *.patch

  MIME types

    text/x-diff, text/x-patch

  Lexer for unified or context-style diffs or patches.

class pygments.lexers.diff.WDiffLexer
  Short names

    wdiff

  Filenames

    *.wdiff

  MIME types

    None

  A wdiff lexer.

  Note that:

  - It only works with normal output (without options like `-l`).

  - If the target files contain “[-”, “-]”, “{+”, or “+}”, especially they are unbalanced, the lexer will get confused.

  New in version 2.2.

## Lexers for .net languages

class pygments.lexers.dotnet.BooLexer
  Short names

    boo

  Filenames

    *.boo

  MIME types

    text/x-boo

  For Boo source code.

class pygments.lexers.dotnet.CSharpAspxLexer
  Short names

    aspx-cs

  Filenames

    *.aspx, *.asax, *.ascx, *.ashx, *.asmx, *.axd

  MIME types

    None

  Lexer for highlighting C# within ASP.NET pages.

class pygments.lexers.dotnet.CSharpLexer
  Short names

    csharp, c#, cs

  Filenames

    *.cs

  MIME types

    text/x-csharp

  For C# source code.

  Additional options accepted:

  unicodelevel

    Determines which Unicode characters this lexer allows for identifiers. The possible values are:

    - `none` – only the ASCII letters and numbers are allowed. This is the fastest selection.

    - `basic` – all Unicode characters from the specification except category `Lo` are allowed.

    - `full` – all Unicode characters as specified in the C# specs are allowed. Note that this means a considerable slowdown since the `Lo` category has more than 40,000 characters in it!

    The default value is `basic`.

    New in version 0.8.

class pygments.lexers.dotnet.FSharpLexer
  Short names

    fsharp, f#

  Filenames

    *.fs, *.fsi

  MIME types

    text/x-fsharp

  For the F# language (version 3.0).

  New in version 1.5.

class pygments.lexers.dotnet.NemerleLexer
  Short names

    nemerle

  Filenames

    *.n

  MIME types

    text/x-nemerle

  For Nemerle source code.

  Additional options accepted:

  unicodelevel

    Determines which Unicode characters this lexer allows for identifiers. The possible values are:

    - `none` – only the ASCII letters and numbers are allowed. This is the fastest selection.

    - `basic` – all Unicode characters from the specification except category `Lo` are allowed.

    - `full` – all Unicode characters as specified in the C# specs are allowed. Note that this means a considerable slowdown since the `Lo` category has more than 40,000 characters in it!

    The default value is `basic`.

  New in version 1.5.

class pygments.lexers.dotnet.VbNetAspxLexer
  Short names

    aspx-vb

  Filenames

    *.aspx, *.asax, *.ascx, *.ashx, *.asmx, *.axd

  MIME types

    None

  Lexer for highlighting Visual Basic.net within ASP.NET pages.

class pygments.lexers.dotnet.VbNetLexer
  Short names

    vb.net, vbnet

  Filenames

    *.vb, *.bas

  MIME types

    text/x-vbnet, text/x-vba

  For Visual Basic.NET source code.

## Lexers for various domain-specific languages

class pygments.lexers.dsls.AlloyLexer
  Short names

    alloy

  Filenames

    *.als

  MIME types

    text/x-alloy

  For Alloy source code.

  New in version 2.0.

class pygments.lexers.dsls.CrmshLexer
  Short names

    crmsh, pcmk

  Filenames

    *.crmsh, *.pcmk

  MIME types

    None

  Lexer for crmsh configuration files for Pacemaker clusters.

  New in version 2.1.

class pygments.lexers.dsls.FlatlineLexer
  Short names

    flatline

  Filenames

    None

  MIME types

    text/x-flatline

  Lexer for Flatline expressions.

  New in version 2.2.

class pygments.lexers.dsls.MscgenLexer
  Short names

    mscgen, msc

  Filenames

    *.msc

  MIME types

    None

  For Mscgen files.

  New in version 1.6.

class pygments.lexers.dsls.PanLexer
  Short names

    pan

  Filenames

    *.pan

  MIME types

    None

  Lexer for pan source files.

  Based on tcsh lexer.

  New in version 2.0.

class pygments.lexers.dsls.ProtoBufLexer
  Short names

    protobuf, proto

  Filenames

    *.proto

  MIME types

    None

  Lexer for Protocol Buffer definition files.

  New in version 1.4.

class pygments.lexers.dsls.PuppetLexer
  Short names

    puppet

  Filenames

    *.pp

  MIME types

    None

  For Puppet configuration DSL.

  New in version 1.6.

class pygments.lexers.dsls.RslLexer
  Short names

    rsl

  Filenames

    *.rsl

  MIME types

    text/rsl

  RSL is the formal specification language used in RAISE (Rigorous Approach to Industrial Software Engineering) method.

  New in version 2.0.

class pygments.lexers.dsls.SnowballLexer
  Short names

    snowball

  Filenames

    *.sbl

  MIME types

    None

  Lexer for Snowball source code.

  New in version 2.2.

class pygments.lexers.dsls.ThriftLexer
  Short names

    thrift

  Filenames

    *.thrift

  MIME types

    application/x-thrift

  For Thrift interface definitions.

  New in version 2.1.

class pygments.lexers.dsls.VGLLexer
  Short names

    vgl

  Filenames

    *.rpf

  MIME types

    None

  For SampleManager VGL source code.

  New in version 1.6.

class pygments.lexers.dsls.ZeekLexer
  Short names

    zeek, bro

  Filenames

    *.zeek, *.bro

  MIME types

    None

  For Zeek scripts.

  New in version 2.5.

## Lexers for the Dylan language

class pygments.lexers.dylan.DylanConsoleLexer
  Short names

    dylan-console, dylan-repl

  Filenames

    *.dylan-console

  MIME types

    text/x-dylan-console

  For Dylan interactive console output like:

      ? let a = 1;
      => 1
      ? a
      => 1

  This is based on a copy of the RubyConsoleLexer.

  New in version 1.6.

class pygments.lexers.dylan.DylanLexer
  Short names

    dylan

  Filenames

    *.dylan, *.dyl, *.intr

  MIME types

    text/x-dylan

  For the Dylan language.

  New in version 0.7.

class pygments.lexers.dylan.DylanLidLexer
  Short names

    dylan-lid, lid

  Filenames

    *.lid, *.hdp

  MIME types

    text/x-dylan-lid

  For Dylan LID (Library Interchange Definition) files.

  New in version 1.6.

## Lexers for the ECL language

class pygments.lexers.ecl.ECLLexer
  Short names

    ecl

  Filenames

    *.ecl

  MIME types

    application/x-ecl

  Lexer for the declarative big-data ECL language.

  New in version 1.5.

## Lexer for the Eiffel language

class pygments.lexers.eiffel.EiffelLexer
  Short names

    eiffel

  Filenames

    *.e

  MIME types

    text/x-eiffel

  For Eiffel source code.

  New in version 2.0.

## Lexer for the Elm programming language

class pygments.lexers.elm.ElmLexer
  Short names

    elm

  Filenames

    *.elm

  MIME types

    text/x-elm

  For Elm source code.

  New in version 2.1.

## Lexer for the Elpi programming language

class pygments.lexers.elpi.ElpiLexer
  Short names

    elpi

  Filenames

    *.elpi

  MIME types

    text/x-elpi

  Lexer for the Elpi programming language.

## Lexer for the raw E-mail

class pygments.lexers.email.EmailLexer
  Short names

    email, eml

  Filenames

    *.eml

  MIME types

    message/rfc822

  Lexer for raw E-mail.

  Additional options accepted:

  highlight-X-header

    Highlight the fields of `X-` user-defined email header. (default: `False`).

  New in version 2.5.

## Lexers for Erlang

class pygments.lexers.erlang.ElixirConsoleLexer
  Short names

    iex

  Filenames

    None

  MIME types

    text/x-elixir-shellsession

  For Elixir interactive console (iex) output like:

      iex> [head | tail] = [1,2,3]
      [1,2,3]
      iex> head
      1
      iex> tail
      [2,3]
      iex> [head | tail]
      [1,2,3]
      iex> length [head | tail]
      3

  New in version 1.5.

class pygments.lexers.erlang.ElixirLexer
  Short names

    elixir, ex, exs

  Filenames

    *.ex, *.eex, *.exs, *.leex

  MIME types

    text/x-elixir

  For the Elixir language.

  New in version 1.5.

class pygments.lexers.erlang.ErlangLexer
  Short names

    erlang

  Filenames

    *.erl, *.hrl, *.es, *.escript

  MIME types

    text/x-erlang

  For the Erlang functional programming language.

  Blame Jeremy Thurgood (http://jerith.za.net/).

  New in version 0.9.

class pygments.lexers.erlang.ErlangShellLexer
  Short names

    erl

  Filenames

    *.erl-sh

  MIME types

    text/x-erl-shellsession

  Shell sessions in erl (for Erlang code).

  New in version 1.1.

## Lexers for esoteric languages

class pygments.lexers.esoteric.AheuiLexer
  Short names

    aheui

  Filenames

    *.aheui

  MIME types

    None

  Aheui Lexer.

  Aheui is esoteric language based on Korean alphabets.

class pygments.lexers.esoteric.BefungeLexer
  Short names

    befunge

  Filenames

    *.befunge

  MIME types

    application/x-befunge

  Lexer for the esoteric Befunge language.

  New in version 0.7.

class pygments.lexers.esoteric.BrainfuckLexer
  Short names

    brainfuck, bf

  Filenames

    *.bf, *.b

  MIME types

    application/x-brainfuck

  Lexer for the esoteric BrainFuck language.

class pygments.lexers.esoteric.CAmkESLexer
  Short names

    camkes, idl4

  Filenames

    *.camkes, *.idl4

  MIME types

    None

  Basic lexer for the input language for the CAmkES component platform.

  New in version 2.1.

class pygments.lexers.esoteric.CapDLLexer
  Short names

    capdl

  Filenames

    *.cdl

  MIME types

    None

  Basic lexer for CapDL.

  The source of the primary tool that reads such specifications is available at https://github.com/seL4/capdl/tree/master/capDL-tool. Note that this lexer only supports a subset of the grammar. For example, identifiers can shadow type names, but these instances are currently incorrectly highlighted as types. Supporting this would need a stateful lexer that is considered unnecessarily complex for now.

  New in version 2.2.

class pygments.lexers.esoteric.RedcodeLexer
  Short names

    redcode

  Filenames

    *.cw

  MIME types

    None

  A simple Redcode lexer based on ICWS’94. Contributed by Adam Blinkinsop <blinks@acm.org>.

  New in version 0.8.

## Pygments lexers for Ezhil language

class pygments.lexers.ezhil.EzhilLexer
  Short names

    ezhil

  Filenames

    *.n

  MIME types

    text/x-ezhil

  Lexer for Ezhil, a Tamil script-based programming language

  New in version 2.1.

## Lexers for the Factor language

class pygments.lexers.factor.FactorLexer
  Short names

    factor

  Filenames

    *.factor

  MIME types

    text/x-factor

  Lexer for the Factor language.

  New in version 1.4.

## Lexer for the Fantom language

class pygments.lexers.fantom.FantomLexer
  Short names

    fan

  Filenames

    *.fan

  MIME types

    application/x-fantom

  For Fantom source code.

  New in version 1.5.

## Lexer for the Felix language

class pygments.lexers.felix.FelixLexer
  Short names

    felix, flx

  Filenames

    *.flx, *.flxh

  MIME types

    text/x-felix

  For Felix source code.

  New in version 1.2.

## Lexer for FloScript

class pygments.lexers.floscript.FloScriptLexer
  Short names

    floscript, flo

  Filenames

    *.flo

  MIME types

    None

  For FloScript configuration language source code.

  New in version 2.4.

## Lexer for the Forth language

class pygments.lexers.forth.ForthLexer
  Short names

    forth

  Filenames

    *.frt, *.fs

  MIME types

    application/x-forth

  Lexer for Forth files.

  New in version 2.2.

## Lexers for Fortran languages

class pygments.lexers.fortran.FortranFixedLexer
  Short names

    fortranfixed

  Filenames

    *.f, *.F

  MIME types

    None

  Lexer for fixed format Fortran.

  New in version 2.1.

class pygments.lexers.fortran.FortranLexer
  Short names

    fortran, f90

  Filenames

    *.f03, *.f90, *.F03, *.F90

  MIME types

    text/x-fortran

  Lexer for FORTRAN 90 code.

  New in version 0.10.

## Simple lexer for Microsoft Visual FoxPro source code

class pygments.lexers.foxpro.FoxProLexer
  Short names

    foxpro, vfp, clipper, xbase

  Filenames

    *.PRG, *.prg

  MIME types

    None

  Lexer for Microsoft Visual FoxPro language.

  FoxPro syntax allows to shorten all keywords and function names to 4 characters. Shortened forms are not recognized by this lexer.

  New in version 1.6.

## Lexer for FreeFem++ language

class pygments.lexers.freefem.FreeFemLexer
  Short names

    freefem

  Filenames

    *.edp

  MIME types

    text/x-freefem

  For FreeFem++ source.

  This is an extension of the CppLexer, as the FreeFem Language is a superset of C++.

  New in version 2.4.

## Lexer for the Futhark language

class pygments.lexers.futhark.FutharkLexer
  Short names

    futhark

  Filenames

    *.fut

  MIME types

    text/x-futhark

  A Futhark lexer

  New in version 2.8.

## Lexers for the G Code Language

class pygments.lexers.gcodelexer.GcodeLexer
  Short names

    gcode

  Filenames

    *.gcode

  MIME types

    None

  For gcode source code.

  New in version 2.9.

## Lexer for GDScript

class pygments.lexers.gdscript.GDScriptLexer
  Short names

    gdscript, gd

  Filenames

    *.gd

  MIME types

    text/x-gdscript, application/x-gdscript

  For GDScript source code.

## Lexers for the Google Go language

class pygments.lexers.go.GoLexer
  Short names

    go, golang

  Filenames

    *.go

  MIME types

    text/x-gosrc

  For Go source.

  New in version 1.2.

## Lexers for grammar notations like BNF

class pygments.lexers.grammar_notation.AbnfLexer
  Short names

    abnf

  Filenames

    *.abnf

  MIME types

    text/x-abnf

  Lexer for IETF 7405 ABNF (Updates 5234) grammars.

  New in version 2.1.

class pygments.lexers.grammar_notation.BnfLexer
  Short names

    bnf

  Filenames

    *.bnf

  MIME types

    text/x-bnf

  This lexer is for grammar notations which are similar to original BNF.

  In order to maximize a number of targets of this lexer, let’s decide some designs:

  - We don’t distinguish Terminal Symbol.

  - We do assume that NonTerminal Symbol are always enclosed with arrow brackets.

  - We do assume that NonTerminal Symbol may include any printable characters except arrow brackets and ASCII 0x20. This assumption is for RBNF.

  - We do assume that target notation doesn’t support comment.

  - We don’t distinguish any operators and punctuation except ::=.

  Though these desision making might cause too minimal highlighting and you might be disappointed, but it is reasonable for us.

  New in version 2.1.

class pygments.lexers.grammar_notation.JsgfLexer
  Short names

    jsgf

  Filenames

    *.jsgf

  MIME types

    application/jsgf, application/x-jsgf, text/jsgf

  For JSpeech Grammar Format grammars.

  New in version 2.2.

class pygments.lexers.grammar_notation.PegLexer
  Short names

    peg

  Filenames

    *.peg

  MIME types

    text/x-peg

  This lexer is for Parsing Expression Grammars (PEG).

  Various implementations of PEG have made different decisions regarding the syntax, so let’s try to be accommodating:

  - <-, ←, :, and = are all accepted as rule operators.

  - Both | and / are choice operators.

  - ^, ↑, and ~ are cut operators.

  - A single a-z character immediately before a string, or multiple a-z characters following a string, are part of the string (e.g., r”…” or “…”ilmsuxa).

  New in version 2.6.

## Lexers for graph query languages

class pygments.lexers.graph.CypherLexer
  Short names

    cypher

  Filenames

    *.cyp, *.cypher

  MIME types

    None

  For Cypher Query Language

  For the Cypher version in Neo4j 3.3

  New in version 2.0.

## Lexers for computer graphics and plotting related languages

class pygments.lexers.graphics.AsymptoteLexer
  Short names

    asymptote, asy

  Filenames

    *.asy

  MIME types

    text/x-asymptote

  For Asymptote source code.

  New in version 1.2.

class pygments.lexers.graphics.GLShaderLexer
  Short names

    glsl

  Filenames

    *.vert, *.frag, *.geo

  MIME types

    text/x-glslsrc

  GLSL (OpenGL Shader) lexer.

  New in version 1.1.

class pygments.lexers.graphics.GnuplotLexer
  Short names

    gnuplot

  Filenames

    *.plot, *.plt

  MIME types

    text/x-gnuplot

  For Gnuplot plotting scripts.

  New in version 0.11.

class pygments.lexers.graphics.HLSLShaderLexer
  Short names

    hlsl

  Filenames

    *.hlsl, *.hlsli

  MIME types

    text/x-hlsl

  HLSL (Microsoft Direct3D Shader) lexer.

  New in version 2.3.

class pygments.lexers.graphics.PostScriptLexer
  Short names

    postscript, postscr

  Filenames

    *.ps, *.eps

  MIME types

    application/postscript

  Lexer for PostScript files.

  The PostScript Language Reference published by Adobe at <http://partners.adobe.com/public/developer/en/ps/PLRM.pdf> is the authority for this.

  New in version 1.4.

class pygments.lexers.graphics.PovrayLexer
  Short names

    pov

  Filenames

    *.pov, *.inc

  MIME types

    text/x-povray

  For Persistence of Vision Raytracer files.

  New in version 0.11.

## Lexer for the DOT language (graphviz)

class pygments.lexers.graphviz.GraphvizLexer
  Short names

    graphviz, dot

  Filenames

    *.gv, *.dot

  MIME types

    text/x-graphviz, text/vnd.graphviz

  For graphviz DOT graph description language.

  New in version 2.8.

## Lexers for TigerGraph GSQL graph query language

class pygments.lexers.gsql.GSQLLexer
  Short names

    gsql

  Filenames

    *.gsql

  MIME types

    None

  For GSQL queries (version 3.x). .. versionadded:: 2.10

## Lexers for Haskell and related languages

class pygments.lexers.haskell.AgdaLexer
  Short names

    agda

  Filenames

    *.agda

  MIME types

    text/x-agda

  For the Agda dependently typed functional programming language and proof assistant.

  New in version 2.0.

class pygments.lexers.haskell.CryptolLexer
  Short names

    cryptol, cry

  Filenames

    *.cry

  MIME types

    text/x-cryptol

  FIXME: A Cryptol2 lexer based on the lexemes defined in the Haskell 98 Report.

  New in version 2.0.

class pygments.lexers.haskell.HaskellLexer
  Short names

    haskell, hs

  Filenames

    *.hs

  MIME types

    text/x-haskell

  A Haskell lexer based on the lexemes defined in the Haskell 98 Report.

  New in version 0.8.

class pygments.lexers.haskell.HspecLexer
  Short names

    hspec

  Filenames

    None

  MIME types

    None

  A Haskell lexer with support for Hspec constructs.

  New in version 2.4.0.

class pygments.lexers.haskell.IdrisLexer
  Short names

    idris, idr

  Filenames

    *.idr

  MIME types

    text/x-idris

  A lexer for the dependently typed programming language Idris.

  Based on the Haskell and Agda Lexer.

  New in version 2.0.

class pygments.lexers.haskell.KokaLexer
  Short names

    koka

  Filenames

    *.kk, *.kki

  MIME types

    text/x-koka

  Lexer for the Koka language.

  New in version 1.6.

class pygments.lexers.haskell.LiterateAgdaLexer
  Short names

    literate-agda, lagda

  Filenames

    *.lagda

  MIME types

    text/x-literate-agda

  For Literate Agda source.

  Additional options accepted:

  litstyle

    If given, must be `"bird"` or `"latex"`. If not given, the style is autodetected: if the first non-whitespace character in the source is a backslash or percent character, LaTeX is assumed, else Bird.

  New in version 2.0.

class pygments.lexers.haskell.LiterateCryptolLexer
  Short names

    literate-cryptol, lcryptol, lcry

  Filenames

    *.lcry

  MIME types

    text/x-literate-cryptol

  For Literate Cryptol (Bird-style or LaTeX) source.

  Additional options accepted:

  litstyle

    If given, must be `"bird"` or `"latex"`. If not given, the style is autodetected: if the first non-whitespace character in the source is a backslash or percent character, LaTeX is assumed, else Bird.

  New in version 2.0.

class pygments.lexers.haskell.LiterateHaskellLexer
  Short names

    literate-haskell, lhaskell, lhs

  Filenames

    *.lhs

  MIME types

    text/x-literate-haskell

  For Literate Haskell (Bird-style or LaTeX) source.

  Additional options accepted:

  litstyle

    If given, must be `"bird"` or `"latex"`. If not given, the style is autodetected: if the first non-whitespace character in the source is a backslash or percent character, LaTeX is assumed, else Bird.

  New in version 0.9.

class pygments.lexers.haskell.LiterateIdrisLexer
  Short names

    literate-idris, lidris, lidr

  Filenames

    *.lidr

  MIME types

    text/x-literate-idris

  For Literate Idris (Bird-style or LaTeX) source.

  Additional options accepted:

  litstyle

    If given, must be `"bird"` or `"latex"`. If not given, the style is autodetected: if the first non-whitespace character in the source is a backslash or percent character, LaTeX is assumed, else Bird.

  New in version 2.0.

## Lexers for Haxe and related stuff

class pygments.lexers.haxe.HaxeLexer
  Short names

    haxe, hxsl, hx

  Filenames

    *.hx, *.hxsl

  MIME types

    text/haxe, text/x-haxe, text/x-hx

  For Haxe source code (http://haxe.org/).

  New in version 1.3.

class pygments.lexers.haxe.HxmlLexer
  Short names

    haxeml, hxml

  Filenames

    *.hxml

  MIME types

    None

  Lexer for haXe build files.

  New in version 1.6.

## Lexers for hardware descriptor languages

class pygments.lexers.hdl.SystemVerilogLexer
  Short names

    systemverilog, sv

  Filenames

    *.sv, *.svh

  MIME types

    text/x-systemverilog

  Extends verilog lexer to recognise all SystemVerilog keywords from IEEE 1800-2009 standard.

  New in version 1.5.

class pygments.lexers.hdl.VerilogLexer
  Short names

    verilog, v

  Filenames

    *.v

  MIME types

    text/x-verilog

  For verilog source code with preprocessor directives.

  New in version 1.4.

class pygments.lexers.hdl.VhdlLexer
  Short names

    vhdl

  Filenames

    *.vhdl, *.vhd

  MIME types

    text/x-vhdl

  For VHDL source code.

  New in version 1.5.

## Lexers for hexadecimal dumps

class pygments.lexers.hexdump.HexdumpLexer
  Short names

    hexdump

  Filenames

    None

  MIME types

    None

  For typical hex dump output formats by the UNIX and GNU/Linux tools `hexdump`, `hd`, `hexcat`, `od` and `xxd`, and the DOS tool `DEBUG`. For example:

      00000000  7f 45 4c 46 02 01 01 00  00 00 00 00 00 00 00 00  |.ELF............|
      00000010  02 00 3e 00 01 00 00 00  c5 48 40 00 00 00 00 00  |..>......H@.....|

  The specific supported formats are the outputs of:

  - `hexdump FILE`

  - `hexdump -C FILE` – the canonical format used in the example.

  - `hd FILE` – same as `hexdump -C FILE`.

  - `hexcat FILE`

  - `od -t x1z FILE`

  - `xxd FILE`

  - `DEBUG.EXE FILE.COM` and entering `d` to the prompt.

  New in version 2.1.

## Lexers for HTML, XML and related markup

class pygments.lexers.html.DtdLexer
  Short names

    dtd

  Filenames

    *.dtd

  MIME types

    application/xml-dtd

  A lexer for DTDs (Document Type Definitions).

  New in version 1.5.

class pygments.lexers.html.HamlLexer
  Short names

    haml

  Filenames

    *.haml

  MIME types

    text/x-haml

  For Haml markup.

  New in version 1.3.

class pygments.lexers.html.HtmlLexer
  Short names

    html

  Filenames

    *.html, *.htm, *.xhtml, *.xslt

  MIME types

    text/html, application/xhtml+xml

  For HTML 4 and XHTML 1 markup. Nested JavaScript and CSS is highlighted by the appropriate lexer.

class pygments.lexers.html.PugLexer
  Short names

    pug, jade

  Filenames

    *.pug, *.jade

  MIME types

    text/x-pug, text/x-jade

  For Pug markup. Pug is a variant of Scaml, see: http://scalate.fusesource.org/documentation/scaml-reference.html

  New in version 1.4.

class pygments.lexers.html.ScamlLexer
  Short names

    scaml

  Filenames

    *.scaml

  MIME types

    text/x-scaml

  For Scaml markup. Scaml is Haml for Scala.

  New in version 1.4.

class pygments.lexers.html.XmlLexer
  Short names

    xml

  Filenames

    *.xml, *.xsl, *.rss, *.xslt, *.xsd, *.wsdl, *.wsf

  MIME types

    text/xml, application/xml, image/svg+xml, application/rss+xml, application/atom+xml

  Generic lexer for XML (eXtensible Markup Language).

class pygments.lexers.html.XsltLexer
  Short names

    xslt

  Filenames

    *.xsl, *.xslt, *.xpl

  MIME types

    application/xsl+xml, application/xslt+xml

  A lexer for XSLT.

  New in version 0.10.

## Lexers for IDL

class pygments.lexers.idl.IDLLexer
  Short names

    idl

  Filenames

    *.pro

  MIME types

    text/idl

  Pygments Lexer for IDL (Interactive Data Language).

  New in version 1.6.

## Lexers for Igor Pro

class pygments.lexers.igor.IgorLexer
  Short names

    igor, igorpro

  Filenames

    *.ipf

  MIME types

    text/ipf

  Pygments Lexer for Igor Pro procedure files (.ipf). See http://www.wavemetrics.com/ and http://www.igorexchange.com/.

  New in version 2.0.

## Lexers for Inferno os and all the related stuff

class pygments.lexers.inferno.LimboLexer
  Short names

    limbo

  Filenames

    *.b

  MIME types

    text/limbo

  Lexer for Limbo programming language

  TODO:

    - maybe implement better var declaration highlighting

    - some simple syntax error highlighting

  New in version 2.0.

## Lexers for installer/packager DSLs and formats

class pygments.lexers.installers.DebianControlLexer
  Short names

    debcontrol, control

  Filenames

    control

  MIME types

    None

  Lexer for Debian `control` files and `apt-cache show <pkg>` outputs.

  Specification of control` files is available at https://www.debian.org/doc/debian-policy/ch-controlfields.html

  New in version 0.9.

class pygments.lexers.installers.NSISLexer
  Short names

    nsis, nsi, nsh

  Filenames

    *.nsi, *.nsh

  MIME types

    text/x-nsis

  For NSIS scripts.

  New in version 1.6.

class pygments.lexers.installers.RPMSpecLexer
  Short names

    spec

  Filenames

    *.spec

  MIME types

    text/x-rpm-spec

  For RPM `.spec` files.

  New in version 1.6.

class pygments.lexers.installers.SourcesListLexer
  Short names

    debsources, sourceslist, sources.list

  Filenames

    sources.list

  MIME types

    None

  Lexer that highlights debian sources.list files.

  New in version 0.7.

## Lexers for interactive fiction languages

class pygments.lexers.int_fiction.Inform6Lexer
  Short names

    inform6, i6

  Filenames

    *.inf

  MIME types

    None

  For Inform 6 source code.

  New in version 2.0.

class pygments.lexers.int_fiction.Inform6TemplateLexer
  Short names

    i6t

  Filenames

    *.i6t

  MIME types

    None

  For Inform 6 template code.

  New in version 2.0.

class pygments.lexers.int_fiction.Inform7Lexer
  Short names

    inform7, i7

  Filenames

    *.ni, *.i7x

  MIME types

    None

  For Inform 7 source code.

  New in version 2.0.

class pygments.lexers.int_fiction.Tads3Lexer
  Short names

    tads3

  Filenames

    *.t

  MIME types

    None

  For TADS 3 source code.

## Lexers for the Io language

class pygments.lexers.iolang.IoLexer
  Short names

    io

  Filenames

    *.io

  MIME types

    text/x-iosrc

  For Io (a small, prototype-based programming language) source.

  New in version 0.10.

## Lexer for the J programming language

class pygments.lexers.j.JLexer
  Short names

    j

  Filenames

    *.ijs

  MIME types

    text/x-j

  For J source code.

  New in version 2.1.

## Lexers for JavaScript and related languages

class pygments.lexers.javascript.CoffeeScriptLexer
  Short names

    coffeescript, coffee-script, coffee

  Filenames

    *.coffee

  MIME types

    text/coffeescript

  For CoffeeScript source code.

  New in version 1.3.

class pygments.lexers.javascript.DartLexer
  Short names

    dart

  Filenames

    *.dart

  MIME types

    text/x-dart

  For Dart source code.

  New in version 1.5.

class pygments.lexers.javascript.EarlGreyLexer
  Short names

    earl-grey, earlgrey, eg

  Filenames

    *.eg

  MIME types

    text/x-earl-grey

  For Earl-Grey source code.

class pygments.lexers.javascript.JavascriptLexer
  Short names

    javascript, js

  Filenames

    *.js, *.jsm, *.mjs, *.cjs

  MIME types

    application/javascript, application/x-javascript, text/x-javascript, text/javascript

  For JavaScript source code.

class pygments.lexers.javascript.JuttleLexer
  Short names

    juttle

  Filenames

    *.juttle

  MIME types

    application/juttle, application/x-juttle, text/x-juttle, text/juttle

  For Juttle source code.

  New in version 2.2.

class pygments.lexers.javascript.KalLexer
  Short names

    kal

  Filenames

    *.kal

  MIME types

    text/kal, application/kal

  For Kal source code.

  New in version 2.0.

class pygments.lexers.javascript.LassoLexer
  Short names

    lasso, lassoscript

  Filenames

    *.lasso, *.lasso[89]

  MIME types

    text/x-lasso

  For Lasso source code, covering both Lasso 9 syntax and LassoScript for Lasso 8.6 and earlier. For Lasso embedded in HTML, use the LassoHtmlLexer.

  Additional options accepted:

  builtinshighlighting

    If given and `True`, highlight builtin types, traits, methods, and members (default: `True`).

  requiredelimiters

    If given and `True`, only highlight code between delimiters as Lasso (default: `False`).

  New in version 1.6.

class pygments.lexers.javascript.LiveScriptLexer
  Short names

    livescript, live-script

  Filenames

    *.ls

  MIME types

    text/livescript

  For LiveScript source code.

  New in version 1.6.

class pygments.lexers.javascript.MaskLexer
  Short names

    mask

  Filenames

    *.mask

  MIME types

    text/x-mask

  For Mask markup.

  New in version 2.0.

class pygments.lexers.javascript.NodeConsoleLexer
  Short names

    nodejsrepl

  Filenames

    None

  MIME types

    text/x-nodejsrepl

  For parsing within an interactive Node.js REPL, such as:

      > let a = 3
      undefined
      > a
      3
      > let b = '4'
      undefined
      > b
      '4'
      > b == a
      false

class pygments.lexers.javascript.ObjectiveJLexer
  Short names

    objective-j, objectivej, obj-j, objj

  Filenames

    *.j

  MIME types

    text/x-objective-j

  For Objective-J source code with preprocessor directives.

  New in version 1.3.

class pygments.lexers.javascript.TypeScriptLexer
  Short names

    typescript, ts

  Filenames

    *.ts

  MIME types

    application/x-typescript, text/x-typescript

  For TypeScript source code.

  New in version 1.6.

## Lexers for the JSLT language

class pygments.lexers.jslt.JSLTLexer
  Short names

    jslt

  Filenames

    *.jslt

  MIME types

    text/x-jslt

  For JSLT source.

  New in version 2.10.

## Lexers for the Julia language

class pygments.lexers.julia.JuliaConsoleLexer
  Short names

    jlcon, julia-repl

  Filenames

    None

  MIME types

    None

  For Julia console sessions. Modeled after MatlabSessionLexer.

  New in version 1.6.

class pygments.lexers.julia.JuliaLexer
  Short names

    julia, jl

  Filenames

    *.jl

  MIME types

    text/x-julia, application/x-julia

  For Julia source code.

  New in version 1.6.

## Pygments lexers for JVM languages

class pygments.lexers.jvm.AspectJLexer
  Short names

    aspectj

  Filenames

    *.aj

  MIME types

    text/x-aspectj

  For AspectJ source code.

  New in version 1.6.

class pygments.lexers.jvm.CeylonLexer
  Short names

    ceylon

  Filenames

    *.ceylon

  MIME types

    text/x-ceylon

  For Ceylon source code.

  New in version 1.6.

class pygments.lexers.jvm.ClojureLexer
  Short names

    clojure, clj

  Filenames

    *.clj

  MIME types

    text/x-clojure, application/x-clojure

  Lexer for Clojure source code.

  New in version 0.11.

class pygments.lexers.jvm.ClojureScriptLexer
  Short names

    clojurescript, cljs

  Filenames

    *.cljs

  MIME types

    text/x-clojurescript, application/x-clojurescript

  Lexer for ClojureScript source code.

  New in version 2.0.

class pygments.lexers.jvm.GoloLexer
  Short names

    golo

  Filenames

    *.golo

  MIME types

    None

  For Golo source code.

  New in version 2.0.

class pygments.lexers.jvm.GosuLexer
  Short names

    gosu

  Filenames

    *.gs, *.gsx, *.gsp, *.vark

  MIME types

    text/x-gosu

  For Gosu source code.

  New in version 1.5.

class pygments.lexers.jvm.GosuTemplateLexer
  Short names

    gst

  Filenames

    *.gst

  MIME types

    text/x-gosu-template

  For Gosu templates.

  New in version 1.5.

class pygments.lexers.jvm.GroovyLexer
  Short names

    groovy

  Filenames

    *.groovy, *.gradle

  MIME types

    text/x-groovy

  For Groovy source code.

  New in version 1.5.

class pygments.lexers.jvm.IokeLexer
  Short names

    ioke, ik

  Filenames

    *.ik

  MIME types

    text/x-iokesrc

  For Ioke (a strongly typed, dynamic, prototype based programming language) source.

  New in version 1.4.

class pygments.lexers.jvm.JasminLexer
  Short names

    jasmin, jasminxt

  Filenames

    *.j

  MIME types

    None

  For Jasmin assembly code.

  New in version 2.0.

class pygments.lexers.jvm.JavaLexer
  Short names

    java

  Filenames

    *.java

  MIME types

    text/x-java

  For Java source code.

class pygments.lexers.jvm.KotlinLexer
  Short names

    kotlin

  Filenames

    *.kt, *.kts

  MIME types

    text/x-kotlin

  For Kotlin source code.

  New in version 1.5.

class pygments.lexers.jvm.PigLexer
  Short names

    pig

  Filenames

    *.pig

  MIME types

    text/x-pig

  For Pig Latin source code.

  New in version 2.0.

class pygments.lexers.jvm.SarlLexer
  Short names

    sarl

  Filenames

    *.sarl

  MIME types

    text/x-sarl

  For SARL source code.

  New in version 2.4.

class pygments.lexers.jvm.ScalaLexer
  Short names

    scala

  Filenames

    *.scala

  MIME types

    text/x-scala

  For Scala source code.

class pygments.lexers.jvm.XtendLexer
  Short names

    xtend

  Filenames

    *.xtend

  MIME types

    text/x-xtend

  For Xtend source code.

  New in version 1.6.

## Lexers for the Kuin language

class pygments.lexers.kuin.KuinLexer
  Short names

    kuin

  Filenames

    *.kn

  MIME types

    None

  For Kuin source code

  New in version 2.9.

## Lexer for LilyPond

class pygments.lexers.lilypond.LilyPondLexer
  Short names

    lilypond

  Filenames

    *.ly

  MIME types

    None

  Lexer for input to LilyPond, a text-based music typesetter.

  Important

  This lexer is meant to be used in conjunction with the `lilypond` style.

  New in version 2.11.

## Lexers for Lispy languages

class pygments.lexers.lisp.CPSALexer
  Short names

    cpsa

  Filenames

    *.cpsa

  MIME types

    None

  A CPSA lexer based on the CPSA language as of version 2.2.12

  New in version 2.1.

class pygments.lexers.lisp.CommonLispLexer
  Short names

    common-lisp, cl, lisp

  Filenames

    *.cl, *.lisp

  MIME types

    text/x-common-lisp

  A Common Lisp lexer.

  New in version 0.9.

class pygments.lexers.lisp.EmacsLispLexer
  Short names

    emacs-lisp, elisp, emacs

  Filenames

    *.el

  MIME types

    text/x-elisp, application/x-elisp

  An ELisp lexer, parsing a stream and outputting the tokens needed to highlight elisp code.

  New in version 2.1.

class pygments.lexers.lisp.FennelLexer
  Short names

    fennel, fnl

  Filenames

    *.fnl

  MIME types

    None

  A lexer for the Fennel programming language.

  Fennel compiles to Lua, so all the Lua builtins are recognized as well as the special forms that are particular to the Fennel compiler.

  New in version 2.3.

class pygments.lexers.lisp.HyLexer
  Short names

    hylang

  Filenames

    *.hy

  MIME types

    text/x-hy, application/x-hy

  Lexer for Hy source code.

  New in version 2.0.

class pygments.lexers.lisp.NewLispLexer
  Short names

    newlisp

  Filenames

    *.lsp, *.nl, *.kif

  MIME types

    text/x-newlisp, application/x-newlisp

  For newLISP. source code (version 10.3.0).

  New in version 1.5.

class pygments.lexers.lisp.RacketLexer
  Short names

    racket, rkt

  Filenames

    *.rkt, *.rktd, *.rktl

  MIME types

    text/x-racket, application/x-racket

  Lexer for Racket source code (formerly known as PLT Scheme).

  New in version 1.6.

class pygments.lexers.lisp.SchemeLexer
  Short names

    scheme, scm

  Filenames

    *.scm, *.ss

  MIME types

    text/x-scheme, application/x-scheme

  A Scheme lexer, parsing a stream and outputting the tokens needed to highlight scheme code. This lexer could be most probably easily subclassed to parse other LISP-Dialects like Common Lisp, Emacs Lisp or AutoLisp.

  This parser is checked with pastes from the LISP pastebin at http://paste.lisp.org/ to cover as much syntax as possible.

  It supports the full Scheme syntax as defined in R5RS.

  New in version 0.6.

class pygments.lexers.lisp.ShenLexer
  Short names

    shen

  Filenames

    *.shen

  MIME types

    text/x-shen, application/x-shen

  Lexer for Shen source code.

  New in version 2.1.

class pygments.lexers.lisp.XtlangLexer
  Short names

    extempore

  Filenames

    *.xtm

  MIME types

    None

  An xtlang lexer for the Extempore programming environment.

  This is a mixture of Scheme and xtlang, really. Keyword lists are taken from the Extempore Emacs mode (https://github.com/extemporelang/extempore-emacs-mode)

  New in version 2.2.

## Lexers for Makefiles and similar

class pygments.lexers.make.BaseMakefileLexer
  Short names

    basemake

  Filenames

    None

  MIME types

    None

  Lexer for simple Makefiles (no preprocessing).

  New in version 0.10.

class pygments.lexers.make.CMakeLexer
  Short names

    cmake

  Filenames

    *.cmake, CMakeLists.txt

  MIME types

    text/x-cmake

  Lexer for CMake files.

  New in version 1.2.

class pygments.lexers.make.MakefileLexer
  Short names

    make, makefile, mf, bsdmake

  Filenames

    *.mak, *.mk, Makefile, makefile, Makefile.*, GNUmakefile

  MIME types

    text/x-makefile

  Lexer for BSD and GNU make extensions (lenient enough to handle both in the same file even).

  Rewritten in Pygments 0.10.

## Lexers for non-HTML markup languages

class pygments.lexers.markup.BBCodeLexer
  Short names

    bbcode

  Filenames

    None

  MIME types

    text/x-bbcode

  A lexer that highlights BBCode(-like) syntax.

  New in version 0.6.

class pygments.lexers.markup.GroffLexer
  Short names

    groff, nroff, man

  Filenames

    *.[1-9], *.man, *.1p, *.3pm

  MIME types

    application/x-troff, text/troff

  Lexer for the (g)roff typesetting language, supporting groff extensions. Mainly useful for highlighting manpage sources.

  New in version 0.6.

class pygments.lexers.markup.MarkdownLexer
  Short names

    markdown, md

  Filenames

    *.md, *.markdown

  MIME types

    text/x-markdown

  For Markdown markup.

  New in version 2.2.

class pygments.lexers.markup.MoinWikiLexer
  Short names

    trac-wiki, moin

  Filenames

    None

  MIME types

    text/x-trac-wiki

  For MoinMoin (and Trac) Wiki markup.

  New in version 0.7.

class pygments.lexers.markup.MozPreprocCssLexer
  Short names

    css+mozpreproc

  Filenames

    *.css.in

  MIME types

    None

  Subclass of the MozPreprocHashLexer that highlights unlexed data with the CssLexer.

  New in version 2.0.

class pygments.lexers.markup.MozPreprocHashLexer
  Short names

    mozhashpreproc

  Filenames

    None

  MIME types

    None

  Lexer for Mozilla Preprocessor files (with ‘#’ as the marker).

  Other data is left untouched.

  New in version 2.0.

class pygments.lexers.markup.MozPreprocJavascriptLexer
  Short names

    javascript+mozpreproc

  Filenames

    *.js.in

  MIME types

    None

  Subclass of the MozPreprocHashLexer that highlights unlexed data with the JavascriptLexer.

  New in version 2.0.

class pygments.lexers.markup.MozPreprocPercentLexer
  Short names

    mozpercentpreproc

  Filenames

    None

  MIME types

    None

  Lexer for Mozilla Preprocessor files (with ‘%’ as the marker).

  Other data is left untouched.

  New in version 2.0.

class pygments.lexers.markup.MozPreprocXulLexer
  Short names

    xul+mozpreproc

  Filenames

    *.xul.in

  MIME types

    None

  Subclass of the MozPreprocHashLexer that highlights unlexed data with the XmlLexer.

  New in version 2.0.

class pygments.lexers.markup.RstLexer
  Short names

    restructuredtext, rst, rest

  Filenames

    *.rst, *.rest

  MIME types

    text/x-rst, text/prs.fallenstein.rst

  For reStructuredText markup.

  New in version 0.7.

  Additional options accepted:

  handlecodeblocks

    Highlight the contents of `.. sourcecode:: language`, `.. code:: language` and `.. code-block:: language` directives with a lexer for the given language (default: `True`).

    New in version 0.8.

class pygments.lexers.markup.TexLexer
  Short names

    tex, latex

  Filenames

    *.tex, *.aux, *.toc

  MIME types

    text/x-tex, text/x-latex

  Lexer for the TeX and LaTeX typesetting languages.

class pygments.lexers.markup.TiddlyWiki5Lexer
  Short names

    tid

  Filenames

    *.tid

  MIME types

    text/vnd.tiddlywiki

  For TiddlyWiki5 markup.

  New in version 2.7.

## Lexers for Matlab and related languages

class pygments.lexers.matlab.MatlabLexer
  Short names

    matlab

  Filenames

    *.m

  MIME types

    text/matlab

  For Matlab source code.

  New in version 0.10.

class pygments.lexers.matlab.MatlabSessionLexer
  Short names

    matlabsession

  Filenames

    None

  MIME types

    None

  For Matlab sessions. Modeled after PythonConsoleLexer. Contributed by Ken Schutte <kschutte@csail.mit.edu>.

  New in version 0.10.

class pygments.lexers.matlab.OctaveLexer
  Short names

    octave

  Filenames

    *.m

  MIME types

    text/octave

  For GNU Octave source code.

  New in version 1.5.

class pygments.lexers.matlab.ScilabLexer
  Short names

    scilab

  Filenames

    *.sci, *.sce, *.tst

  MIME types

    text/scilab

  For Scilab source code.

  New in version 1.5.

## Lexer for the computer algebra system Maxima

class pygments.lexers.maxima.MaximaLexer
  Short names

    maxima, macsyma

  Filenames

    *.mac, *.max

  MIME types

    None

  A Maxima lexer. Derived from pygments.lexers.MuPADLexer.

  New in version 2.11.

## Pygments lexer for the Meson build system

class pygments.lexers.meson.MesonLexer
  Short names

    meson, meson.build

  Filenames

    meson.build, mesonoptions.txt

  MIME types

    text/x-meson

  meson language lexer. The grammar definition use to transcribe the syntax was retrieved from https://mesonbuild.com/Syntax.html#grammar for version 0.58 Some of those definitions are improperly transcribed so the Meson++ implementation was also checked: https://github.com/dcbaker/meson-plus-plus

  New in version 2.10.

## Lexer for Multipurpose Internet Mail Extensions (MIME) data

class pygments.lexers.mime.MIMELexer
  Short names

    mime

  Filenames

    None

  MIME types

    multipart/mixed, multipart/related, multipart/alternative

  Lexer for Multipurpose Internet Mail Extensions (MIME) data. This lexer is designed to process nested multipart data.

  It assumes that the given data contains both header and body (and is split at an empty line). If no valid header is found, then the entire data will be treated as body.

  Additional options accepted:

  MIME-max-level

    Max recursion level for nested MIME structure. Any negative number would treated as unlimited. (default: -1)

  Content-Type

    Treat the data as a specific content type. Useful when header is missing, or this lexer would try to parse from header. (default: text/plain)

  Multipart-Boundary

    Set the default multipart boundary delimiter. This option is only used when Content-Type is multipart and header is missing. This lexer would try to parse from header by default. (default: None)

  Content-Transfer-Encoding

    Treat the data as a specific encoding. Or this lexer would try to parse from header by default. (default: None)

  New in version 2.5.

## Lexers for ML family languages

class pygments.lexers.ml.FStarLexer
  Short names

    fstar

  Filenames

    *.fst, *.fsti

  MIME types

    text/x-fstar

  For the F* language (https://www.fstar-lang.org/). .. versionadded:: 2.7

class pygments.lexers.ml.OcamlLexer
  Short names

    ocaml

  Filenames

    *.ml, *.mli, *.mll, *.mly

  MIME types

    text/x-ocaml

  For the OCaml language.

  New in version 0.7.

class pygments.lexers.ml.OpaLexer
  Short names

    opa

  Filenames

    *.opa

  MIME types

    text/x-opa

  Lexer for the Opa language (http://opalang.org).

  New in version 1.5.

class pygments.lexers.ml.ReasonLexer
  Short names

    reasonml, reason

  Filenames

    *.re, *.rei

  MIME types

    text/x-reasonml

  For the ReasonML language (https://reasonml.github.io/).

  New in version 2.6.

class pygments.lexers.ml.SMLLexer
  Short names

    sml

  Filenames

    *.sml, *.sig, *.fun

  MIME types

    text/x-standardml, application/x-standardml

  For the Standard ML language.

  New in version 1.5.

## Lexers for modeling languages

class pygments.lexers.modeling.BugsLexer
  Short names

    bugs, winbugs, openbugs

  Filenames

    *.bug

  MIME types

    None

  Pygments Lexer for OpenBugs and WinBugs models.

  New in version 1.6.

class pygments.lexers.modeling.JagsLexer
  Short names

    jags

  Filenames

    *.jag, *.bug

  MIME types

    None

  Pygments Lexer for JAGS.

  New in version 1.6.

class pygments.lexers.modeling.ModelicaLexer
  Short names

    modelica

  Filenames

    *.mo

  MIME types

    text/x-modelica

  For Modelica source code.

  New in version 1.1.

class pygments.lexers.modeling.StanLexer
  Short names

    stan

  Filenames

    *.stan

  MIME types

    None

  Pygments Lexer for Stan models.

  The Stan modeling language is specified in the Stan Modeling Language User’s Guide and Reference Manual, v2.17.0, pdf.

  New in version 1.6.

## Multi-Dialect Lexer for Modula-2

class pygments.lexers.modula2.Modula2Lexer
  Short names

    modula2, m2

  Filenames

    *.def, *.mod

  MIME types

    text/x-modula2

  For Modula-2 source code.

  The Modula-2 lexer supports several dialects. By default, it operates in fallback mode, recognising the combined literals, punctuation symbols and operators of all supported dialects, and the combined reserved words and builtins of PIM Modula-2, ISO Modula-2 and Modula-2 R10, while not differentiating between library defined identifiers.

  To select a specific dialect, a dialect option may be passed or a dialect tag may be embedded into a source file.

  Dialect Options:

  m2pim

    Select PIM Modula-2 dialect.

  m2iso

    Select ISO Modula-2 dialect.

  m2r10

    Select Modula-2 R10 dialect.

  objm2

    Select Objective Modula-2 dialect.

  The PIM and ISO dialect options may be qualified with a language extension.

  Language Extensions:

  +aglet

    Select Aglet Modula-2 extensions, available with m2iso.

  +gm2

    Select GNU Modula-2 extensions, available with m2pim.

  +p1

    Select p1 Modula-2 extensions, available with m2iso.

  +xds

    Select XDS Modula-2 extensions, available with m2iso.

  Passing a Dialect Option via Unix Commandline Interface

  Dialect options may be passed to the lexer using the dialect key. Only one such option should be passed. If multiple dialect options are passed, the first valid option is used, any subsequent options are ignored.

  Examples:

  $ pygmentize -O full,dialect=m2iso -f html -o /path/to/output /path/to/input

    Use ISO dialect to render input to HTML output

  $ pygmentize -O full,dialect=m2iso+p1 -f rtf -o /path/to/output /path/to/input

    Use ISO dialect with p1 extensions to render input to RTF output

  Embedding a Dialect Option within a source file

  A dialect option may be embedded in a source file in form of a dialect tag, a specially formatted comment that specifies a dialect option.

  Dialect Tag EBNF:

      dialectTag :
          OpeningCommentDelim Prefix dialectOption ClosingCommentDelim ;

      dialectOption :
          'm2pim' | 'm2iso' | 'm2r10' | 'objm2' |
          'm2iso+aglet' | 'm2pim+gm2' | 'm2iso+p1' | 'm2iso+xds' ;

      Prefix : '!' ;

      OpeningCommentDelim : '(*' ;

      ClosingCommentDelim : '*)' ;

  No whitespace is permitted between the tokens of a dialect tag.

  In the event that a source file contains multiple dialect tags, the first tag that contains a valid dialect option will be used and any subsequent dialect tags will be ignored. Ideally, a dialect tag should be placed at the beginning of a source file.

  An embedded dialect tag overrides a dialect option set via command line.

  Examples:

  `(*!m2r10*) DEFINITION MODULE Foobar; ...`

    Use Modula2 R10 dialect to render this source file.

  `(*!m2pim+gm2*) DEFINITION MODULE Bazbam; ...`

    Use PIM dialect with GNU extensions to render this source file.

  Algol Publication Mode:

  In Algol publication mode, source text is rendered for publication of algorithms in scientific papers and academic texts, following the format of the Revised Algol-60 Language Report. It is activated by passing one of two corresponding styles as an option:

  algol

    render reserved words lowercase underline boldface and builtins lowercase boldface italic

  algol_nu

    render reserved words lowercase boldface (no underlining) and builtins lowercase boldface italic

  The lexer automatically performs the required lowercase conversion when this mode is activated.

  Example:

  `$ pygmentize -O full,style=algol -f latex -o /path/to/output /path/to/input`

    Render input file in Algol publication mode to LaTeX output.

  Rendering Mode of First Class ADT Identifiers:

  The rendering of standard library first class ADT identifiers is controlled by option flag “treat_stdlib_adts_as_builtins”.

  When this option is turned on, standard library ADT identifiers are rendered as builtins. When it is turned off, they are rendered as ordinary library identifiers.

  treat_stdlib_adts_as_builtins (default: On)

  The option is useful for dialects that support ADTs as first class objects and provide ADTs in the standard library that would otherwise be built-in.

  At present, only Modula-2 R10 supports library ADTs as first class objects and therefore, no ADT identifiers are defined for any other dialects.

  Example:

  `$ pygmentize -O full,dialect=m2r10,treat_stdlib_adts_as_builtins=Off ...`

    Render standard library ADTs as ordinary library types.

  New in version 1.3.

  Changed in version 2.1: Added multi-dialect support.

## Lexer for the Monte programming language

class pygments.lexers.monte.MonteLexer
  Short names

    monte

  Filenames

    *.mt

  MIME types

    None

  Lexer for the Monte programming language.

  New in version 2.2.

## Lexers for the mosel language

class pygments.lexers.mosel.MoselLexer
  Short names

    mosel

  Filenames

    *.mos

  MIME types

    None

  For the Mosel optimization language.

  New in version 2.6.

## Lexers for NCAR Command Language

class pygments.lexers.ncl.NCLLexer
  Short names

    ncl

  Filenames

    *.ncl

  MIME types

    text/ncl

  Lexer for NCL code.

  New in version 2.2.

## Lexer for the Nim language (formerly known as Nimrod)

class pygments.lexers.nimrod.NimrodLexer
  Short names

    nimrod, nim

  Filenames

    *.nim, *.nimrod

  MIME types

    text/x-nim

  For Nim source code.

  New in version 1.5.

## Lexer for the Nit language

class pygments.lexers.nit.NitLexer
  Short names

    nit

  Filenames

    *.nit

  MIME types

    None

  For nit source.

  New in version 2.0.

## Lexers for the NixOS Nix language

class pygments.lexers.nix.NixLexer
  Short names

    nixos, nix

  Filenames

    *.nix

  MIME types

    text/x-nix

  For the Nix language.

  New in version 2.0.

## Lexers for Oberon family languages

class pygments.lexers.oberon.ComponentPascalLexer
  Short names

    componentpascal, cp

  Filenames

    *.cp, *.cps

  MIME types

    text/x-component-pascal

  For Component Pascal source code.

  New in version 2.1.

## Lexers for Objective-C family languages

class pygments.lexers.objective.LogosLexer
  Short names

    logos

  Filenames

    *.x, *.xi, *.xm, *.xmi

  MIME types

    text/x-logos

  For Logos + Objective-C source code with preprocessor directives.

  New in version 1.6.

class pygments.lexers.objective.ObjectiveCLexer
  Short names

    objective-c, objectivec, obj-c, objc

  Filenames

    *.m, *.h

  MIME types

    text/x-objective-c

  For Objective-C source code with preprocessor directives.

class pygments.lexers.objective.ObjectiveCppLexer
  Short names

    objective-c++, objectivec++, obj-c++, objc++

  Filenames

    *.mm, *.hh

  MIME types

    text/x-objective-c++

  For Objective-C++ source code with preprocessor directives.

class pygments.lexers.objective.SwiftLexer
  Short names

    swift

  Filenames

    *.swift

  MIME types

    text/x-swift

  For Swift source.

  New in version 2.0.

## Lexers for the Ooc language

class pygments.lexers.ooc.OocLexer
  Short names

    ooc

  Filenames

    *.ooc

  MIME types

    text/x-ooc

  For Ooc source code

  New in version 1.2.

## Lexer for ParaSail

class pygments.lexers.parasail.ParaSailLexer
  Short names

    parasail

  Filenames

    *.psi, *.psl

  MIME types

    text/x-parasail

  For ParaSail source code.

  New in version 2.1.

## Lexers for parser generators

class pygments.lexers.parsers.AntlrActionScriptLexer
  Short names

    antlr-actionscript, antlr-as

  Filenames

    *.G, *.g

  MIME types

    None

  ANTLR with ActionScript Target

  New in version 1.1.

class pygments.lexers.parsers.AntlrCSharpLexer
  Short names

    antlr-csharp, antlr-c#

  Filenames

    *.G, *.g

  MIME types

    None

  ANTLR with C# Target

  New in version 1.1.

class pygments.lexers.parsers.AntlrCppLexer
  Short names

    antlr-cpp

  Filenames

    *.G, *.g

  MIME types

    None

  ANTLR with CPP Target

  New in version 1.1.

class pygments.lexers.parsers.AntlrJavaLexer
  Short names

    antlr-java

  Filenames

    *.G, *.g

  MIME types

    None

  ANTLR with Java Target

  New in version 1..

class pygments.lexers.parsers.AntlrLexer
  Short names

    antlr

  Filenames

    None

  MIME types

    None

  Generic ANTLR Lexer. Should not be called directly, instead use DelegatingLexer for your target language.

  New in version 1.1.

class pygments.lexers.parsers.AntlrObjectiveCLexer
  Short names

    antlr-objc

  Filenames

    *.G, *.g

  MIME types

    None

  ANTLR with Objective-C Target

  New in version 1.1.

class pygments.lexers.parsers.AntlrPerlLexer
  Short names

    antlr-perl

  Filenames

    *.G, *.g

  MIME types

    None

  ANTLR with Perl Target

  New in version 1.1.

class pygments.lexers.parsers.AntlrPythonLexer
  Short names

    antlr-python

  Filenames

    *.G, *.g

  MIME types

    None

  ANTLR with Python Target

  New in version 1.1.

class pygments.lexers.parsers.AntlrRubyLexer
  Short names

    antlr-ruby, antlr-rb

  Filenames

    *.G, *.g

  MIME types

    None

  ANTLR with Ruby Target

  New in version 1.1.

class pygments.lexers.parsers.EbnfLexer
  Short names

    ebnf

  Filenames

    *.ebnf

  MIME types

    text/x-ebnf

  Lexer for ISO/IEC 14977 EBNF grammars.

  New in version 2.0.

class pygments.lexers.parsers.RagelCLexer
  Short names

    ragel-c

  Filenames

    *.rl

  MIME types

    None

  A lexer for Ragel in a C host file.

  New in version 1.1.

class pygments.lexers.parsers.RagelCppLexer
  Short names

    ragel-cpp

  Filenames

    *.rl

  MIME types

    None

  A lexer for Ragel in a CPP host file.

  New in version 1.1.

class pygments.lexers.parsers.RagelDLexer
  Short names

    ragel-d

  Filenames

    *.rl

  MIME types

    None

  A lexer for Ragel in a D host file.

  New in version 1.1.

class pygments.lexers.parsers.RagelEmbeddedLexer
  Short names

    ragel-em

  Filenames

    *.rl

  MIME types

    None

  A lexer for Ragel embedded in a host language file.

  This will only highlight Ragel statements. If you want host language highlighting then call the language-specific Ragel lexer.

  New in version 1.1.

class pygments.lexers.parsers.RagelJavaLexer
  Short names

    ragel-java

  Filenames

    *.rl

  MIME types

    None

  A lexer for Ragel in a Java host file.

  New in version 1.1.

class pygments.lexers.parsers.RagelLexer
  Short names

    ragel

  Filenames

    None

  MIME types

    None

  A pure Ragel lexer. Use this for fragments of Ragel. For `.rl` files, use RagelEmbeddedLexer instead (or one of the language-specific subclasses).

  New in version 1.1.

class pygments.lexers.parsers.RagelObjectiveCLexer
  Short names

    ragel-objc

  Filenames

    *.rl

  MIME types

    None

  A lexer for Ragel in an Objective C host file.

  New in version 1.1.

class pygments.lexers.parsers.RagelRubyLexer
  Short names

    ragel-ruby, ragel-rb

  Filenames

    *.rl

  MIME types

    None

  A lexer for Ragel in a Ruby host file.

  New in version 1.1.

class pygments.lexers.parsers.TreetopLexer
  Short names

    treetop

  Filenames

    *.treetop, *.tt

  MIME types

    None

  A lexer for Treetop grammars.

  New in version 1.6.

## Lexers for Pascal family languages

class pygments.lexers.pascal.AdaLexer
  Short names

    ada, ada95, ada2005

  Filenames

    *.adb, *.ads, *.ada

  MIME types

    text/x-ada

  For Ada source code.

  New in version 1.3.

class pygments.lexers.pascal.DelphiLexer
  Short names

    delphi, pas, pascal, objectpascal

  Filenames

    *.pas, *.dpr

  MIME types

    text/x-pascal

  For Delphi (Borland Object Pascal), Turbo Pascal and Free Pascal source code.

  Additional options accepted:

  turbopascal

    Highlight Turbo Pascal specific keywords (default: `True`).

  delphi

    Highlight Borland Delphi specific keywords (default: `True`).

  freepascal

    Highlight Free Pascal specific keywords (default: `True`).

  units

    A list of units that should be considered builtin, supported are `System`, `SysUtils`, `Classes` and `Math`. Default is to consider all of them builtin.

## Lexers for the Pawn languages

class pygments.lexers.pawn.PawnLexer
  Short names

    pawn

  Filenames

    *.p, *.pwn, *.inc

  MIME types

    text/x-pawn

  For Pawn source code.

  New in version 2.0.

class pygments.lexers.pawn.SourcePawnLexer
  Short names

    sp

  Filenames

    *.sp

  MIME types

    text/x-sourcepawn

  For SourcePawn source code with preprocessor directives.

  New in version 1.6.

## Lexers for Perl, Raku and related languages

class pygments.lexers.perl.Perl6Lexer
  Short names

    perl6, pl6, raku

  Filenames

    *.pl, *.pm, *.nqp, *.p6, *.6pl, *.p6l, *.pl6, *.6pm, *.p6m, *.pm6, *.t, *.raku, *.rakumod, *.rakutest, *.rakudoc

  MIME types

    text/x-perl6, application/x-perl6

  For Raku (a.k.a. Perl 6) source code.

  New in version 2.0.

class pygments.lexers.perl.PerlLexer
  Short names

    perl, pl

  Filenames

    *.pl, *.pm, *.t, *.perl

  MIME types

    text/x-perl, application/x-perl

  For Perl source code.

## Lexers for PHP and related languages

class pygments.lexers.php.PhpLexer
  Short names

    php, php3, php4, php5

  Filenames

    *.php, *.php[345], *.inc

  MIME types

    text/x-php

  For PHP source code. For PHP embedded in HTML, use the HtmlPhpLexer.

  Additional options accepted:

  startinline

    If given and `True` the lexer starts highlighting with php code (i.e.: no starting `<?php` required). The default is `False`.

  funcnamehighlighting

    If given and `True`, highlight builtin function names (default: `True`).

  disabledmodules

    If given, must be a list of module names whose function names should not be highlighted. By default all modules are highlighted except the special `'unknown'` module that includes functions that are known to php but are undocumented.

    To get a list of allowed modules have a look into the _php_builtins module:

        >>> from pygments.lexers._php_builtins import MODULES
        >>> MODULES.keys()
        ['PHP Options/Info', 'Zip', 'dba', ...]

    In fact the names of those modules match the module names from the php documentation.

class pygments.lexers.php.PsyshConsoleLexer
  Short names

    psysh

  Filenames

    None

  MIME types

    None

  For PsySH console output, such as:

      >>> $greeting = function($name): string {
      ...     return "Hello, {$name}";
      ... };
      => Closure($name): string {#2371 …3}
      >>> $greeting('World')
      => "Hello, World"

  New in version 2.7.

class pygments.lexers.php.ZephirLexer
  Short names

    zephir

  Filenames

    *.zep

  MIME types

    None

  For Zephir language source code.

  Zephir is a compiled high level language aimed to the creation of C-extensions for PHP.

  New in version 2.0.

## Lexers for Pointless

class pygments.lexers.pointless.PointlessLexer
  Short names

    pointless

  Filenames

    *.ptls

  MIME types

    None

  For Pointless source code.

  New in version 2.7.

## Lexers for Pony and related languages

class pygments.lexers.pony.PonyLexer
  Short names

    pony

  Filenames

    *.pony

  MIME types

    None

  For Pony source code.

  New in version 2.4.

## Lexer for Praat

class pygments.lexers.praat.PraatLexer
  Short names

    praat

  Filenames

    *.praat, *.proc, *.psc

  MIME types

    None

  For Praat scripts.

  New in version 2.1.

## Lexer for Procfile file format

class pygments.lexers.procfile.ProcfileLexer
  Short names

    procfile

  Filenames

    Procfile

  MIME types

    None

  Lexer for Procfile file format.

  The format is used to run processes on Heroku or is used by Foreman or Honcho tools. For more information about the definition of the format, see: https://devcenter.heroku.com/articles/procfile#procfile-format

  New in version 2.10.

## Lexers for Prolog and Prolog-like languages

class pygments.lexers.prolog.LogtalkLexer
  Short names

    logtalk

  Filenames

    *.lgt, *.logtalk

  MIME types

    text/x-logtalk

  For Logtalk source code.

  New in version 0.10.

class pygments.lexers.prolog.PrologLexer
  Short names

    prolog

  Filenames

    *.ecl, *.prolog, *.pro, *.pl

  MIME types

    text/x-prolog

  Lexer for Prolog files.

## Lexer for Prometheus Query Language

class pygments.lexers.promql.PromQLLexer
  Short names

    promql

  Filenames

    *.promql

  MIME types

    None

  For PromQL queries.

  For details about the grammar see: https://github.com/prometheus/prometheus/tree/master/promql/parser

## Lexers for Python and related languages

class pygments.lexers.python.CythonLexer
  Short names

    cython, pyx, pyrex

  Filenames

    *.pyx, *.pxd, *.pxi

  MIME types

    text/x-cython, application/x-cython

  For Pyrex and Cython source code.

  New in version 1.1.

class pygments.lexers.python.DgLexer
  Short names

    dg

  Filenames

    *.dg

  MIME types

    text/x-dg

  Lexer for dg, a functional and object-oriented programming language running on the CPython 3 VM.

  New in version 1.6.

class pygments.lexers.python.NumPyLexer
  Short names

    numpy

  Filenames

    None

  MIME types

    None

  A Python lexer recognizing Numerical Python builtins.

  New in version 0.10.

class pygments.lexers.python.Python2Lexer
  Short names

    python2, py2

  Filenames

    None

  MIME types

    text/x-python2, application/x-python2

  For Python 2.x source code.

  Changed in version 2.5: This class has been renamed from `PythonLexer`. `PythonLexer` now refers to the Python 3 variant. File name patterns like `*.py` have been moved to Python 3 as well.

class pygments.lexers.python.Python2TracebackLexer
  Short names

    py2tb

  Filenames

    *.py2tb

  MIME types

    text/x-python2-traceback

  For Python tracebacks.

  New in version 0.7.

  Changed in version 2.5: This class has been renamed from `PythonTracebackLexer`. `PythonTracebackLexer` now refers to the Python 3 variant.

class pygments.lexers.python.PythonConsoleLexer
  Short names

    pycon

  Filenames

    None

  MIME types

    text/x-python-doctest

  For Python console output or doctests, such as:

      >>> a = 'foo'
      >>> print a
      foo
      >>> 1 / 0
      Traceback (most recent call last):
        File "<stdin>", line 1, in <module>
      ZeroDivisionError: integer division or modulo by zero

  Additional options:

  python3

    Use Python 3 lexer for code. Default is `True`.

    New in version 1.0.

    Changed in version 2.5: Now defaults to `True`.

class pygments.lexers.python.PythonLexer
  Short names

    python, py, sage, python3, py3

  Filenames

    *.py, *.pyw, *.jy, *.sage, *.sc, SConstruct, SConscript, *.bzl, BUCK, BUILD, BUILD.bazel, WORKSPACE, *.tac

  MIME types

    text/x-python, application/x-python, text/x-python3, application/x-python3

  For Python source code (version 3.x).

  New in version 0.10.

  Changed in version 2.5: This is now the default `PythonLexer`. It is still available as the alias `Python3Lexer`.

class pygments.lexers.python.PythonTracebackLexer
  Short names

    pytb, py3tb

  Filenames

    *.pytb, *.py3tb

  MIME types

    text/x-python-traceback, text/x-python3-traceback

  For Python 3.x tracebacks, with support for chained exceptions.

  New in version 1.0.

  Changed in version 2.5: This is now the default `PythonTracebackLexer`. It is still available as the alias `Python3TracebackLexer`.

## Lexer for QVT Operational language

class pygments.lexers.qvt.QVToLexer
  Short names

    qvto, qvt

  Filenames

    *.qvto

  MIME types

    None

  For the QVT Operational Mapping language.

  Reference for implementing this: «Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification», Version 1.1 - January 2011 (http://www.omg.org/spec/QVT/1.1/), see §8.4, «Concrete Syntax» in particular.

  Notable tokens assignments:

  - Name.Class is assigned to the identifier following any of the following keywords: metamodel, class, exception, primitive, enum, transformation or library

  - Name.Function is assigned to the names of mappings and queries

  - Name.Builtin.Pseudo is assigned to the pre-defined variables ‘this’, ‘self’ and ‘result’.

## Lexers for the R/S languages

class pygments.lexers.r.RConsoleLexer
  Short names

    rconsole, rout

  Filenames

    *.Rout

  MIME types

    None

  For R console transcripts or R CMD BATCH output files.

class pygments.lexers.r.RdLexer
  Short names

    rd

  Filenames

    *.Rd

  MIME types

    text/x-r-doc

  Pygments Lexer for R documentation (Rd) files

  This is a very minimal implementation, highlighting little more than the macros. A description of Rd syntax is found in Writing R Extensions and Parsing Rd files.

  New in version 1.6.

class pygments.lexers.r.SLexer
  Short names

    splus, s, r

  Filenames

    *.S, *.R, .Rhistory, .Rprofile, .Renviron

  MIME types

    text/S-plus, text/S, text/x-r-source, text/x-r, text/x-R, text/x-r-history, text/x-r-profile

  For S, S-plus, and R source code.

  New in version 0.10.

## Lexers for semantic web and RDF query languages and markup

class pygments.lexers.rdf.ShExCLexer
  Short names

    shexc, shex

  Filenames

    *.shex

  MIME types

    text/shex

  Lexer for ShExC shape expressions language syntax.

class pygments.lexers.rdf.SparqlLexer
  Short names

    sparql

  Filenames

    *.rq, *.sparql

  MIME types

    application/sparql-query

  Lexer for SPARQL query language.

  New in version 2.0.

class pygments.lexers.rdf.TurtleLexer
  Short names

    turtle

  Filenames

    *.ttl

  MIME types

    text/turtle, application/x-turtle

  Lexer for Turtle data language.

  New in version 2.1.

## Lexers for the REBOL and related languages

class pygments.lexers.rebol.RebolLexer
  Short names

    rebol

  Filenames

    *.r, *.r3, *.reb

  MIME types

    text/x-rebol

  A REBOL lexer.

  New in version 1.1.

class pygments.lexers.rebol.RedLexer
  Short names

    red, red/system

  Filenames

    *.red, *.reds

  MIME types

    text/x-red, text/x-red-system

  A Red-language lexer.

  New in version 2.0.

## Lexer for resource definition files

class pygments.lexers.resource.ResourceLexer
  Short names

    resourcebundle, resource

  Filenames

    None

  MIME types

    None

  Lexer for ICU Resource bundles.

  New in version 2.0.

## Lexer for the Ride programming language

class pygments.lexers.ride.RideLexer
  Short names

    ride

  Filenames

    *.ride

  MIME types

    text/x-ride

  For Ride source code.

  New in version 2.6.

## Lexers for RITA language

class pygments.lexers.rita.RitaLexer
  Short names

    rita

  Filenames

    *.rita

  MIME types

    text/rita

  Lexer for RITA

  > New in version 2.11.

## Lexer for Relax-NG Compact syntax

class pygments.lexers.rnc.RNCCompactLexer
  Short names

    rng-compact, rnc

  Filenames

    *.rnc

  MIME types

    None

  For RelaxNG-compact syntax.

  New in version 2.2.

## Lexers for Roboconf DSL

class pygments.lexers.roboconf.RoboconfGraphLexer
  Short names

    roboconf-graph

  Filenames

    *.graph

  MIME types

    None

  Lexer for Roboconf graph files.

  New in version 2.1.

class pygments.lexers.roboconf.RoboconfInstancesLexer
  Short names

    roboconf-instances

  Filenames

    *.instances

  MIME types

    None

  Lexer for Roboconf instances files.

  New in version 2.1.

## Lexer for Robot Framework

class pygments.lexers.robotframework.RobotFrameworkLexer
  Short names

    robotframework

  Filenames

    *.robot

  MIME types

    text/x-robotframework

  For Robot Framework test data.

  Supports both space and pipe separated plain text formats.

  New in version 1.6.

## Lexers for Ruby and related languages

class pygments.lexers.ruby.FancyLexer
  Short names

    fancy, fy

  Filenames

    *.fy, *.fancypack

  MIME types

    text/x-fancysrc

  Pygments Lexer For Fancy.

  Fancy is a self-hosted, pure object-oriented, dynamic, class-based, concurrent general-purpose programming language running on Rubinius, the Ruby VM.

  New in version 1.5.

class pygments.lexers.ruby.RubyConsoleLexer
  Short names

    rbcon, irb

  Filenames

    None

  MIME types

    text/x-ruby-shellsession

  For Ruby interactive console (irb) output like:

      irb(main):001:0> a = 1
      => 1
      irb(main):002:0> puts a
      1
      => nil

class pygments.lexers.ruby.RubyLexer
  Short names

    ruby, rb, duby

  Filenames

    *.rb, *.rbw, Rakefile, *.rake, *.gemspec, *.rbx, *.duby, Gemfile, Vagrantfile

  MIME types

    text/x-ruby, application/x-ruby

  For Ruby source code.

## Lexers for the Rust language

class pygments.lexers.rust.RustLexer
  Short names

    rust, rs

  Filenames

    *.rs, *.rs.in

  MIME types

    text/rust, text/x-rust

  Lexer for the Rust programming language (version 1.47).

  New in version 1.6.

## Lexer for SAS

class pygments.lexers.sas.SASLexer
  Short names

    sas

  Filenames

    *.SAS, *.sas

  MIME types

    text/x-sas, text/sas, application/x-sas

  For SAS files.

  New in version 2.2.

## Lexer for Savi

class pygments.lexers.savi.SaviLexer

  > Short names

  >   savi

  > Filenames

  >   *.savi

  > MIME types

  >   None

  For Savi source code.

## Lexer for scdoc, a simple man page generator

class pygments.lexers.scdoc.ScdocLexer
  Short names

    scdoc, scd

  Filenames

    *.scd, *.scdoc

  MIME types

    None

  scdoc is a simple man page generator for POSIX systems written in C99. https://git.sr.ht/~sircmpwn/scdoc

  New in version 2.5.

## Lexer for scripting and embedded languages

class pygments.lexers.scripting.AppleScriptLexer
  Short names

    applescript

  Filenames

    *.applescript

  MIME types

    None

  For AppleScript source code, including AppleScript Studio. Contributed by Andreas Amann <aamann@mac.com>.

  New in version 1.0.

class pygments.lexers.scripting.ChaiscriptLexer
  Short names

    chaiscript, chai

  Filenames

    *.chai

  MIME types

    text/x-chaiscript, application/x-chaiscript

  For ChaiScript source code.

  New in version 2.0.

class pygments.lexers.scripting.EasytrieveLexer
  Short names

    easytrieve

  Filenames

    *.ezt, *.mac

  MIME types

    text/x-easytrieve

  Easytrieve Plus is a programming language for extracting, filtering and converting sequential data. Furthermore it can layout data for reports. It is mainly used on mainframe platforms and can access several of the mainframe’s native file formats. It is somewhat comparable to awk.

  New in version 2.1.

class pygments.lexers.scripting.HybrisLexer
  Short names

    hybris, hy

  Filenames

    *.hy, *.hyb

  MIME types

    text/x-hybris, application/x-hybris

  For Hybris source code.

  New in version 1.4.

class pygments.lexers.scripting.JclLexer
  Short names

    jcl

  Filenames

    *.jcl

  MIME types

    text/x-jcl

  Job Control Language (JCL) is a scripting language used on mainframe platforms to instruct the system on how to run a batch job or start a subsystem. It is somewhat comparable to MS DOS batch and Unix shell scripts.

  New in version 2.1.

class pygments.lexers.scripting.LSLLexer
  Short names

    lsl

  Filenames

    *.lsl

  MIME types

    text/x-lsl

  For Second Life’s Linden Scripting Language source code.

  New in version 2.0.

class pygments.lexers.scripting.LuaLexer
  Short names

    lua

  Filenames

    *.lua, *.wlua

  MIME types

    text/x-lua, application/x-lua

  For Lua source code.

  Additional options accepted:

  func_name_highlighting

    If given and `True`, highlight builtin function names (default: `True`).

  disabled_modules

    If given, must be a list of module names whose function names should not be highlighted. By default all modules are highlighted.

    To get a list of allowed modules have a look into the _lua_builtins module:

        >>> from pygments.lexers._lua_builtins import MODULES
        >>> MODULES.keys()
        ['string', 'coroutine', 'modules', 'io', 'basic', ...]

class pygments.lexers.scripting.MOOCodeLexer
  Short names

    moocode, moo

  Filenames

    *.moo

  MIME types

    text/x-moocode

  For MOOCode (the MOO scripting language).

  New in version 0.9.

class pygments.lexers.scripting.MiniScriptLexer
  Short names

    miniscript, ms

  Filenames

    *.ms

  MIME types

    text/x-minicript, application/x-miniscript

  For MiniScript source code.

  New in version 2.6.

class pygments.lexers.scripting.MoonScriptLexer
  Short names

    moonscript, moon

  Filenames

    *.moon

  MIME types

    text/x-moonscript, application/x-moonscript

  For MoonScript source code.

  New in version 1.5.

class pygments.lexers.scripting.RexxLexer
  Short names

    rexx, arexx

  Filenames

    *.rexx, *.rex, *.rx, *.arexx

  MIME types

    text/x-rexx

  Rexx is a scripting language available for a wide range of different platforms with its roots found on mainframe systems. It is popular for I/O- and data based tasks and can act as glue language to bind different applications together.

  New in version 2.0.

## Lexer for Smart Game Format (sgf) file format

class pygments.lexers.sgf.SmartGameFormatLexer
  Short names

    sgf

  Filenames

    *.sgf

  MIME types

    None

  Lexer for Smart Game Format (sgf) file format.

  The format is used to store game records of board games for two players (mainly Go game). For more information about the definition of the format, see: https://www.red-bean.com/sgf/

  New in version 2.4.

## Lexers for various shells

class pygments.lexers.shell.BashLexer
  Short names

    bash, sh, ksh, zsh, shell

  Filenames

    *.sh, *.ksh, *.bash, *.ebuild, *.eclass, *.exheres-0, *.exlib, *.zsh, .bashrc, bashrc, .bash\*, bash\*, zshrc, .zshrc, .kshrc, kshrc, PKGBUILD

  MIME types

    application/x-sh, application/x-shellscript, text/x-shellscript

  Lexer for (ba|k|z|)sh shell scripts.

  New in version 0.6.

class pygments.lexers.shell.BashSessionLexer
  Short names

    console, shell-session

  Filenames

    *.sh-session, *.shell-session

  MIME types

    application/x-shell-session, application/x-sh-session

  Lexer for Bash shell sessions, i.e. command lines, including a prompt, interspersed with output.

  New in version 1.1.

class pygments.lexers.shell.BatchLexer
  Short names

    batch, bat, dosbatch, winbatch

  Filenames

    *.bat, *.cmd

  MIME types

    application/x-dos-batch

  Lexer for the DOS/Windows Batch file format.

  New in version 0.7.

class pygments.lexers.shell.ExeclineLexer
  Short names

    execline

  Filenames

    *.exec

  MIME types

    None

  Lexer for Laurent Bercot’s execline language (https://skarnet.org/software/execline).

  New in version 2.7.

class pygments.lexers.shell.FishShellLexer
  Short names

    fish, fishshell

  Filenames

    *.fish, *.load

  MIME types

    application/x-fish

  Lexer for Fish shell scripts.

  New in version 2.1.

class pygments.lexers.shell.MSDOSSessionLexer
  Short names

    doscon

  Filenames

    None

  MIME types

    None

  Lexer for MS DOS shell sessions, i.e. command lines, including a prompt, interspersed with output.

  New in version 2.1.

class pygments.lexers.shell.PowerShellLexer
  Short names

    powershell, pwsh, posh, ps1, psm1

  Filenames

    *.ps1, *.psm1

  MIME types

    text/x-powershell

  For Windows PowerShell code.

  New in version 1.5.

class pygments.lexers.shell.PowerShellSessionLexer
  Short names

    pwsh-session, ps1con

  Filenames

    None

  MIME types

    None

  Lexer for PowerShell sessions, i.e. command lines, including a prompt, interspersed with output.

  New in version 2.1.

class pygments.lexers.shell.SlurmBashLexer
  Short names

    slurm, sbatch

  Filenames

    *.sl

  MIME types

    None

  Lexer for (ba|k|z|)sh Slurm scripts.

  New in version 2.4.

class pygments.lexers.shell.TcshLexer
  Short names

    tcsh, csh

  Filenames

    *.tcsh, *.csh

  MIME types

    application/x-csh

  Lexer for tcsh scripts.

  New in version 0.10.

class pygments.lexers.shell.TcshSessionLexer
  Short names

    tcshcon

  Filenames

    None

  MIME types

    None

  Lexer for Tcsh sessions, i.e. command lines, including a prompt, interspersed with output.

  New in version 2.1.

## Lexer for Sieve file format

class pygments.lexers.sieve.SieveLexer
  Short names

    sieve

  Filenames

    *.siv, *.sieve

  MIME types

    None

  Lexer for sieve format.

## Lexer for the Slash programming

class pygments.lexers.slash.SlashLexer
  Short names

    slash

  Filenames

    *.sla

  MIME types

    None

  Lexer for the Slash programming language.

  New in version 2.4.

## Lexers for Smalltalk and related languages

class pygments.lexers.smalltalk.NewspeakLexer
  Short names

    newspeak

  Filenames

    *.ns2

  MIME types

    text/x-newspeak

  For Newspeak syntax.

  New in version 1.1.

class pygments.lexers.smalltalk.SmalltalkLexer
  Short names

    smalltalk, squeak, st

  Filenames

    *.st

  MIME types

    text/x-smalltalk

  For Smalltalk syntax. Contributed by Stefan Matthias Aust. Rewritten by Nils Winter.

  New in version 0.10.

## Lexers for the Smithy IDL

class pygments.lexers.smithy.SmithyLexer
  Short names

    smithy

  Filenames

    *.smithy

  MIME types

    None

  For Smithy IDL

  New in version 2.10.

## Lexers for the SMV languages

class pygments.lexers.smv.NuSMVLexer
  Short names

    nusmv

  Filenames

    *.smv

  MIME types

    None

  Lexer for the NuSMV language.

  New in version 2.2.

## Lexers for the SNOBOL language

class pygments.lexers.snobol.SnobolLexer
  Short names

    snobol

  Filenames

    *.snobol

  MIME types

    text/x-snobol

  Lexer for the SNOBOL4 programming language.

  Recognizes the common ASCII equivalents of the original SNOBOL4 operators. Does not require spaces around binary operators.

  New in version 1.5.

## Lexers for Solidity

class pygments.lexers.solidity.SolidityLexer
  Short names

    solidity

  Filenames

    *.sol

  MIME types

    None

  For Solidity source code.

  New in version 2.5.

## Lexer for Sophia

class pygments.lexers.sophia.SophiaLexer
  Short names

    sophia

  Filenames

    *.aes

  MIME types

    None

  A Sophia lexer.

  New in version 2.11.

## Special lexers

class pygments.lexers.special.OutputLexer
  Short names

    output

  Filenames

    None

  MIME types

    None

  Simple lexer that highlights everything as `Token.Generic.Output`.

  New in version 2.10.

class pygments.lexers.special.RawTokenLexer
  Short names

    None

  Filenames

    None

  MIME types

    application/x-pygments-tokens

  Recreate a token stream formatted with the RawTokenFormatter.

  Additional options accepted:

  compress

    If set to `"gz"` or `"bz2"`, decompress the token stream with the given compression algorithm before lexing (default: `""`).

class pygments.lexers.special.TextLexer
  Short names

    text

  Filenames

    *.txt

  MIME types

    text/plain

  “Null” lexer, doesn’t highlight anything.

## Lexers for the Spice programming language

class pygments.lexers.spice.SpiceLexer
  Short names

    spice, spicelang

  Filenames

    *.spice

  MIME types

    text/x-spice

  For Spice source.

  New in version 2.11.

## Lexers for various SQL dialects and related interactive sessions

class pygments.lexers.sql.MySqlLexer
  Short names

    mysql

  Filenames

    None

  MIME types

    text/x-mysql

  The Oracle MySQL lexer.

  This lexer does not attempt to maintain strict compatibility with MariaDB syntax or keywords. Although MySQL and MariaDB’s common code history suggests there may be significant overlap between the two, compatibility between the two is not a target for this lexer.

class pygments.lexers.sql.PlPgsqlLexer
  Short names

    plpgsql

  Filenames

    None

  MIME types

    text/x-plpgsql

  Handle the extra syntax in Pl/pgSQL language.

  New in version 1.5.

class pygments.lexers.sql.PostgresConsoleLexer
  Short names

    psql, postgresql-console, postgres-console

  Filenames

    None

  MIME types

    text/x-postgresql-psql

  Lexer for psql sessions.

  New in version 1.5.

class pygments.lexers.sql.PostgresLexer
  Short names

    postgresql, postgres

  Filenames

    None

  MIME types

    text/x-postgresql

  Lexer for the PostgreSQL dialect of SQL.

  New in version 1.5.

class pygments.lexers.sql.RqlLexer
  Short names

    rql

  Filenames

    *.rql

  MIME types

    text/x-rql

  Lexer for Relation Query Language.

  RQL

  New in version 2.0.

class pygments.lexers.sql.SqlLexer
  Short names

    sql

  Filenames

    *.sql

  MIME types

    text/x-sql

  Lexer for Structured Query Language. Currently, this lexer does not recognize any special syntax except ANSI SQL.

class pygments.lexers.sql.SqliteConsoleLexer
  Short names

    sqlite3

  Filenames

    *.sqlite3-console

  MIME types

    text/x-sqlite3-console

  Lexer for example sessions using sqlite3.

  New in version 0.11.

class pygments.lexers.sql.TransactSqlLexer
  Short names

    tsql, t-sql

  Filenames

    *.sql

  MIME types

    text/x-tsql

  Transact-SQL (T-SQL) is Microsoft’s and Sybase’s proprietary extension to SQL.

  The list of keywords includes ODBC and keywords reserved for future use..

## Lexers for .SRCINFO files used by Arch Linux Packages

class pygments.lexers.srcinfo.SrcinfoLexer
  Short names

    srcinfo

  Filenames

    .SRCINFO

  MIME types

    None

  Lexer for .SRCINFO files used by Arch Linux Packages.

  New in version 2.11.

## Lexer for Stata

class pygments.lexers.stata.StataLexer
  Short names

    stata, do

  Filenames

    *.do, *.ado

  MIME types

    text/x-stata, text/stata, application/x-stata

  For Stata do files.

  New in version 2.2.

## Lexer for SuperCollider

class pygments.lexers.supercollider.SuperColliderLexer
  Short names

    supercollider, sc

  Filenames

    *.sc, *.scd

  MIME types

    application/supercollider, text/supercollider

  For SuperCollider source code.

  New in version 2.1.

## Lexers for Tcl and related languages

class pygments.lexers.tcl.TclLexer
  Short names

    tcl

  Filenames

    *.tcl, *.rvt

  MIME types

    text/x-tcl, text/x-script.tcl, application/x-tcl

  For Tcl source code.

  New in version 0.10.

## Lexer for TEAL

class pygments.lexers.teal.TealLexer
  Short names

    teal

  Filenames

    *.teal

  MIME types

    None

  For the Transaction Execution Approval Language (TEAL) <https://developer.algorand.org/docs/reference/teal/specification/>

  For more information about the grammar, see: https://github.com/algorand/go-algorand/blob/master/data/transactions/logic/assembler.go

  New in version 2.9.

## Lexers for various template engines’ markup

class pygments.lexers.templates.Angular2HtmlLexer
  Short names

    html+ng2

  Filenames

    *.ng2

  MIME types

    None

  Subclass of the Angular2Lexer that highlights unlexed data with the HtmlLexer.

  New in version 2.0.

class pygments.lexers.templates.Angular2Lexer
  Short names

    ng2

  Filenames

    None

  MIME types

    None

  Generic angular2 template lexer.

  Highlights only the Angular template tags (stuff between {{ and }} and special attributes: ‘(event)=’, ‘[property]=’, ‘[(twoWayBinding)]=’). Everything else is left for a delegating lexer.

  New in version 2.1.

class pygments.lexers.templates.CheetahHtmlLexer
  Short names

    html+cheetah, html+spitfire, htmlcheetah

  Filenames

    None

  MIME types

    text/html+cheetah, text/html+spitfire

  Subclass of the CheetahLexer that highlights unlexed data with the HtmlLexer.

class pygments.lexers.templates.CheetahJavascriptLexer
  Short names

    javascript+cheetah, js+cheetah, javascript+spitfire, js+spitfire

  Filenames

    None

  MIME types

    application/x-javascript+cheetah, text/x-javascript+cheetah, text/javascript+cheetah, application/x-javascript+spitfire, text/x-javascript+spitfire, text/javascript+spitfire

  Subclass of the CheetahLexer that highlights unlexed data with the JavascriptLexer.

class pygments.lexers.templates.CheetahLexer
  Short names

    cheetah, spitfire

  Filenames

    *.tmpl, *.spt

  MIME types

    application/x-cheetah, application/x-spitfire

  Generic cheetah templates lexer. Code that isn’t Cheetah markup is yielded as Token.Other. This also works for spitfire templates which use the same syntax.

class pygments.lexers.templates.CheetahXmlLexer
  Short names

    xml+cheetah, xml+spitfire

  Filenames

    None

  MIME types

    application/xml+cheetah, application/xml+spitfire

  Subclass of the CheetahLexer that highlights unlexed data with the XmlLexer.

class pygments.lexers.templates.ColdfusionCFCLexer
  Short names

    cfc

  Filenames

    *.cfc

  MIME types

    None

  Coldfusion markup/script components

  New in version 2.0.

class pygments.lexers.templates.ColdfusionHtmlLexer
  Short names

    cfm

  Filenames

    *.cfm, *.cfml

  MIME types

    application/x-coldfusion

  Coldfusion markup in html

class pygments.lexers.templates.ColdfusionLexer
  Short names

    cfs

  Filenames

    None

  MIME types

    None

  Coldfusion statements

class pygments.lexers.templates.CssDjangoLexer
  Short names

    css+django, css+jinja

  Filenames

    None

  MIME types

    text/css+django, text/css+jinja

  Subclass of the DjangoLexer that highlights unlexed data with the CssLexer.

class pygments.lexers.templates.CssErbLexer
  Short names

    css+ruby, css+erb

  Filenames

    None

  MIME types

    text/css+ruby

  Subclass of ErbLexer which highlights unlexed data with the CssLexer.

class pygments.lexers.templates.CssGenshiLexer
  Short names

    css+genshitext, css+genshi

  Filenames

    None

  MIME types

    text/css+genshi

  A lexer that highlights CSS definitions in genshi text templates.

class pygments.lexers.templates.CssPhpLexer
  Short names

    css+php

  Filenames

    None

  MIME types

    text/css+php

  Subclass of PhpLexer which highlights unmatched data with the CssLexer.

class pygments.lexers.templates.CssSmartyLexer
  Short names

    css+smarty

  Filenames

    None

  MIME types

    text/css+smarty

  Subclass of the SmartyLexer that highlights unlexed data with the CssLexer.

class pygments.lexers.templates.DjangoLexer
  Short names

    django, jinja

  Filenames

    None

  MIME types

    application/x-django-templating, application/x-jinja

  Generic django and jinja template lexer.

  It just highlights django/jinja code between the preprocessor directives, other data is left untouched by the lexer.

class pygments.lexers.templates.ErbLexer
  Short names

    erb

  Filenames

    None

  MIME types

    application/x-ruby-templating

  Generic ERB (Ruby Templating) lexer.

  Just highlights ruby code between the preprocessor directives, other data is left untouched by the lexer.

  All options are also forwarded to the RubyLexer.

class pygments.lexers.templates.EvoqueHtmlLexer
  Short names

    html+evoque

  Filenames

    *.html

  MIME types

    text/html+evoque

  Subclass of the EvoqueLexer that highlights unlexed data with the HtmlLexer.

  New in version 1.1.

class pygments.lexers.templates.EvoqueLexer
  Short names

    evoque

  Filenames

    *.evoque

  MIME types

    application/x-evoque

  For files using the Evoque templating system.

  New in version 1.1.

class pygments.lexers.templates.EvoqueXmlLexer
  Short names

    xml+evoque

  Filenames

    *.xml

  MIME types

    application/xml+evoque

  Subclass of the EvoqueLexer that highlights unlexed data with the XmlLexer.

  New in version 1.1.

class pygments.lexers.templates.GenshiLexer
  Short names

    genshi, kid, xml+genshi, xml+kid

  Filenames

    *.kid

  MIME types

    application/x-genshi, application/x-kid

  A lexer that highlights genshi and kid kid XML templates.

class pygments.lexers.templates.GenshiTextLexer
  Short names

    genshitext

  Filenames

    None

  MIME types

    application/x-genshi-text, text/x-genshi

  A lexer that highlights genshi text templates.

class pygments.lexers.templates.HandlebarsHtmlLexer
  Short names

    html+handlebars

  Filenames

    *.handlebars, *.hbs

  MIME types

    text/html+handlebars, text/x-handlebars-template

  Subclass of the HandlebarsLexer that highlights unlexed data with the HtmlLexer.

  New in version 2.0.

class pygments.lexers.templates.HandlebarsLexer
  Short names

    handlebars

  Filenames

    None

  MIME types

    None

  Generic handlebars <http://handlebarsjs.com/> template lexer.

  Highlights only the Handlebars template tags (stuff between {{ and }}). Everything else is left for a delegating lexer.

  New in version 2.0.

class pygments.lexers.templates.HtmlDjangoLexer
  Short names

    html+django, html+jinja, htmldjango

  Filenames

    None

  MIME types

    text/html+django, text/html+jinja

  Subclass of the DjangoLexer that highlights unlexed data with the HtmlLexer.

  Nested Javascript and CSS is highlighted too.

class pygments.lexers.templates.HtmlGenshiLexer
  Short names

    html+genshi, html+kid

  Filenames

    None

  MIME types

    text/html+genshi

  A lexer that highlights genshi and kid kid HTML templates.

class pygments.lexers.templates.HtmlPhpLexer
  Short names

    html+php

  Filenames

    *.phtml

  MIME types

    application/x-php, application/x-httpd-php, application/x-httpd-php3, application/x-httpd-php4, application/x-httpd-php5

  Subclass of PhpLexer that highlights unhandled data with the HtmlLexer.

  Nested Javascript and CSS is highlighted too.

class pygments.lexers.templates.HtmlSmartyLexer
  Short names

    html+smarty

  Filenames

    None

  MIME types

    text/html+smarty

  Subclass of the SmartyLexer that highlights unlexed data with the HtmlLexer.

  Nested Javascript and CSS is highlighted too.

class pygments.lexers.templates.JavascriptDjangoLexer
  Short names

    javascript+django, js+django, javascript+jinja, js+jinja

  Filenames

    None

  MIME types

    application/x-javascript+django, application/x-javascript+jinja, text/x-javascript+django, text/x-javascript+jinja, text/javascript+django, text/javascript+jinja

  Subclass of the DjangoLexer that highlights unlexed data with the JavascriptLexer.

class pygments.lexers.templates.JavascriptErbLexer
  Short names

    javascript+ruby, js+ruby, javascript+erb, js+erb

  Filenames

    None

  MIME types

    application/x-javascript+ruby, text/x-javascript+ruby, text/javascript+ruby

  Subclass of ErbLexer which highlights unlexed data with the JavascriptLexer.

class pygments.lexers.templates.JavascriptGenshiLexer
  Short names

    js+genshitext, js+genshi, javascript+genshitext, javascript+genshi

  Filenames

    None

  MIME types

    application/x-javascript+genshi, text/x-javascript+genshi, text/javascript+genshi

  A lexer that highlights javascript code in genshi text templates.

class pygments.lexers.templates.JavascriptPhpLexer
  Short names

    javascript+php, js+php

  Filenames

    None

  MIME types

    application/x-javascript+php, text/x-javascript+php, text/javascript+php

  Subclass of PhpLexer which highlights unmatched data with the JavascriptLexer.

class pygments.lexers.templates.JavascriptSmartyLexer
  Short names

    javascript+smarty, js+smarty

  Filenames

    None

  MIME types

    application/x-javascript+smarty, text/x-javascript+smarty, text/javascript+smarty

  Subclass of the SmartyLexer that highlights unlexed data with the JavascriptLexer.

class pygments.lexers.templates.JspLexer
  Short names

    jsp

  Filenames

    *.jsp

  MIME types

    application/x-jsp

  Lexer for Java Server Pages.

  New in version 0.7.

class pygments.lexers.templates.LassoCssLexer
  Short names

    css+lasso

  Filenames

    None

  MIME types

    text/css+lasso

  Subclass of the LassoLexer which highlights unhandled data with the CssLexer.

  New in version 1.6.

class pygments.lexers.templates.LassoHtmlLexer
  Short names

    html+lasso

  Filenames

    None

  MIME types

    text/html+lasso, application/x-httpd-lasso, application/x-httpd-lasso[89]

  Subclass of the LassoLexer which highlights unhandled data with the HtmlLexer.

  Nested JavaScript and CSS is also highlighted.

  New in version 1.6.

class pygments.lexers.templates.LassoJavascriptLexer
  Short names

    javascript+lasso, js+lasso

  Filenames

    None

  MIME types

    application/x-javascript+lasso, text/x-javascript+lasso, text/javascript+lasso

  Subclass of the LassoLexer which highlights unhandled data with the JavascriptLexer.

  New in version 1.6.

class pygments.lexers.templates.LassoXmlLexer
  Short names

    xml+lasso

  Filenames

    None

  MIME types

    application/xml+lasso

  Subclass of the LassoLexer which highlights unhandled data with the XmlLexer.

  New in version 1.6.

class pygments.lexers.templates.LiquidLexer
  Short names

    liquid

  Filenames

    *.liquid

  MIME types

    None

  Lexer for Liquid templates.

  New in version 2.0.

class pygments.lexers.templates.MakoCssLexer
  Short names

    css+mako

  Filenames

    None

  MIME types

    text/css+mako

  Subclass of the MakoLexer that highlights unlexed data with the CssLexer.

  New in version 0.7.

class pygments.lexers.templates.MakoHtmlLexer
  Short names

    html+mako

  Filenames

    None

  MIME types

    text/html+mako

  Subclass of the MakoLexer that highlights unlexed data with the HtmlLexer.

  New in version 0.7.

class pygments.lexers.templates.MakoJavascriptLexer
  Short names

    javascript+mako, js+mako

  Filenames

    None

  MIME types

    application/x-javascript+mako, text/x-javascript+mako, text/javascript+mako

  Subclass of the MakoLexer that highlights unlexed data with the JavascriptLexer.

  New in version 0.7.

class pygments.lexers.templates.MakoLexer
  Short names

    mako

  Filenames

    *.mao

  MIME types

    application/x-mako

  Generic mako templates lexer. Code that isn’t Mako markup is yielded as Token.Other.

  New in version 0.7.

class pygments.lexers.templates.MakoXmlLexer
  Short names

    xml+mako

  Filenames

    None

  MIME types

    application/xml+mako

  Subclass of the MakoLexer that highlights unlexed data with the XmlLexer.

  New in version 0.7.

class pygments.lexers.templates.MasonLexer
  Short names

    mason

  Filenames

    *.m, *.mhtml, *.mc, *.mi, autohandler, dhandler

  MIME types

    application/x-mason

  Generic mason templates lexer. Stolen from Myghty lexer. Code that isn’t Mason markup is HTML.

  New in version 1.4.

class pygments.lexers.templates.MyghtyCssLexer
  Short names

    css+myghty

  Filenames

    None

  MIME types

    text/css+myghty

  Subclass of the MyghtyLexer that highlights unlexed data with the CssLexer.

  New in version 0.6.

class pygments.lexers.templates.MyghtyHtmlLexer
  Short names

    html+myghty

  Filenames

    None

  MIME types

    text/html+myghty

  Subclass of the MyghtyLexer that highlights unlexed data with the HtmlLexer.

  New in version 0.6.

class pygments.lexers.templates.MyghtyJavascriptLexer
  Short names

    javascript+myghty, js+myghty

  Filenames

    None

  MIME types

    application/x-javascript+myghty, text/x-javascript+myghty, text/javascript+mygthy

  Subclass of the MyghtyLexer that highlights unlexed data with the JavascriptLexer.

  New in version 0.6.

class pygments.lexers.templates.MyghtyLexer
  Short names

    myghty

  Filenames

    *.myt, autodelegate

  MIME types

    application/x-myghty

  Generic myghty templates lexer. Code that isn’t Myghty markup is yielded as Token.Other.

  New in version 0.6.

class pygments.lexers.templates.MyghtyXmlLexer
  Short names

    xml+myghty

  Filenames

    None

  MIME types

    application/xml+myghty

  Subclass of the MyghtyLexer that highlights unlexed data with the XmlLexer.

  New in version 0.6.

class pygments.lexers.templates.RhtmlLexer
  Short names

    rhtml, html+erb, html+ruby

  Filenames

    *.rhtml

  MIME types

    text/html+ruby

  Subclass of the ERB lexer that highlights the unlexed data with the html lexer.

  Nested Javascript and CSS is highlighted too.

class pygments.lexers.templates.SmartyLexer
  Short names

    smarty

  Filenames

    *.tpl

  MIME types

    application/x-smarty

  Generic Smarty template lexer.

  Just highlights smarty code between the preprocessor directives, other data is left untouched by the lexer.

class pygments.lexers.templates.SspLexer
  Short names

    ssp

  Filenames

    *.ssp

  MIME types

    application/x-ssp

  Lexer for Scalate Server Pages.

  New in version 1.4.

class pygments.lexers.templates.TeaTemplateLexer
  Short names

    tea

  Filenames

    *.tea

  MIME types

    text/x-tea

  Lexer for Tea Templates.

  New in version 1.5.

class pygments.lexers.templates.TwigHtmlLexer
  Short names

    html+twig

  Filenames

    *.twig

  MIME types

    text/html+twig

  Subclass of the TwigLexer that highlights unlexed data with the HtmlLexer.

  New in version 2.0.

class pygments.lexers.templates.TwigLexer
  Short names

    twig

  Filenames

    None

  MIME types

    application/x-twig

  Twig template lexer.

  It just highlights Twig code between the preprocessor directives, other data is left untouched by the lexer.

  New in version 2.0.

class pygments.lexers.templates.VelocityHtmlLexer
  Short names

    html+velocity

  Filenames

    None

  MIME types

    text/html+velocity

  Subclass of the VelocityLexer that highlights unlexed data with the HtmlLexer.

class pygments.lexers.templates.VelocityLexer
  Short names

    velocity

  Filenames

    *.vm, *.fhtml

  MIME types

    None

  Generic Velocity template lexer.

  Just highlights velocity directives and variable references, other data is left untouched by the lexer.

class pygments.lexers.templates.VelocityXmlLexer
  Short names

    xml+velocity

  Filenames

    None

  MIME types

    application/xml+velocity

  Subclass of the VelocityLexer that highlights unlexed data with the XmlLexer.

class pygments.lexers.templates.XmlDjangoLexer
  Short names

    xml+django, xml+jinja

  Filenames

    None

  MIME types

    application/xml+django, application/xml+jinja

  Subclass of the DjangoLexer that highlights unlexed data with the XmlLexer.

class pygments.lexers.templates.XmlErbLexer
  Short names

    xml+ruby, xml+erb

  Filenames

    None

  MIME types

    application/xml+ruby

  Subclass of ErbLexer which highlights data outside preprocessor directives with the XmlLexer.

class pygments.lexers.templates.XmlPhpLexer
  Short names

    xml+php

  Filenames

    None

  MIME types

    application/xml+php

  Subclass of PhpLexer that highlights unhandled data with the XmlLexer.

class pygments.lexers.templates.XmlSmartyLexer
  Short names

    xml+smarty

  Filenames

    None

  MIME types

    application/xml+smarty

  Subclass of the SmartyLexer that highlights unlexed data with the XmlLexer.

class pygments.lexers.templates.YamlJinjaLexer
  Short names

    yaml+jinja, salt, sls

  Filenames

    *.sls

  MIME types

    text/x-yaml+jinja, text/x-sls

  Subclass of the DjangoLexer that highlights unlexed data with the YamlLexer.

  Commonly used in Saltstack salt states.

  New in version 2.0.

## Lexer for Tera Term macro files

class pygments.lexers.teraterm.TeraTermLexer
  Short names

    teratermmacro, teraterm, ttl

  Filenames

    *.ttl

  MIME types

    text/x-teratermmacro

  For Tera Term macro source code.

  New in version 2.4.

## Lexers for testing languages

class pygments.lexers.testing.GherkinLexer
  Short names

    gherkin, cucumber

  Filenames

    *.feature

  MIME types

    text/x-gherkin

  For Gherkin <https://github.com/aslakhellesoy/gherkin/> syntax.

  New in version 1.2.

class pygments.lexers.testing.TAPLexer
  Short names

    tap

  Filenames

    *.tap

  MIME types

    None

  For Test Anything Protocol (TAP) output.

  New in version 2.1.

## Lexers for languages related to text processing

class pygments.lexers.textedit.AwkLexer
  Short names

    awk, gawk, mawk, nawk

  Filenames

    *.awk

  MIME types

    application/x-awk

  For Awk scripts.

  New in version 1.5.

class pygments.lexers.textedit.SedLexer
  Short names

    sed, gsed, ssed

  Filenames

    *.sed, *.[gs]sed

  MIME types

    text/x-sed

  Lexer for Sed script files.

class pygments.lexers.textedit.VimLexer
  Short names

    vim

  Filenames

    *.vim, .vimrc, .exrc, .gvimrc, vimrc, exrc, gvimrc, vimrc, gvimrc

  MIME types

    text/x-vim

  Lexer for VimL script files.

  New in version 0.8.

## Lexers for various text formats

class pygments.lexers.textfmts.GettextLexer
  Short names

    pot, po

  Filenames

    *.pot, *.po

  MIME types

    application/x-gettext, text/x-gettext, text/gettext

  Lexer for Gettext catalog files.

  New in version 0.9.

class pygments.lexers.textfmts.HttpLexer
  Short names

    http

  Filenames

    None

  MIME types

    None

  Lexer for HTTP sessions.

  New in version 1.5.

class pygments.lexers.textfmts.IrcLogsLexer
  Short names

    irc

  Filenames

    *.weechatlog

  MIME types

    text/x-irclog

  Lexer for IRC logs in irssi, xchat or weechat style.

class pygments.lexers.textfmts.KernelLogLexer
  Short names

    kmsg, dmesg

  Filenames

    *.kmsg, *.dmesg

  MIME types

    None

  For Linux Kernel log (“dmesg”) output.

  New in version 2.6.

class pygments.lexers.textfmts.NotmuchLexer
  Short names

    notmuch

  Filenames

    None

  MIME types

    None

  For Notmuch email text format.

  New in version 2.5.

  Additional options accepted:

  body_lexer

    If given, highlight the contents of the message body with the specified lexer, else guess it according to the body content (default: `None`).

class pygments.lexers.textfmts.TodotxtLexer
  Short names

    todotxt

  Filenames

    todo.txt, *.todotxt

  MIME types

    text/x-todo

  Lexer for Todo.txt todo list format.

  New in version 2.0.

## Lexers for theorem-proving languages

class pygments.lexers.theorem.CoqLexer
  Short names

    coq

  Filenames

    *.v

  MIME types

    text/x-coq

  For the Coq theorem prover.

  New in version 1.5.

class pygments.lexers.theorem.IsabelleLexer
  Short names

    isabelle

  Filenames

    *.thy

  MIME types

    text/x-isabelle

  For the Isabelle proof assistant.

  New in version 2.0.

class pygments.lexers.theorem.LeanLexer
  Short names

    lean

  Filenames

    *.lean

  MIME types

    text/x-lean

  For the Lean theorem prover.

  New in version 2.0.

## Lexers for the ThingsDB language

class pygments.lexers.thingsdb.ThingsDBLexer
  Short names

    ti, thingsdb

  Filenames

    *.ti

  MIME types

    None

  Lexer for the ThingsDB programming language.

  New in version 2.9.

## Lexer for Typographic Number Theory

class pygments.lexers.tnt.TNTLexer
  Short names

    tnt

  Filenames

    *.tnt

  MIME types

    None

  Lexer for Typographic Number Theory, as described in the book Gödel, Escher, Bach, by Douglas R. Hofstadter, or as summarized here: https://github.com/Kenny2github/language-tnt/blob/master/README.md#summary-of-tnt

  New in version 2.7.

## Lexer for RiverBed’s TrafficScript (RTS) language

class pygments.lexers.trafficscript.RtsLexer
  Short names

    trafficscript, rts

  Filenames

    *.rts

  MIME types

    None

  For Riverbed Stingray Traffic Manager

  New in version 2.1.

## Lexers for TypoScript

class pygments.lexers.typoscript.TypoScriptCssDataLexer
  Short names

    typoscriptcssdata

  Filenames

    None

  MIME types

    None

  Lexer that highlights markers, constants and registers within css blocks.

  New in version 2.2.

class pygments.lexers.typoscript.TypoScriptHtmlDataLexer
  Short names

    typoscripthtmldata

  Filenames

    None

  MIME types

    None

  Lexer that highlights markers, constants and registers within html tags.

  New in version 2.2.

class pygments.lexers.typoscript.TypoScriptLexer
  Short names

    typoscript

  Filenames

    *.typoscript

  MIME types

    text/x-typoscript

  Lexer for TypoScript code.

  http://docs.typo3.org/typo3cms/TyposcriptReference/

  New in version 2.2.

## Lexers for the Icon and Unicon languages, including ucode VM

class pygments.lexers.unicon.IconLexer
  Short names

    icon

  Filenames

    *.icon, *.ICON

  MIME types

    None

  Lexer for Icon.

  New in version 1.6.

class pygments.lexers.unicon.UcodeLexer
  Short names

    ucode

  Filenames

    *.u, *.u1, *.u2

  MIME types

    None

  Lexer for Icon ucode files.

  New in version 2.4.

class pygments.lexers.unicon.UniconLexer
  Short names

    unicon

  Filenames

    *.icn

  MIME types

    text/unicon

  For Unicon source code.

  New in version 2.4.

## Lexers for UrbiScript language

class pygments.lexers.urbi.UrbiscriptLexer
  Short names

    urbiscript

  Filenames

    *.u

  MIME types

    application/x-urbiscript

  For UrbiScript source code.

  New in version 1.5.

## The module that parses Pixar’s Universal Scene Description file format

class pygments.lexers.usd.UsdLexer
  Short names

    usd, usda

  Filenames

    *.usd, *.usda

  MIME types

    None

  A lexer that parses Pixar’s Universal Scene Description file format.

  New in version 2.6.

## Lexers for Varnish configuration

class pygments.lexers.varnish.VCLLexer
  Short names

    vcl

  Filenames

    *.vcl

  MIME types

    text/x-vclsrc

  For Varnish Configuration Language (VCL).

  New in version 2.2.

class pygments.lexers.varnish.VCLSnippetLexer
  Short names

    vclsnippets, vclsnippet

  Filenames

    None

  MIME types

    text/x-vclsnippet

  For Varnish Configuration Language snippets.

  New in version 2.2.

## Lexer for Intermediate Verification Languages (IVLs)

class pygments.lexers.verification.BoogieLexer
  Short names

    boogie

  Filenames

    *.bpl

  MIME types

    None

  For Boogie source code.

  New in version 2.1.

class pygments.lexers.verification.SilverLexer
  Short names

    silver

  Filenames

    *.sil, *.vpr

  MIME types

    None

  For Silver source code.

  New in version 2.2.

## Lexers for the WebAssembly text format

class pygments.lexers.webassembly.WatLexer
  Short names

    wast, wat

  Filenames

    *.wat, *.wast

  MIME types

    None

  Lexer for the WebAssembly text format.

  New in version 2.9.

## Lexers for Web IDL, including some extensions

class pygments.lexers.webidl.WebIDLLexer
  Short names

    webidl

  Filenames

    *.webidl

  MIME types

    None

  For Web IDL.

  New in version 2.6.

## Lexers for misc. web stuff

class pygments.lexers.webmisc.CirruLexer
  Short names

    cirru

  Filenames

    *.cirru

  MIME types

    text/x-cirru

  Syntax rules of Cirru can be found at: http://cirru.org/

  - using `()` for expressions, but restricted in a same line

  - using `""` for strings, with `\` for escaping chars

  - using `$` as folding operator

  - using `,` as unfolding operator

  - using indentations for nested blocks

  New in version 2.0.

class pygments.lexers.webmisc.DuelLexer
  Short names

    duel, jbst, jsonml+bst

  Filenames

    *.duel, *.jbst

  MIME types

    text/x-duel, text/x-jbst

  Lexer for Duel Views Engine (formerly JBST) markup with JavaScript code blocks. See http://duelengine.org/. See http://jsonml.org/jbst/.

  New in version 1.4.

class pygments.lexers.webmisc.QmlLexer
  Short names

    qml, qbs

  Filenames

    *.qml, *.qbs

  MIME types

    application/x-qml, application/x-qt.qbs+qml

  For QML files. See http://doc.qt.digia.com/4.7/qdeclarativeintroduction.html.

  New in version 1.6.

class pygments.lexers.webmisc.SlimLexer
  Short names

    slim

  Filenames

    *.slim

  MIME types

    text/x-slim

  For Slim markup.

  New in version 2.0.

class pygments.lexers.webmisc.XQueryLexer
  Short names

    xquery, xqy, xq, xql, xqm

  Filenames

    *.xqy, *.xquery, *.xq, *.xql, *.xqm

  MIME types

    text/xquery, application/xquery

  An XQuery lexer, parsing a stream and outputting the tokens needed to highlight xquery code.

  New in version 1.4.

## Lexers for the Whiley language

class pygments.lexers.whiley.WhileyLexer
  Short names

    whiley

  Filenames

    *.whiley

  MIME types

    text/x-whiley

  Lexer for the Whiley programming language.

  New in version 2.2.

## Lexers for the X10 programming language

class pygments.lexers.x10.X10Lexer
  Short names

    x10, xten

  Filenames

    *.x10

  MIME types

    text/x-x10

  For the X10 language.

  New in version 0.1.

## Lexers for Xorg configs

class pygments.lexers.xorg.XorgLexer
  Short names

    xorg.conf

  Filenames

    xorg.conf

  MIME types

    None

  Lexer for xorg.conf file.

## Lexer for the YANG 1.1 modeling language. See RFC 7950

class pygments.lexers.yang.YangLexer
  Short names

    yang

  Filenames

    *.yang

  MIME types

    application/yang

  Lexer for YANG, based on RFC7950

  New in version 2.7.

## Lexers for Zig

class pygments.lexers.zig.ZigLexer
  Short names

    zig

  Filenames

    *.zig

  MIME types

    text/zig

  For Zig source code.

  grammar: https://ziglang.org/documentation/master/#Grammar

## Iterating over all lexers

New in version 0.6.

To get all lexers (both the builtin and the plugin ones), you can use the get_all_lexers() function from the pygments.lexers module:

    >>> from pygments.lexers import get_all_lexers
    >>> i = get_all_lexers()
    >>> i.next()
    ('Diff', ('diff',), ('*.diff', '*.patch'), ('text/x-diff', 'text/x-patch'))
    >>> i.next()
    ('Delphi', ('delphi', 'objectpascal', 'pas', 'pascal'), ('*.pas',), ('text/x-pascal',))
    >>> i.next()
    ('XML+Ruby', ('xml+ruby', 'xml+erb'), (), ())

As you can see, the return value is an iterator which yields tuples in the form `(name, aliases, filetypes, mimetypes)`.