Erstellen Sie eine Lightbox in Markdown

Erstellen Sie eine Lightbox in Markdown

Ich möchte ein Feld um einen Text in einem Markdown-Dokument erstellen. Nichts Besonderes, nur ein Feld um einen Textabschnitt.

Ich verwende Markdown für den Klartext, verwende dann aber Pandoc, um ihn in PDF zu konvertieren. Ich verwende die Vorlage eisvogel.tex zur Konvertierung. Irgendwelche schnellen und einfachen Vorschläge, um dem Markdown-Text ein Feld hinzuzufügen?

Danke.

Antwort1

Ich habe es herausgefunden und teile das Ergebnis hier. Fast alles wurde den folgenden Seiten entnommen:

https://github.com/chdemko/pandoc-latex-environment

https://github.com/Wandmalfarbe/pandoc-latex-template

Zu Beginn führe ich pandoc in einer Docker-Datei aus, daher musste ich einige zusätzliche Pakete herunterladen, damit dies funktioniert. Hier ist eine kleine Auswahl der Pakete, die ich in meiner „Docker-Datei“ heruntergeladen habe, und wie ich sie gestartet habe:

FROM pandoc/latex:2.10

#RUN tlmgr option repository http://ctan.math.washington.edu/tex-archive/systems/texlive/tlnet \
RUN tlmgr option repository http://ctan.math.utah.edu/tex-archive/systems/texlive/tlnet \
 && tlmgr update --self \
 && tlmgr install adjustbox awesomebox babel-german background bidi collectbox csquotes 
everypage environ etoolbox filehook fontawesome5 footmisc footnotebackref framed fvextra
letltxmacro ly1 mdframed mweights needspace pagecolor pgf sourcecodepro sourcesanspro 
tcolorbox titling tools trimspaces ucharcat ulem unicode-math upquote xcolor xecjk xurl 
zref

RUN apk --no-cache add \
  ghc cabal libc-dev zlib-dev python3 py3-pip

RUN cabal update  

#RUN cabal --global --prefix=/usr/local v2-install cabal-install
#RUN cabal --global --bindir=/usr/local/bin v2-install pandoc-include-code-1.4.0.0
#RUN pip3 install pandoc-extract-code pandocfilters

RUN pip3 install pandoc-extract-code pandocfilters pandoc-latex-environment

Der Schlüsselbestandteil hierbei war, alle von tcolorbox für Eisvogel benötigten Pakete einzuschließen, also Install, Tools, Xcolor, Tcolorbox usw., und außerdem Pandoc-Latex-Environment herunterzuladen und in die Anweisung „RUN pip3 install…“ einzuschließen.

Als nächstes musste ich das Argument „--filter pandoc-latex-evironment“ zu meinem pandooc-Befehl hinzufügen. Ich verwende ein Shell-Skript, das bereits stark an meine Umgebung angepasst ist, also habe ich einfach eine zusätzliche Zeile hinzugefügt, um den Filter „pandoc-latex-environment“ zu verwenden.

Dann musste ich der Präambel der Markdown-Datei einige Zeilen hinzufügen:

header-includes:
- |
  ```{=latex}
  \usepackage{tcolorbox}
  \newtcolorbox{info-box}{colback=cyan!5!white,arc=0pt,outer arc=0pt,colframe=cyan!60!black}
  \newtcolorbox{warning-box}{colback=orange!5!white,arc=0pt,outer arc=0pt,colframe=orange!80!black}
  \newtcolorbox{error-box}{colback=red!5!white,arc=0pt,outer arc=0pt,colframe=red!75!black}

Und fügen Sie dann, noch in der Präambel darunter, Folgendes hinzu:

pandoc-latex-environment:
  tcolorbox: [box]
  info-box: [info]
  warning-box: [warning]
  error-box: [error]

Sobald der Code in der Präambel war, konnte ich mit dem eigentlichen Markdown-Text beginnen. Anhand von Beispielen, die ich von verschiedenen Seiten hier in StackExchange gesammelt habe, habe ich Folgendes hinzugefügt:

## Standard Box

\begin{tcolorbox}

\abovedisplayskip=0pt%
\belowdisplayskip=0pt%
%\vspace{-1\baselineskip}
    \begin{align}
\sigma & = \beta_{0}      \label{eq:Model0}   \\
\sigma & = \beta_{0} + \beta_{1}K + \beta_{2}K^2
                        \label{eq:Model1}   \\
\sigma & = \beta_{0} + \beta_{1}K + \beta_{2}K^2 + \beta_{3}(T-t) + \beta_{5}K(T-t)
                        \label{eq:Model2}   \\
\sigma & = \beta_{0} + \beta_{1}K + \beta_{2}K^2 +
                     \beta_{3}(T-t) + \beta_{4}(T-t)^2 + \beta_{5}K(T-t)
                        \label{eq:Model3}
    \end{align}

\end{tcolorbox}

Dann begann ich, die Farben der einzelnen Kästchen anzupassen:

::: info
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam aliquet libero
quis lectus elementum fermentum.
:::

::: warning
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam aliquet libero
quis lectus elementum fermentum.
:::

::: error
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam aliquet libero
quis lectus elementum fermentum.
:::

Jetzt kann ich das folgende Bild rendern, wenn ich meine Markdown-Datei in eine PDF-Datei konvertiere.

Screenshot von farbigen Leuchtkästen

Vielen Dank an alle, die einen kleinen Teil der Lösung hier auf StackExchange gepostet haben. Es waren ungefähr 5-6 Seiten, aus denen ich Teillösungen herauslesen konnte.

verwandte Informationen