Syntax highlighting
Pandoc will automatically highlight syntax in fenced code blocks that are marked with a language name. The Haskell library skylighting is used for highlighting. Currently highlighting is supported only for HTML, EPUB, Docx, Ms, and LaTeX/PDF output. To see a list of language names that pandoc will recognize, type pandoc --list-highlight-languages
.
The color scheme can be selected using the --highlight-style
option. The default color scheme is pygments
, which imitates the default color scheme used by the Python library pygments (though pygments is not actually used to do the highlighting). To see a list of highlight styles, type pandoc --list-highlight-styles
.
If you are not satisfied with the predefined styles, you can use --print-highlight-style
to generate a JSON .theme
file which can be modified and used as the argument to --highlight-style
. To get a JSON version of the pygments
style, for example:
pandoc --print-highlight-style pygments > my.theme
Then edit my.theme
and use it like this:
pandoc --highlight-style my.theme
If you are not satisfied with the built-in highlighting, or you want highlight a language that isn’t supported, you can use the --syntax-definition
option to load a KDE-style XML syntax definition file. Before writing your own, have a look at KDE’s repository of syntax definitions.
To disable highlighting, use the --no-highlight
option.