Estilizando tabelas sphinx LaTeX com pacote booktabs

Estilizando tabelas sphinx LaTeX com pacote booktabs

Estou tentando melhorar a aparência das tabelas LaTeX geradas no Sphinx. Em particular, gostaria de usar as regras superior, intermediária e inferior das guias de livros e suprimir os separadores verticais de células.

Esta primeira tabela:

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

converte para:

\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}

Eu gostaria que fosse secreto para:

\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}

Posso carregar booktabs de conf.py.

O documento atual do Sphinx aquihttps://www.sphinx-doc.org/en/master/latex.htmlimplica que este nível de controle não está disponível via conf.py, mas há uma nota no final da página que alude à customização via templates:

Como um recurso experimental, o Sphinx pode usar um arquivo de modelo definido pelo usuário para fonte LaTeX se você tiver um arquivo chamado _templates/latex.tex_t em seu projeto. Arquivos adicionais longtable.tex_t, tabulary.tex_t e tabular.tex_t podem ser adicionados a _templates/ para configurar alguns aspectos da renderização da tabela (como a posição da legenda).

e há um parâmetro para apontar para ele que defini da seguinte forma em conf.py:

templates_path = '_templates'

Eu adicionei os modelos dehttps://github.com/sphinx-doc/sphinx/tree/3.x/sphinx/templates/latex

Os modelos não são lidos.

Questões:

  1. Isso é possível por meio de modelos e, em caso afirmativo, como? O recurso era experimental no Sphinx 1.6 e pode ter sido descartado.
  2. Caso contrário, existe uma maneira de redefinir tabelas para usar booktabs por meio do preâmbulo, de um arquivo sty ou de outra forma?

Muito obrigado.

informação relacionada