Le point 18 de http://pandoc.org/demos.html#examples montre comment changer le surligneur de syntaxe utilisé en donnant un argument à --highlight-style
. Par exemple:
pandoc code.text -s --highlight-style pygments -o example18a.html
pandoc code.text -s --highlight-style kate -o example18b.html
pandoc code.text -s --highlight-style monochrome -o example18c.html
pandoc code.text -s --highlight-style espresso -o example18d.html
pandoc code.text -s --highlight-style haddock -o example18e.html
pandoc code.text -s --highlight-style tango -o example18f.html
pandoc code.text -s --highlight-style zenburn -o example18g.html
Je me demande si ce sont les seules combinaisons de couleurs disponibles. Sinon, comment puis-je charger un surligneur de syntaxe différent? Puis-je définir le mien?
Le Pandoc README dit :
--highlight-style=STYLE|FILE
Spécifie le style de coloration à utiliser dans le code source en surbrillance. Les options sont
pygments
(par défaut),kate
,monochrome
,breezeDark
,espresso
,zenburn
,haddock
ettango
. Pour plus d'informations sur la mise en évidence de la syntaxe dans pandoc, voir Mise en évidence de la syntaxe , ci-dessous. Voir également--list-highlight-styles
.Au lieu d'un nom de style [~ # ~] [~ # ~] , un fichier JSON avec l'extension
.theme
peut être fourni. Il sera analysé comme un thème de mise en évidence de la syntaxe KDE et (s'il est valide) utilisé comme style de mise en évidence. Pour voir un exemple de thème pouvant être modifié,pandoc --print-default-data-file default.theme
.
La bibliothèque lucarne (dans les anciennes versions highlighting-kate ) est utilisée pour la surbrillance. Si vous n'aimez aucun des schémas de couleurs fournis, vous pouvez soit:
.theme
fichier comme mentionné ci-dessus,<span>
des balises sont générées que vous pouvez styliser avec votre CSS personnalisé, ou$highlighting-macros$
séparez vos définitions de couleurs personnalisées, comme décrit dans ce problème .Si votre pandoc --version
indique une version de 1.15.1
(à partir du 15 octobre 2015) ou plus récent, vous pouvez vérifier si le --bash-completion
Le paramètre vous permet d'obtenir une liste complète des styles de surbrillance intégrés disponibles.
Courir
pandoc --bash-completion
Si cela fonctionne, vous verrez beaucoup de sortie. Et cela sera utile bien au-delà de la question initiale ci-dessus ...
Si --bash-completion
fonctionne, puis placez cette ligne vers la fin de votre ${HOME}/.bashrc
fichier (sous Mac OS X ou Linux - ne fonctionne pas encore sous Windows):
eval "$(pandoc --bash-completion)"
Une fois que vous ouvrez un nouveau terminal, vous pouvez utiliser la commande pandoc
avec "tabulation":
pandoc --h[tab]
donnera
--help --highlight-style --html-q-tags
pandoc --hi[tab]
donnera
pandoc --highlight-style
Frappez maintenant le [tab]
touchez une fois de plus, et vous verrez
espresso haddock kate monochrome pygments tango zenburn
C'est la liste de tous les surligneurs de syntaxe disponibles. Pour raccourcir la priorité, vous pouvez également taper
pandoc --hi[tab][tab]
pour obtenir le même résultat.
L'achèvement de l'onglet bash de Pandoc fonctionne également pour tous les autres commutateurs de ligne de commande:
pandoc -h[tab]
donne ceci - une liste de tous les paramètres de ligne de commande possibles:
Display all 108 possibilities? (y or n)
--ascii --indented-code-classes --template
--asciimathml --jsmath --title-prefix
--atx-headers --katex --to
--base-header-level --katex-stylesheet --toc
--bash-completion --latex-engine --toc-depth
--biblatex --latex-engine-opt --trace
--bibliography --latexmathml --track-changes
--chapters --listings --variable
--citation-abbreviations --mathjax --verbose
--columns --mathml --version
--csl --metadata --webtex
--css --mimetex --wrap
--data-dir --natbib --write
--default-image-extension --no-highlight -A
--dpi --no-tex-ligatures -B
--dump-args --no-wrap -D
--email-obfuscation --normalize -F
--epub-chapter-level --number-offset -H
--epub-cover-image --number-sections -M
--epub-embed-font --old-dashes -N
--epub-metadata --output -R
--epub-stylesheet --parse-raw -S
--extract-media --preserve-tabs -T
--file-scope --print-default-data-file -V
--filter --print-default-template -c
--from --read -f
--gladtex --reference-docx -h
--help --reference-links -i
--highlight-style --reference-odt -m
--html-q-tags --section-divs -o
--id-prefix --self-contained -p
--ignore-args --slide-level -r
--include-after-body --smart -s
--include-before-body --standalone -t
--include-in-header --tab-stop -v
--incremental --table-of-contents -w
Un cas d'utilisation intéressant pour la complétion de l'onglet de Pandoc est le suivant:
pandoc --print-default-d[tab][tab]
donne la liste de sortie d'achèvement pour pandoc --print-default-data-file
. Cette liste vous donne un aperçu uniq des fichiers de données que votre instance de Pandoc chargera lors de son travail. Par exemple, vous pouvez rechercher un détail du style de sortie ODT (fichier texte OpenDocument) par défaut de Pandoc comme ceci:
pandoc --print-default-data-file odt/content.xml \
| tr " " "\n" \
| tr "<" "\n" \
| grep --color "style"
Depuis pandoc 2.0.5 , vous pouvez également utiliser --print-highlight-style
pour sortir un fichier theme
et le modifier.
Pour moi, la meilleure façon d'utiliser cette option est de
Choisissez un style disponible agréable
Sortir son fichier theme
Modifiez le fichier theme
Utilise le!
Choisissez votre style, parmi ceux déjà existants:
theme
Une fois que vous avez décidé quel style était le plus proche de vos besoins, vous pouvez sortir son fichier theme
, en utilisant (par exemple pour pygments
, le style par défaut):
pandoc --print-highlight-style pygments
afin que vous puissiez stocker ce style dans un fichier, en utilisant, par exemple,
pandoc --print-highlight-style pygments > my_style.theme
À l'aide du guide Skylighting JSON Themes , modifiez le fichier en fonction de vos besoins/goûts.
Dans le bon dossier, utilisez simplement
pandoc my_file.md --highlight-style my_style.theme -o doc.html
Si vous utilisez Pandoc version 1.18 (sortie en octobre 2016) ou une version ultérieure, une nouvelle réponse est possible:
pandoc --list-highlight-languages
et
pandoc --list-highlight-styles
vous donnera toutes les informations que vous demandiez.
D'autres nouveaux paramètres d'information en ligne de commande ajoutés à la v1.18 sont:
pandoc --list-input-formats
pandoc --list-output-formats
pandoc --list-extensions