On Tue, Jul 21, 2026 at 02:25:47PM +0200, Patrice Dumas wrote:
> > > For htmlxref, it could be possible to have some automatic
> > > generalisation when there is no existing entry, ie, when there is a
> > > language in the output file name like mymanual-LL, possibly with a check
> > > of matching @documentl* in the tree and there is
> > > 
> > >  mymanual node ${GS}/something/mymanual/mymanual
> > > 
> > > occurences of mymanual in the path would become mymanual-LL.  Also we
> > > could extend htmlxref with list of languages with translations for a
> > > manual.
> > > 
> > 
> > I can't follow your explanation here.  What do you mean by "occurences of
> > mymanual in the path"?
> > 
> > The mymanual htmlxref entry is for links to the mymanual manual, but you
> > are talking about the output file name being mymanual-LL, which is unlikely
> > to contain cross-references to itself.
> 
> I will use an example.  Suppose there is this entry in htmlxref:
> 
>  mymanual node ${GS}/something/mymanual/mymanual
> 
> and a new possibility in htmlxref to specify the languages like
> 
>  mymanual lang fr,fr_FR,sv@latin1
> 
> then the HTML converter would automatically consider that, for a manual
> that has:
> @documentlanguage fr_FR
> 
> there is, in this manual (which is not mymanual* but a manual that
> refers to mymanual*) for cross-references to mymanual-fr_FR, the
> following autogenerated entry in htmlxref:
>   mymanual-fr_FR node ${GS}/something/mymanual-fr_FR/mymanual-fr_FR

This feels far too fragile to me.  What would be wrong with just
adding the translated manuals as extra lines in an htmlxref file?  (These
do not have to be in the same file as we support reading multiple htmlxref
files now.)  In your proposal, the htmlxref file has to be edited anyway,
to add the language list.  It also entails a backwards-incompatible
change to the htmlxref format.

It's possible that higher-level directories refer to a project with
multiple directories.  From Texinfo_GNU.cnf:

EMACS = ${GS}/emacs/manual
emacs           mono    ${EMACS}/html_mono/emacs.html
emacs           node    ${EMACS}/html_node/emacs/
 #
 auth           mono    ${EMACS}/html_mono/auth.html
 auth           node    ${EMACS}/html_node/auth/

Then "emacs" appears twice in the address of the "emacs" manual.

I think this depends too much on where projects decide to install manuals.


> 
> Similar for a manual having @documentlanguage fr and @documentlanguage
> sv plus @documentscript Latn.
> 
> This mandates using - (for example), but if it is not the case, it
> should be possible to manually add the entry, like
> 
>   mymanual_fr_FR node ${GS}/something/mymanual_fr_FR/mymanual_fr_FR
> 
> -- 
> Pat

Reply via email to