syntax-highlighting - example - pandoc package
Pandoc: ¿Cuáles son los resaltadores de sintaxis disponibles? (4)
Desde pandoc 2.0.5 , también puede usar --print-highlight-style
para generar un archivo de theme
y editarlo.
Para mí, la mejor manera de usar esta opción es
Elige un estilo agradable disponible
Salida de su archivo de
theme
Editar el archivo de
theme
¡Úsalo!
1. Estilos disponibles
Elige tu estilo, entre los ya existentes:
2. Salida de su archivo de theme
Una vez que haya decidido qué estilo es el más cercano a su necesidad, puede generar su archivo de theme
, utilizando (por ejemplo, para los pygments
, el estilo predeterminado):
pandoc --print-highlight-style pygments
para que pueda almacenar este estilo en un archivo, utilizando, por ejemplo,
pandoc --print-highlight-style pygments > my_style.theme
3. Edita el archivo
Usando la guía de Temas JSON de Skylighting , edite el archivo de acuerdo a sus necesidades / gustos.
4. Usa el archivo
En la carpeta correcta, solo use
pandoc my_file.md --highlight-style my_style.theme -o doc.html
El punto 18 de http://pandoc.org/demos.html#examples muestra cómo cambiar el resaltador de sintaxis utilizado al dar un argumento a --highlight-style
. Por ejemplo:
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
Me pregunto si estos son los únicos esquemas de color disponibles. Si no, ¿cómo puedo cargar un resaltador de sintaxis diferente? ¿Puedo definir mi propia?
--highlight-style=STYLE|FILE
Especifica el estilo de coloración que se utilizará en el código fuente resaltado. Las opciones son
pygments
(predeterminado),kate
,monochrome
,breezeDark
,espresso
,zenburn
,haddock
ytango
. Para obtener más información sobre el resaltado de sintaxis en pandoc, consulte Resaltado de sintaxis , a continuación. Ver también--list-highlight-styles
.En lugar de un nombre de ESTILO , se puede suministrar un archivo JSON con la extensión
.theme
. Esto se analizará como un tema de resaltado de sintaxis de KDE y (si es válido) se usará como estilo de resaltado. Para ver un tema de muestra que se puede modificar,pandoc --print-default-data-file default.theme
.
El skylighting biblioteca (en versiones anteriores highlighting-kate ) se utiliza para el resaltado. Si no te gusta ninguno de los esquemas de color proporcionados, puedes:
- Especifique un archivo
.theme
como se mencionó anteriormente, - al exportar a HTML, se generan etiquetas
<span>
que puede personalizar con su CSS personalizado, o - al exportar a LaTeX / PDF, debe usar una template personalizada Pandoc LaTeX y reemplazar la parte
$highlighting-macros$
con sus definiciones de color personalizadas, como se describe en este problema .
Si está utilizando Pandoc versión 1.18 (lanzada en octubre de 2016) o posterior, es posible una nueva respuesta:
pandoc --list-highlight-languages
y
pandoc --list-highlight-styles
Te daremos toda la información que estabas pidiendo.
Otros nuevos parámetros de línea de comando informativos agregados a v1.18 son:
pandoc --list-input-formats
pandoc --list-output-formats
pandoc --list-extensions
Si su pandoc --version
indica una versión de 1.15.1
(a partir del 15 de octubre de 2015) o más reciente, puede verificar si el parámetro --bash-completion
funciona para obtener una lista completa de los estilos de resaltado integrados disponibles .
correr
pandoc --bash-completion
Si funciona, verás mucha salida. Y será útil más allá de la pregunta original anterior ...
Si --bash-completion
funciona, entonces ponga esta línea hacia el final de su archivo ${HOME}/.bashrc
(en Mac OS X o Linux - todavía no funciona en Windows):
eval "$(pandoc --bash-completion)"
Una vez que abra un nuevo terminal, puede usar el comando pandoc
con "completar la pestaña" :
pandoc --h[tab]
rendirá
--help --highlight-style --html-q-tags
pandoc --hi[tab]
rendirá
pandoc --highlight-style
Respuesta a la pregunta original:
Ahora presiona la tecla [tab]
una vez más, y verás
espresso haddock kate monochrome pygments tango zenburn
Es la lista de todos los resaltadores de sintaxis disponibles. Para acortar el precedente, también puede escribir
pandoc --hi[tab][tab]
Para obtener el mismo resultado.
Utilidad de la finalización de la pestaña de Pandoc más allá de la pregunta original:
La finalización de la pestaña bash de Pandoc también funciona para todos los demás conmutadores de línea de comandos:
pandoc -h[tab]
produce esto - una lista de todos los parámetros de línea de comando posibles:
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 caso de uso interesante para completar la pestaña de Pandoc es este:
pandoc --print-default-d[tab][tab]
da la lista de resultados de finalización para pandoc --print-default-data-file
. Esta lista le proporciona una visión uniq de qué archivos de datos se cargará su instancia de Pandoc cuando esté haciendo su trabajo. Por ejemplo, podría investigar un detalle del estilo de salida ODT (archivo de texto de OpenDocument) predeterminado de Pandoc, como este:
pandoc --print-default-data-file odt/content.xml /
| tr " " "/n" /
| tr "<" "/n" /
| grep --color "style"