Re: [PATCH] [KERNEL-DOC] fix tex error when building pdfdocs

From: Borislav Petkov
Date: Sat Apr 14 2007 - 04:15:39 EST


On Fri, Apr 13, 2007 at 08:20:49AM -0700, Randy Dunlap wrote:
> On Fri, 13 Apr 2007 08:35:00 +0200 Borislav Petkov wrote:
>
> > On Thu, Apr 12, 2007 at 04:48:51PM -0700, Randy Dunlap wrote:
> > > On Thu, 12 Apr 2007 22:38:42 +0200 Borislav Petkov wrote:
> > >
> > > > When building pdfdocs, the db2pdf converter bails out because of an
> > > > latex-reserved token - '#' - in the intermediary .tex file which ends up in a
> > > > conversion error with the following error message:
> > > >
> > > > <log>
> > > > [15.0.32])
> > > > ! Incomplete \iffalse; all text was ignored after line 8154.
> > > > <inserted text>
> > > > \fi
> > > > <*> kernel-hacking.tex
> > > > </log>
> > > >
> > > > This is a rather arbitrary fix, so suggest away.
> > >
> > > Hi,
> > >
> > > I don't have a problem with the change, but I don't get that tex error either.
> > > Here is an extract from the .tex file:
> > >
> > >
> > > {\def\Element%
> > > {451}\def\ProcessingMode%
> > > {title-sosofo-mode}}\#if\endNode{}\endSeq{}\endLink{}\Seq%
> > > {}\Leader%
> > > {}.\endLeader{}\Link%
> > >
> > <snip>
> >
> > Actually this is the TOC-piece of .tex code around line 1622. The offending line
> > is way down (ca. 8152) at the actual chapter heading and it looks like this:
> >
> > {\def\Element%
> > {0:451}\def\ProcessingMode%
> > {title-sosofo-mode}}\#if\endNode{}\def\HeadingText{%
> > 10.7. \if}%
> > \endHeadPar{}\endSeq{}\Node%
> >
> > and I think it is the fourth line that causes the problem for the # sign is
> > stripped and the title is converted to a tex conditional - \if - which isn't
> > terminated, but I'm not so sure. The thing is, the docbook2tex converts the
> > .tmpl file to .tex file ok but db2pdf chokes. What docbook-utils are you using?
> > Mine are version 0.6.14-1 of debian unstable.
>
> I'm using: docbook-utils-0.6.14-79 (SLED 10)
>
> and the corrected :) lines contain an additional '#':
>
> {1}}10.7. \Node%
> {\def\Element%
> {451}\def\ProcessingMode%
> {title-sosofo-mode}}\#if\endNode{}\def\HeadingText{%
> 10.7. \#if}%
> \endHeadPar{}\endSeq{}\Node%
> {\def\Element%
> {451}}\endNode{}\Node%

I got it, the problem is in that we use different DSSSL engines. Mine was
openjade, therefore the different section numbers like {0:451} vs. jade's {451},
i.e. without the leading zero. I switched to jade and kernel-hacking.tex converts fine.
The thereby generated tex code looks also differently:

{\def\Element%
{451}\def\ProcessingMode%
{title-sosofo-mode}}\#if\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{451}}\endNode{}\Node%

--
Regards/Gruß,
Boris.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/