The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Texinfo::Menus - Update node links and menus in Texinfo documents

SYNOPSIS

  use Texinfo::Menus;

  update_menus($filename, verbose => 1);

DESCRIPTION

Texinfo::Menus exports just one function: update_menus. It updates the menus and node links in a Texinfo file based on its chapter structure. The file may use @include to include other files, which may also @inlcude other files. Unlike the similar Emacs functions, update_menus does not require that each chapter be in a separate file.

The first node in the file should be named `Top'.

Each @node command must be followed immediately by a Texinfo structuring command (e.g, @chapter, @section, @appendix). A comment may come between them, but nothing else.

A node can supply a menu description with a comment in the form:

 @c DESC: Menu description

This comment (if present) must come after the structuring command.

OPTIONS

comments

update_menus normally adds comments to the master menu to retain the descriptions of subsection and lesser nodes. (This is useful when the subfiles are automatically generated and the descriptions are added by hand.) Use <comments = 0>> to prevent this.

detailed

Normally, update_menus generates a detailed node listing (consisting of the section nodes for each chapter) following the master menu. Use <detailed = 0>> to omit the detailed node listing.

verbose

The verbose option causes update_menus to generate a warning message if it finds multiple descriptions for a node (only one of which will be used). Use <verbose = 1>> to enable this.

BUGS

Texinfo::Menus cannot handle @include inside a menu.

AUTHOR

Christopher J. Madsen <cjm@pobox.com>