bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Web manual out-dated?


From: Bruno Haible
Subject: Re: Web manual out-dated?
Date: Fri, 21 Nov 2008 03:25:08 +0100
User-agent: KMail/1.5.4

Hello Karl,

Simon Josefsson wrote:
>     One minor problem seems to be that the 'index' documentation is included
>     in the top-level index file too, see bottom of:
> 
>     http://www.gnu.org/software/gnulib/manual/html_node/index.html
> 
>     Is this a texinfo bug?  I'm using texinfo 4.13.

Karl Berry replied:
> It's not a bug, it's an ugly feature :(.
> Regarding case-insensitive filesystems and all that.

Huh? The generated doc already has an 'index.html' (entry point with
table of contents) and 'Index.html' (the index of terms).

What's the reason for mapping the node named 'index' to the file named
'index.html'? It could also be 'inde_0078.html', no? This would leave
the name 'index.html' for the entry point into the manual.

With the attached patch, the node 'index' indeed gets generated into a
file 'inde_0078.html', and all hyperlinks are correct.

Bruno


2008-11-20  Bruno Haible  <address@hidden>

        Fix collision of filename 'index.html' used for two different purposes.
        * makeinfo/html.c (nodename_to_filename_1): If the node name is "index",
        use a file name different from "index.html".

*** texinfo-4.13/makeinfo/html.c.bak    2008-05-22 14:11:34.000000000 +0200
--- texinfo-4.13/makeinfo/html.c        2008-11-21 03:24:07.000000000 +0100
***************
*** 823,833 ****
        /* In the case of just (info-document), there will be nothing
         remaining, and we will refer to ../info-document/, which will
         work fine.  */
-       strcat (filename, p);
        if (*p)
        {
!         /* Hmm */
!         fix_filename (filename + strlen (filename) - strlen (p));
          strcat (filename, ".html");
        }
      }
--- 823,840 ----
        /* In the case of just (info-document), there will be nothing
         remaining, and we will refer to ../info-document/, which will
         work fine.  */
        if (*p)
        {
!         char *q = filename + strlen (filename);
!         if (strcmp (p, "index") == 0)
!           /* Use a different file name than "index.html", since that's
!              reserved for the entry point.  */
!           strcpy (q, "inde_0078");
!         else
!           {
!             strcpy (q, p); /* equivalent to strcat (filename, p); */
!             fix_filename (q);
!           }
          strcat (filename, ".html");
        }
      }





reply via email to

[Prev in Thread] Current Thread [Next in Thread]