bug-texinfo
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Spurious diagnostics from texi2dvi -E


From: Gavin Smith
Subject: Re: Spurious diagnostics from texi2dvi -E
Date: Tue, 3 Mar 2015 11:18:21 +0000

On 2 March 2015 at 09:38, Sergey Poznyakoff <address@hidden> wrote:
> Hello,
>
> When used with -E option, texi2dvi (more precisely, makeinfo) issues the
> following diagnostics:
>
> -:LINE: @menu seen before first @node
> -:LINE: perhaps your @top node should be wrapped in @ifnottex rather than 
> @ifinfo?
>
> This happens even though the @top node is inclosed in @ifnottex, as in
> the attached document.  This is because the entire conditional gets commented
> out prior for being piped to makeinfo by a sed expression on lines 1593-
> 1595.  The intent is obviously to eliminate the top node from the output.
> I'm not sure what to do with that.

There are even more warnings in a more complicated document because of
the structuring checks done by makeinfo, e.g. adding a second node
"Chapter 1" gives

-:13: @menu seen before first @node
-:13: perhaps your @top node should be wrapped in @ifnottex rather than @ifinfo?
-:18: warning: node `Chapter 1' is next for `Preface' in sectioning
but not in menu
-:23: warning: unreferenced node `Chapter 1'
-:23: warning: node `Preface' is prev for `Chapter 1' in sectioning
but not in menu

I thought the @menu as well could be included within the @ifnottex,
but this only gets rid of the error message about @menu before first
@node.

I see from texi2dvi that the @ifnottex conditional part is removed
before makeinfo gets it using sed. Even without this, makeinfo still
gives these errors, when run as e.g.

cat t.texi | makeinfo --macro-expand=- --iftex

Experimenting, I found that running

cat t.texi | makeinfo -c TEXINFO_OUTPUT_FORMAT=plaintexinfo -o- --iftex

would eliminate all the error messages except the first one, although
there would be no output at all. Including the @menu within @ifnottex
seems to work okay, though:

$cat t.texi | makeinfo -c TEXINFO_OUTPUT_FORMAT=plaintexinfo -o- --iftex
\input texinfo @c -*-texinfo-*-
@setfilename t.info
@settitle Test


@node Preface
@chapter Preface

word word

@node Chapter 1
@chapter Chapter 1

blurble blurble

@bye

Presumably not as much validation is being done for the "plaintexinfo"
output format.

If we can encourage the top @menu to be included within @ifnottex as
well, then invoking makeinfo in this way in texi2dvi could solve the
problem.

I also tried

cat t.texi | makeinfo -c TEXINFO_OUTPUT_FORMAT=parse --macro-expand=- --iftex

but this prints no output at all, which may be the expected behaviour.

Attachment: t.texi
Description: TeXInfo document


reply via email to

[Prev in Thread] Current Thread [Next in Thread]