Dieter Kaiser wrote:
> Most messages are generated from the building of the categories. I have
> always ignored all these messages. I have cut out the categories for the
> German manual, because the categories do not work for the German manual.
> Without the categories I get the following with the command `make html':
>
> dieter at dieter:~/Maxima/maxima/doc/info/de$ make html
> perl texi2html -split_chapter --lang=de --output=.
> --css-include=../manual.css --init-file ../texi2html.init maxima.texi
> *** Undefined node `iframe_flag' in @ref (in ./Itensor.de.texi l. 1254
> in mref)
> *** Undefined node `vect_coords' in @ref (in ./Itensor.de.texi l. 1411
> in mref)
> *** Undefined node `iframe_flag' in @ref (in ./Itensor.de.texi l. 1467
> in mref)
> dieter at dieter:~/Maxima/maxima/doc/info/de$
>
> At this time the definition of three nodes is missing. There are no more
> problems in the German manual. Without the categories in the English
> manual there are no problems too.
>
Indeed all the messages are produced running the command
sh extract_categories.sh maxima
This is for a large part because the shell is marked to trace execution of
commands, but of course there are errors. The first error is produced when
filtering Affine.texi through various sed and awk filters.
The following
@deffn {Function} fast_linsolve ([@var{expr_1}, ..., @var{expr_m}],
[@var{x_1}, ..., @var{x_n}])
is filtered incorrectly and gets verbatim in the python file
tmp-make-categories.py which appears in a temporary directory.
It thus begins like:
categories = {}
foo = []
for x in items: foo.append ([items[0], x])
try: categories ["Polynomials"] . extend (foo)
except KeyError: categories ["Polynomials"] = foo
foo = []
for x in items: foo.append ([items[0], x])
try: categories ["Groebner bases"] . extend (foo)
except KeyError: categories ["Groebner bases"] = foo
foo = []
for x in items: foo.append ([items[0], x])
try: categories ["Share packages"] . extend (foo)
except KeyError: categories ["Share packages"] = foo
foo = []
for x in items: foo.append ([items[0], x])
try: categories ["Package affine"] . extend (foo)
except KeyError: categories ["Package affine"] = foo
@deffn {Function} fast_linsolve ([@var{expr_1}, ..., @var{expr_m}],
[@var{x_1}, ..., @var{x_n}])
?..
The first statements are intended to enter the various categories in an
associative array and are OK. But the @deffn if of course syntactically
incorrect for python which stops immediately here.
Then no categories are defined and all the rest of the scripts is bound to
fail horribly.
So to solve the problem one has to understand why the above line is not
filtered by sed and awk like other lines are. How is it possible that it works
on some installations, apparently? Perhaps a different version of sed and awk
like gawk? The regular expressions here are too messy for my understanding at
the moment.
--
Michel Talon