Menu

#103 Fix navigation in reference manual

open
nobody
None
5
2023-05-11
2023-05-11
No

In some places in the reference manual, the pages have no "Up" link, such as here. While not that significant in the HTML format, it's rather annoying in the info format using keyboard navigation.

The problem comes down updating the @node lines in the texinfo files for the documentation. The syntax currently used in the Maxima documentation is

@node NODE-NAME, NEXT, PREVIOUS, UP

Navigation problems result when these lines aren't filled; for instance, the source for the above linked page has this for @node:

@node Introduction to Polynomials, Functions and Variables for Polynomials, , Polynomials
@section Introduction to Polynomials

Keeping these up-to-data is rather onerous, which is why the makeinfo program will infer the correct entries for a hierarchically-organized documents when @node is followed by a sectioning command. We can update the above lines

@node @section Introduction to Polynomials
@section Introduction to Polynomials

and makeinfo will add the next, previous, and up links.

This set of patches removes the extra arguments from all @node lines in all .texi and .texi.m4 files (except those in archive/). Unfortunately, it's rather large (~675k, 16k lines). I haven't found anything that breaks, only things that work now :)

As an alternative to the patches, you can run this tiny script

find . \( -name '*.texi' -or -name '*.texi.m4' \) -print0 \
   | xargs -0 sed -i -E -e '/^@node/s/^([^,]*).*$/\1/'

at the source root to achieve the same thing (assuming GNU coreutils; I'd have to check if the arguments for sed are correct for macOs).

9 Attachments

Discussion


Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.