bug-texinfo
[Top][All Lists]
Advanced

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

Re: makeinfo no longer validates the menu structure


From: Bruno Haible
Subject: Re: makeinfo no longer validates the menu structure
Date: Thu, 22 Jun 2023 18:07:20 +0200

Patrice Dumas wrote:
> It is on purpose that CHECK_NORMAL_MENU_STRUCTURE is needed, because
> with manually made menus and node directions, it is not really possible
> to be sure that an irregular structure is not done on purpose.

Are you serious about that? Reading an info file should not be an experience
like an adventure game, where each cave has an unknown number of hidden
entrances, or where you can leave a room through the EAST exit and enter
the next one through the SOUTH door.

> Setting
> customization variable is not done with environment variables but with
> the -c option.  With that option, for your reproducer, I get (with the
> texinfo git head version):
> 
> ~/tmp/gnulib/doc((HEAD detached at 458694e417))$ env LANG= LC_MESSAGES= 
> LC_ALL= LANGUAGE= ~/src/texinfo/tp/texi2any.pl -c 
> CHECK_NORMAL_MENU_STRUCTURE=1  --no-split --reference-limit=2000 gnulib.texi
> strings.texi:208: warning: node next pointer for `Strings with NUL 
> characters' is `String Functions in C Locale' but next is `Comparison of 
> string APIs' in menu
> strings.texi:21: warning: node `Strings' lacks menu item for `String 
> Functions in C Locale' despite being its Up target
> strings.texi:233: warning: node prev pointer for `Comparison of string APIs' 
> is `String Functions in C Locale' but prev is `Strings with NUL characters' 
> in menu

The essential warning in this case is the second one. The other two are
confusing, because they don't point at the root cause.

It's good that it's still possible to get this warning. But for my feeling
it's way too hidden behind the bars of customization variables.

How about adding an option '--validate' to makeinfo? Its effect - at least
in 'info' mode - should be to enable this CHECK_NORMAL_MENU_STRUCTURE variable.

Bruno






reply via email to

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