Forse è inutile, ma non inopportuno 😉 .
A seguito della sequenza di comandi
`
xetex adoc.tex
makeindex -s dnd.ist -o adoc.dnd adoc.ddx
makeindex -s und.ist -o adoc.und adoc.udx
makeindex -s chn.ist -o adoc.chn adoc.chk
xetex adoc.tex
`
lanciati con un file bash ottengo i seguenti messaggi su terminale (ridotti alle parti essenziali)
`
This is XeTeX, Version 3.1415926-2.4-0.9998 (TeX Live 2012)
restricted \write18 enabled.
entering extended mode
(./adoc.tex (./tweb.sty
— I cannot find file adoc.ref )
–> Writing index file adoc.udx
–> Writing index file adoc.ddx
–> Writing index file adoc.chk
— I cannot find file adoc.toc [1] [Introduzione.]
… [Una marea di overfull]
— I cannot find file adoc.und
— I cannot find file adoc.dnd
— I cannot find file adoc.chn [78] )
(see the transcript file for additional information)
Output written on adoc.pdf (78 pages).
Transcript written on adoc.log.
This is makeindex, version 2.15 [TeX Live 2012] (kpathsea + Thai support).
Scanning style file ./dnd.ist…..done (5 attributes redefined, 0 ignored).
Scanning input file adoc.ddx………done (5201 entries accepted, 0 rejected).
Sorting entries……………………………………………done (71782 comparisons).
Generating output file adoc.dnd……..done (1705 lines written, 2509 warnings).
Output written in adoc.dnd.
Transcript written in adoc.ilg.
This is makeindex, version 2.15 [TeX Live 2012] (kpathsea + Thai support).
Scanning style file ./und.ist…..done (5 attributes redefined, 0 ignored).
Scanning input file adoc.udx….done (649 entries accepted, 0 rejected).
Sorting entries……..done (6607 comparisons).
Generating output file adoc.und….done (628 lines written, 67 warnings).
Output written in adoc.und.
Transcript written in adoc.ilg.
This is makeindex, version 2.15 [TeX Live 2012] (kpathsea + Thai support).
Scanning style file ./chn.ist….done (4 attributes redefined, 0 ignored).
Scanning input file adoc.chk….done (299 entries accepted, 0 rejected).
Sorting entries…..done (2623 comparisons).
Generating output file adoc.chn….done (123 lines written, 0 warnings).
Output written in adoc.chn.
Transcript written in adoc.ilg.
This is XeTeX, Version 3.1415926-2.4-0.9998 (TeX Live 2012)
restricted \write18 enabled.
entering extended mode
(./adoc.tex (./tweb.sty (./adoc.ref)
<-- Reading file adoc.ref ) --> Writing index file adoc.udx
–> Writing index file adoc.ddx
–> Writing index file adoc.chk (./adoc.toc [1]
! Undefined control sequence.
l.75 \r
?
`
A questo punto TeX interrompe la lettura del file [tt]adoc.toc[/tt], neanche finisce di leggere l’intero nome della macro (la linea 75 è [tt]\restorecat\@[/tt]), e ritenendo che il nome della macro sia la sola prima lettera [tt]\r[/tt] restituisce un [tt]! Undefined control sequence.[/tt].
Ovviamente se tolgo una lettera dal parametro di [tt]\section[/tt] le ultime linee del messaggio diventano
`
! Undefined control sequence.
l.75 \re
`
se ne tolgo altre quattro le linee diventano
`
! Undefined control sequence.
l.75 \restor
`
e così via.
Ripeto: la mia impressione è che il problema derivi non da COSA costituisca il parametro di [tt]\section[/tt] ma piuttosto dal numero di caratteri.
Grazie per la tua pazienza.