Styling von Sphinx-LaTeX-Tabellen mit dem Booktabs-Paket

Styling von Sphinx-LaTeX-Tabellen mit dem Booktabs-Paket

Ich versuche, das Aussehen der von Sphinx generierten LaTeX-Tabellen zu verbessern. Insbesondere möchte ich die Regeln für Booktabs oben, Mitte und unten verwenden und vertikale Zellentrennzeichen unterdrücken.

Diese rST-Tabelle:

+--------------+---+-----------+
|  simple text | 2 | 3         |
+==============+===+===========+
|  simple text | 2 | 3         |
+--------------+---+-----------+
|  simple text | 2 | 3         |
+--------------+---+-----------+

konvertiert zu:

\begin{savenotes}\sphinxattablestart
\centering
\begin{tabulary}{\linewidth}[t]{JJJ}
\hline
\sphinxstyletheadfamily 
simple text
&\sphinxstyletheadfamily

 
2
&\sphinxstyletheadfamily 
3
\\
\hline
simple text
&
2

&
3
\\
\hline
simple text
&
2
&
3
\\
\hline
\end{tabulary}
\par
\sphinxattableend\end{savenotes}

Ich möchte es umwandeln in:

\begin{savenotes}\sphinxattablestart
\centering
\begin{tabulary}{\linewidth}[t]{JJJ}
\toprule
\sphinxstyletheadfamily 
simple text
&\sphinxstyletheadfamily 
2
&\sphinxstyletheadfamily 
3
\\
\toprule
simple text
&
2
&
3
\\
\midrule
simple text
&
2
&
3
\\
\bottomrule
\end{tabulary}
\par
\sphinxattableend\end{savenotes}

Ich kann Booktabs von conf.py laden.

Die aktuelle Sphinx-Dokumentation hierhttps://www.sphinx-doc.org/en/master/latex.htmlbedeutet, dass diese Kontrollebene über conf.py nicht verfügbar ist, es gibt jedoch unten auf der Seite einen Hinweis, der auf die Anpassung über Vorlagen hinweist:

Als experimentelle Funktion kann Sphinx benutzerdefinierte Vorlagendateien für LaTeX-Quellen verwenden, wenn Sie in Ihrem Projekt eine Datei mit dem Namen _templates/latex.tex_t haben. Zusätzliche Dateien wie longtable.tex_t, tabulary.tex_t und tabular.tex_t können zu _templates/ hinzugefügt werden, um einige Aspekte der Tabellendarstellung (wie die Position der Überschrift) zu konfigurieren.

und es gibt einen Parameter, um darauf zu verweisen, den ich in conf.py wie folgt festgelegt habe:

templates_path = '_templates'

Ich habe die Vorlagen von hinzugefügthttps://github.com/sphinx-doc/sphinx/tree/3.x/sphinx/templates/latex

Die Vorlagen werden nicht gelesen.

Fragen:

  1. Ist dies über Vorlagen möglich und wenn ja, wie? Die Funktion war in Sphinx 1.6 experimentell und wurde möglicherweise entfernt.
  2. Wenn nicht, gibt es eine Möglichkeit, Tabellen über die Präambel, eine Sty-Datei oder auf andere Weise neu zu definieren, um Booktabs zu verwenden?

Vielen Dank.

verwandte Informationen