1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
|
Description: upstream: workaround: doc: doxygen: broken LaTeX tables
This patch provides a workaround for a known broken Doxygen LaTeX tables issue
reported (and solved) at <https://github.com/doxygen/doxygen/issues/11634>.
Origin: Debian
Forwarded: https://github.com/kimwalisch/primesieve/pull/170
Author: Jerome Benoit <calculus@rezozer.net>
Author: <https://github.com/wisd00-git>
Last-Update: 2025-08-17
--- /dev/null
+++ b/doc/override_tables.sty
@@ -0,0 +1,101 @@
+\NeedsTeXFormat{LaTeX2e}
+
+% Packages used by this style file
+\RequirePackage{doxygen}
+
+% Used by parameter lists
+\renewenvironment{DoxyParams}[2][]{%
+ \tabulinesep=1mm%
+ \par%
+ \ifthenelse{\equal{#1}{}}%
+ {\begin{longtable}[l]{|l|l|}}% name + description
+ {\ifthenelse{\equal{#1}{1}}%
+ {\begin{longtable}[l]{|l|l|l|}}% in/out + name + desc
+ {\begin{longtable}[l]{|l|l|l|l|}}% in/out + type + name + desc
+ }
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
+ \endhead%
+ \hline%
+}{%
+ \end{longtable}%
+ \vspace{6pt}%
+}
+
+% Used for fields of simple structs
+\renewenvironment{DoxyFields}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtable}[l]{|l|l|l|}%
+ \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \endfirsthead%
+ \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \endhead%
+ \hline%
+}{%
+ \end{longtable}%
+ \vspace{6pt}%
+}
+
+% Used for fields simple class style enums
+\renewenvironment{DoxyEnumFields}[2][]{%
+ \tabulinesep=1mm%
+ \par%
+ \ifthenelse{\equal{#1}{2}}%
+ {\begin{longtable}[l]{|l|l|}}%
+ {\begin{longtable}[l]{|l|l|l|}}% with init value
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
+ \endhead%
+ \hline%
+}{%
+ \end{longtable}%
+ \vspace{6pt}%
+}
+
+% Used by return value lists
+\renewenvironment{DoxyRetVals}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtable}[l]{|l|l|}%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \endhead%
+ \hline%
+}{%
+ \end{longtable}%
+ \vspace{6pt}%
+}
+
+% Used by exception lists
+\renewenvironment{DoxyExceptions}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtable}[l]{|l|l|}%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \endhead%
+ \hline%
+}{%
+ \end{longtable}%
+ \vspace{6pt}%
+}
+
+% Used by template parameter lists
+\renewenvironment{DoxyTemplParams}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtable}[l]{|l|l|}%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \endhead%
+ \hline%
+}{%
+ \end{longtable}%
+ \vspace{6pt}%
+}
--- a/doc/Doxyfile.in
+++ b/doc/Doxyfile.in
@@ -32,3 +32,4 @@
GENERATE_LATEX = @HAVE_LATEX@
FULL_PATH_NAMES = NO
HAVE_DOT = @HAVE_DOT@
+LATEX_EXTRA_STYLESHEET = @PROJECT_SOURCE_DIR@/doc/override_tables.sty
|