Парсеры

Помимо вики-разметки МойнМойн, используемой по умолчанию, различные обработчики входных форматов (далее называемые парсерами) позволяют пользователям иметь на вики данные в различных форматах (как в виде отдельных страниц, так и в качестве частей внутри других страниц, если синтаксис этих страниц поддерживает такую возможность).

Схема работы и использование парсеров

Парсеры обрабатывают поток во входном формате и генерируют набор вызовов для генераторов выходного формата («formatter») для получения итоговой страницы. Парсер можно использовать одним из двух способов:

  1. Указание инструкции #format

    Инструкция #format может использоваться для указания МойнМойн, какой парсер должен использоваться для обработки страницы. По умолчанию это парсер вики-разметки Мойн-Мойн — wiki.

  2. Блок с указанным парсером — см. КакФорматировать

    При использовании блока с указанием парсера, он может применяться только к части страницы. Используемый парсер указывается в параметре блока (в синтаксисе wiki — сразу после открывающей конструкции с использованием shebang, в creole — на следующей строке с использованием shebang; shebang используется по аналогии с UNIX, где он используется для указания интерпретатора скриптового файла)

Пример: использование инструкции

Здесь в качестве примера выступает отдельная страница:

#format creole
... **полужирное начертание** ...

Пример: блок с указанием парсера

В данном примере подразумевается, что это — часть вики-страницы:

Будет отображно как:

Вложние блоков с указанием парсера

Существует два способа решения проблемы с вложением блоков:

Для дополнительной информации по разметке см. КакРедактировать.

Парсеры для написания текста вики-страницы

Ряд парсеров предназначен для использования в нормальном тексте страницы (т. е. как документ):

Парсер CSV

Парсер CSV работает с так называемыми разделенными запятыми значениями, но запятая может быть заменена точкой с запятой. Первая строка рассматривается, как разделенные названия колонок, которые отобразятся в полужирном начертании; если таблица не должна содержать шапку, то достаточно оставить пустой первую строку.

При указании парсера можно задавать следующие параметры:

Пример использования парсера (см. исходный текст страницы для разметки): фрагмент истории изменений МойнМойн 1.3:

Номер патча Описание Автор
Дата
patch-366 make _normalize_text public method Nir Soffer 2004-11-30 19:11:51 GMT
patch-367 fixed failing test wikiutil: good system page names Nir Soffer 2004-11-30 19:15:52 GMT
patch-368 Fixed DeprecationWarning in RandomPage.py and an unused import in twistedmoin.py Alexander Schremmer 2004-11-30 22:58:44 GMT
patch-369 remove duplicate code in formatter.base Thomas Waldmann 2004-12-01 00:14:21 GMT
patch-370 fixed long int in mig3 Thomas Waldmann 2004-12-01 01:51:50 GMT
patch-371 fixed unicode error on eventlog Nir Soffer 2004-12-01 14:46:29 GMT
patch-372 fixed util.web.makeQueryString and Page.url Nir Soffer 2004-12-01 15:48:55 GMT
patch-373 fixed again non ascii http_referer Nir Soffer 2004-12-01 18:55:28 GMT
patch-374 CSV.py supports different separators now Alexander Schremmer 2004-12-01 23:46:17 GMT
patch-375 improved searchform behavior on Mozilla/Firefox Nir Soffer 2004-12-02 04:57:06 GMT
patch-376 More correct script for actions menu init Nir Soffer 2004-12-02 05:07:58 GMT

Пример с использованием параметра парсера link:

{{{#!csv delimiter=, link=Сервер quotechar="
Тип,Сервер
вики,http://moinmo.in MoinMoin
перевод,http://master19.moinmo.in master19
}}}

Будет показан на странице следующим образом:

Тип Сервер
вики MoinMoin
перевод master19

Парсеры diff, cplusplus, python, java, pascal, irc/irssi parsers

Данные парсеры присутствовали в МойнМойн версий старше 1.9 и были реализованы посредством специфичной для МойнМойн реализации парсинга и подсвети синтаксиса.

Начиная с версии 1.9 данные парсеры являются сокращениями для соответствующих лексеров парсера highlight.

Парсер highlight

В состав МойнМойн входит специальный парсер, называемый highlight и использующий Pygments для разбора различных синтаксисов.

При помощи него можно выполнять подсветку кода для различных языков программирования, конфигурационных файлов и других видов используемых текстовых форматов (достаточно указать соответствующее значение имеющееся в столбце «Lexer names» из таблицы ниже).

Аргументы

Поддерживаемые параметры подсветки синтаксиса:

numbers
Добавлять нумерацию строк. по умолчанию — 'on' (добавлять и отображать). Допустимые значение: 'on', 'off' (нумерация не отображается, но возможность её показать сохраняется), 'disable' (возможность нумерации отключается).
start
номер первой строки. по умолчанию 1.
step
шаг нумерации. по умолчанию 1.

Пример использования:

{{{#!highlight python start=127 step=3 numbers=off
class FooBar:
   """ doc string """
}}}

Отображение:

class FooBar:
   """ doc string """

(!) Также можно использовать данный парсер и в инструкции format, например: #format highlight python

Список доступных лексеров highlight

В качестве аргумента парсера highlight можно использовать значения из столбца «Lexer names».

Lexer description Lexer names File patterns Mimetypes
ABAP abap *.abap, *.ABAP text/x-abap
ABNF abnf *.abnf text/x-abnf
ActionScript as, actionscript *.as application/x-actionscript, text/x-actionscript, text/actionscript
ActionScript 3 as3, actionscript3 *.as application/x-actionscript3, text/x-actionscript3, text/actionscript3
Ada ada, ada95, ada2005 *.adb, *.ads, *.ada text/x-ada
ADL adl *.adl, *.adls, *.adlf, *.adlx
Agda agda *.agda text/x-agda
Aheui aheui *.aheui
Alloy alloy *.als text/x-alloy
AmbientTalk at, ambienttalk, ambienttalk/2 *.at text/x-ambienttalk
Ampl ampl *.run
Angular2 ng2
ANTLR antlr
ANTLR With ActionScript Target antlr-as, antlr-actionscript *.G, *.g
ANTLR With C# Target antlr-csharp, antlr-c# *.G, *.g
ANTLR With CPP Target antlr-cpp *.G, *.g
ANTLR With Java Target antlr-java *.G, *.g
ANTLR With ObjectiveC Target antlr-objc *.G, *.g
ANTLR With Perl Target antlr-perl *.G, *.g
ANTLR With Python Target antlr-python *.G, *.g
ANTLR With Ruby Target antlr-ruby, antlr-rb *.G, *.g
ApacheConf apacheconf, aconf, apache .htaccess, apache.conf, apache2.conf text/x-apacheconf
APL apl *.apl
AppleScript applescript *.applescript
Arduino arduino *.ino text/x-arduino
AspectJ aspectj *.aj text/x-aspectj
aspx-cs aspx-cs *.aspx, *.asax, *.ascx, *.ashx, *.asmx, *.axd
aspx-vb aspx-vb *.aspx, *.asax, *.ascx, *.ashx, *.asmx, *.axd
Asymptote asy, asymptote *.asy text/x-asymptote
autohotkey ahk, autohotkey *.ahk, *.ahkl text/x-autohotkey
AutoIt autoit *.au3 text/x-autoit
Awk awk, gawk, mawk, nawk *.awk application/x-awk
Base Makefile basemake
Bash bash, sh, ksh, zsh, shell *.sh, *.ksh, *.bash, *.ebuild, *.eclass, *.exheres-0, *.exlib, *.zsh, .bashrc, bashrc, .bash_*, bash_*, zshrc, .zshrc, PKGBUILD application/x-sh, application/x-shellscript
Bash Session console, shell-session *.sh-session, *.shell-session application/x-shell-session, application/x-sh-session
Batchfile bat, batch, dosbatch, winbatch *.bat, *.cmd application/x-dos-batch
BBCode bbcode text/x-bbcode
BC bc *.bc
Befunge befunge *.befunge application/x-befunge
BibTeX bib, bibtex *.bib text/x-bibtex
BlitzBasic blitzbasic, b3d, bplus *.bb, *.decls text/x-bb
BlitzMax blitzmax, bmax *.bmx text/x-bmx
BNF bnf *.bnf text/x-bnf
Boo boo *.boo text/x-boo
Boogie boogie *.bpl
Brainfuck brainfuck, bf *.bf, *.b application/x-brainfuck
Bro bro *.bro
BST bst, bst-pybtex *.bst
BUGS bugs, winbugs, openbugs *.bug
C c *.c, *.h, *.idc text/x-chdr, text/x-csrc
C# csharp, c# *.cs text/x-csharp
C++ cpp, c++ *.cpp, *.hpp, *.c++, *.h++, *.cc, *.hh, *.cxx, *.hxx, *.C, *.H, *.cp, *.CPP text/x-c++hdr, text/x-c++src
c-objdump c-objdump *.c-objdump text/x-c-objdump
ca65 assembler ca65 *.s
cADL cadl *.cadl
CAmkES camkes, idl4 *.camkes, *.idl4
Cap'n Proto capnp *.capnp
CapDL capdl *.cdl
CBM BASIC V2 cbmbas *.bas
Ceylon ceylon *.ceylon text/x-ceylon
CFEngine3 cfengine3, cf3 *.cf
cfstatement cfs
ChaiScript chai, chaiscript *.chai text/x-chaiscript, application/x-chaiscript
Chapel chapel, chpl *.chpl
Cheetah cheetah, spitfire *.tmpl, *.spt application/x-cheetah, application/x-spitfire
Cirru cirru *.cirru text/x-cirru
Clay clay *.clay text/x-clay
Clean clean *.icl, *.dcl
Clojure clojure, clj *.clj text/x-clojure, application/x-clojure
ClojureScript clojurescript, cljs *.cljs text/x-clojurescript, application/x-clojurescript
CMake cmake *.cmake, CMakeLists.txt text/x-cmake
COBOL cobol *.cob, *.COB, *.cpy, *.CPY text/x-cobol
COBOLFree cobolfree *.cbl, *.CBL
CoffeeScript coffee-script, coffeescript, coffee *.coffee text/coffeescript
Coldfusion CFC cfc *.cfc
Coldfusion HTML cfm *.cfm, *.cfml application/x-coldfusion
Common Lisp common-lisp, cl, lisp *.cl, *.lisp text/x-common-lisp
Component Pascal componentpascal, cp *.cp, *.cps text/x-component-pascal
Coq coq *.v text/x-coq
cpp-objdump cpp-objdump, c++-objdumb, cxx-objdump *.cpp-objdump, *.c++-objdump, *.cxx-objdump text/x-cpp-objdump
CPSA cpsa *.cpsa
Crmsh crmsh, pcmk *.crmsh, *.pcmk
Croc croc *.croc text/x-crocsrc
Cryptol cryptol, cry *.cry text/x-cryptol
Crystal cr, crystal *.cr text/x-crystal
Csound Document csound-document, csound-csd *.csd
Csound Orchestra csound, csound-orc *.orc
Csound Score csound-score, csound-sco *.sco
CSS css *.css text/css
CSS+Django/Jinja css+django, css+jinja text/css+django, text/css+jinja
CSS+Genshi Text css+genshitext, css+genshi text/css+genshi
CSS+Lasso css+lasso text/css+lasso
CSS+Mako css+mako text/css+mako
CSS+mozpreproc css+mozpreproc *.css.in
CSS+Myghty css+myghty text/css+myghty
CSS+PHP css+php text/css+php
CSS+Ruby css+erb, css+ruby text/css+ruby
CSS+Smarty css+smarty text/css+smarty
CUDA cuda, cu *.cu, *.cuh text/x-cuda
Cypher cypher *.cyp, *.cypher
Cython cython, pyx, pyrex *.pyx, *.pxd, *.pxi text/x-cython, application/x-cython
D d *.d, *.di text/x-dsrc
d-objdump d-objdump *.d-objdump text/x-d-objdump
Darcs Patch dpatch *.dpatch, *.darcspatch
Dart dart *.dart text/x-dart
Debian Control file control, debcontrol control
Debian Sourcelist sourceslist, sources.list, debsources sources.list
Delphi delphi, pas, pascal, objectpascal *.pas, *.dpr text/x-pascal
dg dg *.dg text/x-dg
Diff diff, udiff *.diff, *.patch text/x-diff, text/x-patch
Django/Jinja django, jinja application/x-django-templating, application/x-jinja
Docker docker, dockerfile Dockerfile, *.docker text/x-dockerfile-config
DTD dtd *.dtd application/xml-dtd
Duel duel, jbst, jsonml+bst *.duel, *.jbst text/x-duel, text/x-jbst
Dylan dylan *.dylan, *.dyl, *.intr text/x-dylan
Dylan session dylan-console, dylan-repl *.dylan-console text/x-dylan-console
DylanLID dylan-lid, lid *.lid, *.hdp text/x-dylan-lid
Earl Grey earl-grey, earlgrey, eg *.eg text/x-earl-grey
Easytrieve easytrieve *.ezt, *.mac text/x-easytrieve
EBNF ebnf *.ebnf text/x-ebnf
eC ec *.ec, *.eh text/x-echdr, text/x-ecsrc
ECL ecl *.ecl application/x-ecl
Eiffel eiffel *.e text/x-eiffel
Elixir elixir, ex, exs *.ex, *.exs text/x-elixir
Elixir iex session iex text/x-elixir-shellsession
Elm elm *.elm text/x-elm
EmacsLisp emacs, elisp, emacs-lisp *.el text/x-elisp, application/x-elisp
Embedded Ragel ragel-em *.rl
ERB erb application/x-ruby-templating
Erlang erlang *.erl, *.hrl, *.es, *.escript text/x-erlang
Erlang erl session erl *.erl-sh text/x-erl-shellsession
Evoque evoque *.evoque application/x-evoque
Ezhil ezhil *.n text/x-ezhil
Factor factor *.factor text/x-factor
Fancy fancy, fy *.fy, *.fancypack text/x-fancysrc
Fantom fan *.fan application/x-fantom
Felix felix, flx *.flx, *.flxh text/x-felix
Fish fish, fishshell *.fish, *.load application/x-fish
Flatline flatline text/x-flatline
Forth forth *.frt, *.fs application/x-forth
Fortran fortran *.f03, *.f90, *.F03, *.F90 text/x-fortran
FortranFixed fortranfixed *.f, *.F
FoxPro foxpro, vfp, clipper, xbase *.PRG, *.prg
FSharp fsharp *.fs, *.fsi text/x-fsharp
GAP gap *.g, *.gd, *.gi, *.gap
GAS gas, asm *.s, *.S text/x-gas
Genshi genshi, kid, xml+genshi, xml+kid *.kid application/x-genshi, application/x-kid
Genshi Text genshitext application/x-genshi-text, text/x-genshi
Gettext Catalog pot, po *.pot, *.po application/x-gettext, text/x-gettext, text/gettext
Gherkin cucumber, gherkin *.feature text/x-gherkin
GLSL glsl *.vert, *.frag, *.geo text/x-glslsrc
Gnuplot gnuplot *.plot, *.plt text/x-gnuplot
Go go *.go text/x-gosrc
Golo golo *.golo
GoodData-CL gooddata-cl *.gdc text/x-gooddata-cl
Gosu gosu *.gs, *.gsx, *.gsp, *.vark text/x-gosu
Gosu Template gst *.gst text/x-gosu-template
Groff groff, nroff, man *.[1234567], *.man application/x-troff, text/troff
Groovy groovy *.groovy, *.gradle text/x-groovy
Haml haml *.haml text/x-haml
Handlebars handlebars
Haskell haskell, hs *.hs text/x-haskell
Haxe hx, haxe, hxsl *.hx, *.hxsl text/haxe, text/x-haxe, text/x-hx
Hexdump hexdump
HSAIL hsail, hsa *.hsail text/x-hsail
HTML html *.html, *.htm, *.xhtml, *.xslt text/html, application/xhtml+xml
HTML + Angular2 html+ng2 *.ng2
HTML+Cheetah html+cheetah, html+spitfire, htmlcheetah text/html+cheetah, text/html+spitfire
HTML+Django/Jinja html+django, html+jinja, htmldjango text/html+django, text/html+jinja
HTML+Evoque html+evoque *.html text/html+evoque
HTML+Genshi html+genshi, html+kid text/html+genshi
HTML+Handlebars html+handlebars *.handlebars, *.hbs text/html+handlebars, text/x-handlebars-template
HTML+Lasso html+lasso text/html+lasso, application/x-httpd-lasso, application/x-httpd-lasso[89]
HTML+Mako html+mako text/html+mako
HTML+Myghty html+myghty text/html+myghty
HTML+PHP html+php *.phtml application/x-php, application/x-httpd-php, application/x-httpd-php3, application/x-httpd-php4, application/x-httpd-php5
HTML+Smarty html+smarty text/html+smarty
HTML+Twig html+twig *.twig text/html+twig
HTML+Velocity html+velocity text/html+velocity
HTTP http
Hxml haxeml, hxml *.hxml
Hy hylang *.hy text/x-hy, application/x-hy
Hybris hybris, hy *.hy, *.hyb text/x-hybris, application/x-hybris
IDL idl *.pro text/idl
Idris idris, idr *.idr text/x-idris
Igor igor, igorpro *.ipf text/ipf
Inform 6 inform6, i6 *.inf
Inform 6 template i6t *.i6t
Inform 7 inform7, i7 *.ni, *.i7x
INI ini, cfg, dosini *.ini, *.cfg, *.inf text/x-ini, text/inf
Io io *.io text/x-iosrc
Ioke ioke, ik *.ik text/x-iokesrc
IRC logs irc *.weechatlog text/x-irclog
Isabelle isabelle *.thy text/x-isabelle
J j *.ijs text/x-j
JAGS jags *.jag, *.bug
Jasmin jasmin, jasminxt *.j
Java java *.java text/x-java
Java Server Page jsp *.jsp application/x-jsp
JavaScript js, javascript *.js, *.jsm application/javascript, application/x-javascript, text/x-javascript, text/javascript
JavaScript+Cheetah js+cheetah, javascript+cheetah, js+spitfire, javascript+spitfire application/x-javascript+cheetah, text/x-javascript+cheetah, text/javascript+cheetah, application/x-javascript+spitfire, text/x-javascript+spitfire, text/javascript+spitfire
JavaScript+Django/Jinja js+django, javascript+django, js+jinja, javascript+jinja application/x-javascript+django, application/x-javascript+jinja, text/x-javascript+django, text/x-javascript+jinja, text/javascript+django, text/javascript+jinja
JavaScript+Genshi Text js+genshitext, js+genshi, javascript+genshitext, javascript+genshi application/x-javascript+genshi, text/x-javascript+genshi, text/javascript+genshi
JavaScript+Lasso js+lasso, javascript+lasso application/x-javascript+lasso, text/x-javascript+lasso, text/javascript+lasso
JavaScript+Mako js+mako, javascript+mako application/x-javascript+mako, text/x-javascript+mako, text/javascript+mako
Javascript+mozpreproc javascript+mozpreproc *.js.in
JavaScript+Myghty js+myghty, javascript+myghty application/x-javascript+myghty, text/x-javascript+myghty, text/javascript+mygthy
JavaScript+PHP js+php, javascript+php application/x-javascript+php, text/x-javascript+php, text/javascript+php
JavaScript+Ruby js+erb, javascript+erb, js+ruby, javascript+ruby application/x-javascript+ruby, text/x-javascript+ruby, text/javascript+ruby
JavaScript+Smarty js+smarty, javascript+smarty application/x-javascript+smarty, text/x-javascript+smarty, text/javascript+smarty
JCL jcl *.jcl text/x-jcl
JSGF jsgf *.jsgf application/jsgf, application/x-jsgf, text/jsgf
JSON json *.json application/json
JSON-LD jsonld, json-ld *.jsonld application/ld+json
JSONBareObject json-object application/json-object
Julia julia, jl *.jl text/x-julia, application/x-julia
Julia console jlcon
Juttle juttle, juttle *.juttle application/juttle, application/x-juttle, text/x-juttle, text/juttle
Kal kal *.kal text/kal, application/kal
Kconfig kconfig, menuconfig, linux-config, kernel-config Kconfig, *Config.in*, external.in*, standard-modules.in text/x-kconfig
Koka koka *.kk, *.kki text/x-koka
Kotlin kotlin *.kt text/x-kotlin
Lasso lasso, lassoscript *.lasso, *.lasso[89] text/x-lasso
Lean lean *.lean text/x-lean
LessCss less *.less text/x-less-css
Lighttpd configuration file lighty, lighttpd text/x-lighttpd-conf
Limbo limbo *.b text/limbo
liquid liquid *.liquid
Literate Agda lagda, literate-agda *.lagda text/x-literate-agda
Literate Cryptol lcry, literate-cryptol, lcryptol *.lcry text/x-literate-cryptol
Literate Haskell lhs, literate-haskell, lhaskell *.lhs text/x-literate-haskell
Literate Idris lidr, literate-idris, lidris *.lidr text/x-literate-idris
LiveScript live-script, livescript *.ls text/livescript
LLVM llvm *.ll text/x-llvm
Logos logos *.x, *.xi, *.xm, *.xmi text/x-logos
Logtalk logtalk *.lgt, *.logtalk text/x-logtalk
LSL lsl *.lsl text/x-lsl
Lua lua *.lua, *.wlua text/x-lua, application/x-lua
Makefile make, makefile, mf, bsdmake *.mak, *.mk, Makefile, makefile, Makefile.*, GNUmakefile text/x-makefile
Mako mako *.mao application/x-mako
MAQL maql *.maql text/x-gooddata-maql, application/x-gooddata-maql
markdown md *.md text/x-markdown
Mask mask *.mask text/x-mask
Mason mason *.m, *.mhtml, *.mc, *.mi, autohandler, dhandler application/x-mason
Mathematica mathematica, mma, nb *.nb, *.cdf, *.nbp, *.ma application/mathematica, application/vnd.wolfram.mathematica, application/vnd.wolfram.mathematica.package, application/vnd.wolfram.cdf
Matlab matlab *.m text/matlab
Matlab session matlabsession
MiniD minid text/x-minidsrc
Modelica modelica *.mo text/x-modelica
Modula-2 modula2, m2 *.def, *.mod text/x-modula2
MoinMoin/Trac Wiki markup trac-wiki, moin text/x-trac-wiki
Monkey monkey *.monkey text/x-monkey
Monte monte *.mt
MOOCode moocode, moo *.moo text/x-moocode
MoonScript moon, moonscript *.moon text/x-moonscript, application/x-moonscript
mozhashpreproc mozhashpreproc
mozpercentpreproc mozpercentpreproc
MQL mql, mq4, mq5, mql4, mql5 *.mq4, *.mq5, *.mqh text/x-mql
Mscgen mscgen, msc *.msc
MSDOS Session doscon
MuPAD mupad *.mu
MXML mxml *.mxml
Myghty myghty *.myt, autodelegate application/x-myghty
MySQL mysql text/x-mysql
NASM nasm *.asm, *.ASM text/x-nasm
NCL ncl *.ncl text/ncl
Nemerle nemerle *.n text/x-nemerle
nesC nesc *.nc text/x-nescsrc
NewLisp newlisp *.lsp, *.nl, *.kif text/x-newlisp, application/x-newlisp
Newspeak newspeak *.ns2 text/x-newspeak
Nginx configuration file nginx nginx.conf text/x-nginx-conf
Nimrod nim, nimrod *.nim, *.nimrod text/x-nim
Nit nit *.nit
Nix nixos, nix *.nix text/x-nix
NSIS nsis, nsi, nsh *.nsi, *.nsh text/x-nsis
NumPy numpy
NuSMV nusmv *.smv
objdump objdump *.objdump text/x-objdump
objdump-nasm objdump-nasm *.objdump-intel text/x-nasm-objdump
Objective-C objective-c, objectivec, obj-c, objc *.m, *.h text/x-objective-c
Objective-C++ objective-c++, objectivec++, obj-c++, objc++ *.mm, *.hh text/x-objective-c++
Objective-J objective-j, objectivej, obj-j, objj *.j text/x-objective-j
OCaml ocaml *.ml, *.mli, *.mll, *.mly text/x-ocaml
Octave octave *.m text/octave
ODIN odin *.odin text/odin
Ooc ooc *.ooc text/x-ooc
Opa opa *.opa text/x-opa
OpenEdge ABL openedge, abl, progress *.p, *.cls text/x-openedge, application/x-openedge
PacmanConf pacmanconf pacman.conf
Pan pan *.pan
ParaSail parasail *.psi, *.psl text/x-parasail
Pawn pawn *.p, *.pwn, *.inc text/x-pawn
Perl perl, pl *.pl, *.pm, *.t text/x-perl, application/x-perl
Perl6 perl6, pl6 *.pl, *.pm, *.nqp, *.p6, *.6pl, *.p6l, *.pl6, *.6pm, *.p6m, *.pm6, *.t text/x-perl6, application/x-perl6
PHP php, php3, php4, php5 *.php, *.php[345], *.inc text/x-php
Pig pig *.pig text/x-pig
Pike pike *.pike, *.pmod text/x-pike
PkgConfig pkgconfig *.pc
PL/pgSQL plpgsql text/x-plpgsql
PostgreSQL console (psql) psql, postgresql-console, postgres-console text/x-postgresql-psql
PostgreSQL SQL dialect postgresql, postgres text/x-postgresql
PostScript postscript, postscr *.ps, *.eps application/postscript
POVRay pov *.pov, *.inc text/x-povray
PowerShell powershell, posh, ps1, psm1 *.ps1, *.psm1 text/x-powershell
PowerShell Session ps1con
Praat praat *.praat, *.proc, *.psc
Prolog prolog *.ecl, *.prolog, *.pro, *.pl text/x-prolog
Properties properties, jproperties *.properties text/x-java-properties
Protocol Buffer protobuf, proto *.proto
Pug pug, jade *.pug, *.jade text/x-pug, text/x-jade
Puppet puppet *.pp
PyPy Log pypylog, pypy *.pypylog application/x-pypylog
Python python, py, sage *.py, *.pyw, *.sc, SConstruct, SConscript, *.tac, *.sage text/x-python, application/x-python
Python 3 python3, py3 text/x-python3, application/x-python3
Python 3.0 Traceback py3tb *.py3tb text/x-python3-traceback
Python console session pycon text/x-python-doctest
Python Traceback pytb *.pytb text/x-python-traceback
QBasic qbasic, basic *.BAS, *.bas text/basic
QML qml, qbs *.qml, *.qbs application/x-qml, application/x-qt.qbs+qml
QVTO qvto, qvt *.qvto
Racket racket, rkt *.rkt, *.rktd, *.rktl text/x-racket, application/x-racket
Ragel ragel
Ragel in C Host ragel-c *.rl
Ragel in CPP Host ragel-cpp *.rl
Ragel in D Host ragel-d *.rl
Ragel in Java Host ragel-java *.rl
Ragel in Objective C Host ragel-objc *.rl
Ragel in Ruby Host ragel-ruby, ragel-rb *.rl
Raw token data raw application/x-pygments-tokens
RConsole rconsole, rout *.Rout
Rd rd *.Rd text/x-r-doc
REBOL rebol *.r, *.r3, *.reb text/x-rebol
Red red, red/system *.red, *.reds text/x-red, text/x-red-system
Redcode redcode *.cw
reg registry *.reg text/x-windows-registry
Relax-NG Compact rnc, rng-compact *.rnc
ResourceBundle resource, resourcebundle *.txt
reStructuredText rst, rest, restructuredtext *.rst, *.rest text/x-rst, text/prs.fallenstein.rst
Rexx rexx, arexx *.rexx, *.rex, *.rx, *.arexx text/x-rexx
RHTML rhtml, html+erb, html+ruby *.rhtml text/html+ruby
Roboconf Graph roboconf-graph *.graph
Roboconf Instances roboconf-instances *.instances
RobotFramework robotframework *.txt, *.robot text/x-robotframework
RPMSpec spec *.spec text/x-rpm-spec
RQL rql *.rql text/x-rql
RSL rsl *.rsl text/rsl
Ruby rb, ruby, duby *.rb, *.rbw, Rakefile, *.rake, *.gemspec, *.rbx, *.duby, Gemfile text/x-ruby, application/x-ruby
Ruby irb session rbcon, irb text/x-ruby-shellsession
Rust rust *.rs, *.rs.in text/rust
S splus, s, r *.S, *.R, .Rhistory, .Rprofile, .Renviron text/S-plus, text/S, text/x-r-source, text/x-r, text/x-R, text/x-r-history, text/x-r-profile
SAS sas *.SAS, *.sas text/x-sas, text/sas, application/x-sas
Sass sass *.sass text/x-sass
Scala scala *.scala text/x-scala
Scalate Server Page ssp *.ssp application/x-ssp
Scaml scaml *.scaml text/x-scaml
Scheme scheme, scm *.scm, *.ss text/x-scheme, application/x-scheme
Scilab scilab *.sci, *.sce, *.tst text/scilab
SCSS scss *.scss text/x-scss
Shen shen *.shen text/x-shen, application/x-shen
Silver silver *.sil, *.vpr
Slim slim *.slim text/x-slim
Smali smali *.smali text/smali
Smalltalk smalltalk, squeak, st *.st text/x-smalltalk
Smarty smarty *.tpl application/x-smarty
Snobol snobol *.snobol text/x-snobol
Snowball snowball *.sbl
SourcePawn sp *.sp text/x-sourcepawn
SPARQL sparql *.rq, *.sparql application/sparql-query
SQL sql *.sql text/x-sql
sqlite3con sqlite3 *.sqlite3-console text/x-sqlite3-console
SquidConf squidconf, squid.conf, squid squid.conf text/x-squidconf
Stan stan *.stan
Standard ML sml *.sml, *.sig, *.fun text/x-standardml, application/x-standardml
Stata stata, do *.do, *.ado text/x-stata, text/stata, application/x-stata
SuperCollider sc, supercollider *.sc, *.scd application/supercollider, text/supercollider
Swift swift *.swift text/x-swift
SWIG swig *.swg, *.i text/swig
systemverilog systemverilog, sv *.sv, *.svh text/x-systemverilog
TADS 3 tads3 *.t
TAP tap *.tap
TASM tasm *.asm, *.ASM, *.tasm text/x-tasm
Tcl tcl *.tcl, *.rvt text/x-tcl, text/x-script.tcl, application/x-tcl
Tcsh tcsh, csh *.tcsh, *.csh application/x-csh
Tcsh Session tcshcon
Tea tea *.tea text/x-tea
Termcap termcap termcap, termcap.src
Terminfo terminfo terminfo, terminfo.src
Terraform terraform, tf *.tf application/x-tf, application/x-terraform
TeX tex, latex *.tex, *.aux, *.toc text/x-tex, text/x-latex
Text only text *.txt text/plain
Thrift thrift *.thrift application/x-thrift
Todotxt todotxt todo.txt, *.todotxt text/x-todo
TrafficScript rts, trafficscript *.rts
Transact-SQL tsql, t-sql *.sql text/x-tsql
Treetop treetop *.treetop, *.tt
Turtle turtle *.ttl text/turtle, application/x-turtle
Twig twig application/x-twig
TypeScript ts, typescript *.ts text/x-typescript
TypoScript typoscript *.ts, *.txt text/x-typoscript
TypoScriptCssData typoscriptcssdata
TypoScriptHtmlData typoscripthtmldata
UrbiScript urbiscript *.u application/x-urbiscript
Vala vala, vapi *.vala, *.vapi text/x-vala
VB.net vb.net, vbnet *.vb, *.bas text/x-vbnet, text/x-vba
VCL vcl *.vcl text/x-vclsrc
VCLSnippets vclsnippets, vclsnippet text/x-vclsnippet
VCTreeStatus vctreestatus
Velocity velocity *.vm, *.fhtml
verilog verilog, v *.v text/x-verilog
VGL vgl *.rpf
vhdl vhdl *.vhdl, *.vhd text/x-vhdl
VimL vim *.vim, .vimrc, .exrc, .gvimrc, _vimrc, _exrc, _gvimrc, vimrc, gvimrc text/x-vim
WDiff wdiff *.wdiff
Whiley whiley *.whiley text/x-whiley
X10 x10, xten *.x10 text/x-x10
XML xml *.xml, *.xsl, *.rss, *.xslt, *.xsd, *.wsdl, *.wsf text/xml, application/xml, image/svg+xml, application/rss+xml, application/atom+xml
XML+Cheetah xml+cheetah, xml+spitfire application/xml+cheetah, application/xml+spitfire
XML+Django/Jinja xml+django, xml+jinja application/xml+django, application/xml+jinja
XML+Evoque xml+evoque *.xml application/xml+evoque
XML+Lasso xml+lasso application/xml+lasso
XML+Mako xml+mako application/xml+mako
XML+Myghty xml+myghty application/xml+myghty
XML+PHP xml+php application/xml+php
XML+Ruby xml+erb, xml+ruby application/xml+ruby
XML+Smarty xml+smarty application/xml+smarty
XML+Velocity xml+velocity application/xml+velocity
XQuery xquery, xqy, xq, xql, xqm *.xqy, *.xquery, *.xq, *.xql, *.xqm text/xquery, application/xquery
XSLT xslt *.xsl, *.xslt, *.xpl application/xsl+xml, application/xslt+xml
Xtend xtend *.xtend text/x-xtend
xtlang extempore *.xtm
XUL+mozpreproc xul+mozpreproc *.xul.in
YAML yaml *.yaml, *.yml text/x-yaml
YAML+Jinja yaml+jinja, salt, sls *.sls text/x-yaml+jinja, text/x-sls
Zephir zephir *.zep