Agregue un comando de látex personalizado para usar con pandoc/markdown

Agregue un comando de látex personalizado para usar con pandoc/markdown

entonces estoy usando el popularplantilla eisvogelpara mi trabajo personal. Básicamente escribo todo en Markdown y uso pandoc para convertirlo a un bonito pdf.

El uso de comillas en bloque ( > texto ) da como resultado una bonita barra. Sin embargo, me encontré con el deseo de agregar más opciones de estilos. Digamos que no sólo quiero utilizar estas citas en bloque para citas reales, sino también para "paneles de información" o "paneles de alerta". Me encantaría tener la opción de dar de alguna manera un prefijo o un comando de texto personalizado dentro de mi archivo de rebajas y que se muestre el cuadro adecuado.

Digamos que en lugar de tener: > textlo que da como resultado un cuadro gris atractivo, con un guión en el lado izquierdo, me gustaría tener algo así \alert > textcomo para que el cuadro se represente en un poco de rojo, en lugar del color original de la cita en bloque.

Claro, la sintaxis podría verse totalmente diferente, pero solo necesito encontrar una manera de personalizar un poco más este fantástico pandoc-latex, preferiblemente con comandos personalizados. Estoy un poco familiarizado con la escritura en LaTeX puro, pero usar pandoc es mucho más rápido, ya que también tomo notas dentro de mis archivos de rebajas.

¿Alguien tiene una idea?

salud

Respuesta1

Bueno, mirando la plantilla eisvogel, parece que escribe comillas en bloque dentro de un customblockquoteentorno especial definido usando el paquete mdframed: versu documentacion.

Puede definir nuevos comandos LaTeX para usar con pandoc con una header-includes:opción yaml. (O en un archivo separado incluido con el -Hindicador de la línea de comando). Supongo que una opción sería usar dicho comando para redefinir este entorno. Tendrías que redefinirlo de nuevo a la forma en que lo define la plantilla si quisieras volver a la normalidad.

---
title: My Document
author: Someone
date: 7 May 2022
header-includes: |
    \definecolor{myred}{RGB}{245,20,20}
    \newcommand{\normalquote}{
        \definecolor{blockquote-text}{RGB}{119,119,119}
        \renewmdenv[rightline=false,
            bottomline=false,
            topline=false,
            linewidth=3pt,
            linecolor=blockquote-border,
            skipabove=\parskip]{customblockquote}
    }
    \newcommand{\redalert}{
        \definecolor{blockquote-text}{RGB}{240,240,240}
        \renewmdenv[
            linewidth=2pt,
            linecolor=black,
            leftmargin=10pt,
            rightmargin=10pt,
            backgroundcolor=myred,
            fontcolor=white,
            shadow=true,
            skipabove=\parskip]{customblockquote}
    }

...

This is some regular text.


> This is a regular quote.

\redalert
> This is a *very* red box with a shadow and light text.

\normalquote
> This is a normal blockquote again.

ejemplo de redefinición de cita de pandoc

Por supuesto, podrías definir tantos estilos como quisieras.

Lo más probable es que si supiera más sobre los filtros y plantillas de Pandoc, habría una forma más sencilla, pero puede que funcione bastante bien para sus propósitos.

Respuesta2

Considere cambiar a cuarto, que pretende ser un salto evolutivo de la reducción de R. Tal vez esto no sea una buena idea si está enganchado a una plantilla personalizada (no he probado si podría usarse así en cuarto, después de algunos/muchos cambios o no usarse en absoluto), pero de lo contrario, el cuarto incluye algunas plantillas predefinidas fáciles de usar. "avisos":

mwe


La fuente ( mwe.qmd):

---
format: pdf
---

## Callouts in Quarto

In Quarto (next generation of R markdown) you can use "callouts" 
to show predefined alert boxes. For PDF output, \LaTeX\   
`tcolorbox` package is used in the background automatically.


::: callout-note

There are five types of callouts: 
`note`, `tip`, `warning`, `caution` and   `important`. 

:::

::: callout-tip
## Tip with custom caption

This is an example of a tip with custom caption.

:::
    
::: callout-warning
foo
:::

::: {.callout-caution}
## Take care !  

foo

:::

::: callout-important
foo
:::

Tenga en cuenta que en la reducción de R "clásica" también puede utilizarbloques personalizadospara producir diferentes entornos LaTeX. Por ejemplo, un simple tcolorboxpodría ser:

::: {.tcolorbox data-latex="[title=Warning]"}
foo 
:::

Pero como puede ver, la sintaxis es un poco más compleja incluso para un cuadro predeterminado, y usted está a cargo de incluir los paquetes necesarios en la plantilla, o algo header-includesasí, y hacer cuadros más elaborados necesitará algo de trabajo adicional (consulte la enlace), mientras que en Quarto simplemente escriba los bloques de leyenda simples. Además, estos bloques no se pueden exportar a otros formatos, mientras que las leyendas de Quarto se exportan a tablas HTML y DOCX que imitan muy bien el tcolorboxformato es.

Respuesta3

Dado que la discusión parece inclinarse hacia los bloques de advertencia, sugeriría echar un vistazo a Awesome Boxes:

https://www.nic.funet.fi/pub/TeX/CTAN/graphics/awesomebox/awesomebox.pdf

Fácil de usar, funciona bien con Markdown y Pandoc.

información relacionada