On Thu, Oct 22, 2026 at 01:53:27PM +0300, Eli Zaretskii wrote: > > Not quoting the index text would allow this support to continue. If we'd > > started output quoting entries, so that the following: > > > > * c:d: EEEE. (line 129) > > > > became > > > > * ^?c:d^?: EEEE. (line 129) > > > > - this would have broken such entries with Emacs Info mode. > > Emacs that doesn't support quoted node names cannot be expected to > work with manuals where node names use colons. It doesn't work > anywhere else: neither in menus nor in cross-references. So why is it > important to let it work in Index nodes??
This example did not have a node name with a colon in it. The node name for the index entry "c:d" is "EEEE". It was important to support index entries containing colons, as users would be very likely to want to make such index entries, as the topic they are discussing may involve colons and this allows readers of a manual to look up such index entries. It's much more important than allowing node names to contain colons. > > Basically, support for this depends on using special code for reading index > > entries, rather than that used for other menu entries. > > Which is why it's bad. Emacs uses regular expressions to recognize > and parse node references, and regular expressions are not well suited > for "special cases" like this one. I expect whoever is writing the Emacs Lisp code for this would not try to handle all the cases in one regular expression. It's up to them to work out the details. We managed in the C implementation of Info so it should be possible in Emacs Lisp. Of course, programming can always be hard. > > We could change the Info browser to support quoted index text, but there > > wouldn't be any immediate reason to make texi2any output such quoted text. > > The only reason would be if Emacs Info mode recognised the quoted index > > text but didn't recognise unquoted index text containing a colon. > > Which is exactly what happens in my Emacs, where the quoted node > names are already supported in all the other places. Now I have to go > back to the Index code and redo it. Ugh! Nobody is making you do anything. The rule for handling index entries (take the last colon on the line, not the first) has been in standalone Info since 2017, and I reported this as an Emacs "bug" in 2019, and nobody appears to have implemented it in Emacs since then. So there doesn't appear to be any urgency. Obviously, I believe it would be valuable for Emacs Info to be handle to such index entries in Info files. I don't believe we've broken anything in Emacs that used to work with the choices of node name quoting in texi2any. In fact, the decisions were made in order to preseve compatibility (as with the "c:d" example above).
