Re: PDF build issue with 9.0 Alpha5 - Mailing list pgsql-docs
From | Tom Lane |
---|---|
Subject | Re: PDF build issue with 9.0 Alpha5 |
Date | |
Msg-id | 23456.1270324388@sss.pgh.pa.us Whole thread Raw |
In response to | PDF build issue with 9.0 Alpha5 (Devrim GÜNDÜZ <devrim@gunduz.org>) |
Responses |
Re: PDF build issue with 9.0 Alpha5
Re: PDF build issue with 9.0 Alpha5 Re: PDF build issue with 9.0 Alpha5 |
List | pgsql-docs |
Devrim =?ISO-8859-1?Q?G=DCND=DCZ?= <devrim@gunduz.org> writes: > I was trying to build PDF docs for 9.0 Alpha5, and I got this message: > ! TeX capacity exceeded, sorry [number of strings=245830]. I've found a possible solution for this. The bulk of the strings are being created by jadetex.dtx: it makes two control sequences for each flow object in the document. One of these is a page number and the other seems to have no purpose except to prevent creating duplicate hyperref anchors. However, diking out the latter doesn't create any obvious ill effects --- either we have no occurrences in our docs of a pattern that would result in a duplicate, or there isn't any real adverse consequence of having a dup. (And in any case it's hard to envision an adverse consequence that's worse than complete failure to build the document.) There turns out to be a very easy way to inject the code change, which is to create a file "jadetex.cfg" in the doc/src/sgml directory, containing the modified version of the relevant TeX macro. (Note: in the vpath case we'd probably need to link it into the build directory; I haven't experimented with that.) Put this in the file: \def\FlowObjectSetup#1{% \ifDoFOBSet \ifLabelElements \ifx\Label\@empty\let\Label\Element\fi \fi \ifx\Label\@empty\else \bgroup \ifNestedLink \else \hyper@anchorstart{\Label}\hyper@anchorend \PageLabel{\Label}% \fi \egroup \let\Label\@empty \let\Element\@empty \fi \fi } For comparison, the original definition we're replacing is \def\FlowObjectSetup#1{% \ifDoFOBSet \ifLabelElements \ifx\Label\@empty\let\Label\Element\fi \fi \ifx\Label\@empty\else \expandafter\ifx\csname x@\Label\endcsname\@madelink \else \bgroup \ifNestedLink \else \hyper@anchorstart{\Label}\hyper@anchorend \PageLabel{\Label}% \expandafter\gdef\csname x@\Label\endcsname{ }% \fi \egroup \let\Label\@empty \let\Element\@empty \fi \fi \fi } This should work with either jadetex 3.12 or 3.13, and probably older versions but I don't have source code handy to look at. 3.12 dates back to 2002 so it's probably old enough anyhow. I haven't tried to build anything except PDF output with this substituted code, so it's possible that it interferes with other output formats. Comments? regards, tom lane
pgsql-docs by date: