| This is the todo list for GNU Texinfo. |
| If you are interested in working on any of these, email bug-texinfo@gnu.org. |
| |
| Copyright 1992-2025 Free Software Foundation. |
| |
| Copying and distribution of this file, with or without modification, |
| are permitted in any medium without royalty provided the copyright |
| notice and this notice are preserved. |
| |
| * Language: |
| - tagging system for definitions - (Robert Dodier for Maxima, |
| https://lists.gnu.org/archive/html/help-texinfo/2021-12/msg00012.html) |
| - generalize @vtable/@ftable to any defined index. |
| - user-defined macros cannot be used as argument to @table or @itemize. |
| Add specific macro commands, @highlightingmacro and @glyphmacro? Or |
| accept one arg macro on @table line and no arg macro on @itemize line? |
| - @mergeindex to do @syn*index without changing fonts. |
| - multicolumn * width to take up `the rest'. |
| - Allow @hsep/@vsep at @item, instead of just in template. |
| - another table command to take N succeeding items and split them |
| into M columns (see eplain). |
| - support bibliographies with BibTeX (see web2c/doc for kludge prototype). |
| - Support automatic line numbering of examples. |
| - Glossary/general definition support (dumas msg 28 Nov 2003 17:09:57 +0100). |
| https://lists.gnu.org/archive/html/bug-texinfo/2003-11/msg00092.html |
| An issue with the proposal is that glossary definitions could be quite |
| long and not suitable for an optional argument. |
| - use a different command than @titlepage for the page after the title: |
| https://lists.gnu.org/archive/html/bug-texinfo/2019-03/msg00029.html |
| - related to the previous entry, add more metadata, in particular for books |
| but not only: |
| * make it easier to gather author metadata |
| * short information on licence |
| |
| It could be relevant to have up to three dates: |
| * Last modified date. In EPUB the dcterms:modified property. Defaults |
| to the generation date; |
| * a date corresponding to the modification of the Texinfo manual (what is |
| currectly set with automake and accessible as @value{UPDATED}), |
| with default set with the modification timestamp of the main texinfo |
| file (or the newest for the main and all @include'd files); |
| * a publication date. In EPUB the dc:date optional element, to be set |
| manually by the user. |
| |
| - unique identifiers/way to disambiguate manuals with the same name? |
| - reflection on guide/topic document structure and pluggable content |
| for extensible documents (Mallard format ideas) |
| - to be discussed tabs or similar when documenting code for different |
| languages such that the user is probably only interested by one only |
| https://sphinx-tabs.readthedocs.io/en/latest/ |
| example: |
| https://developer.gnome.org/documentation/tutorials/beginners/getting_started/content_view.html#bind-the-text-view-in-the-source-code |
| |
| * texi2any: |
| - HTML: support thumbnails. |
| - HTML: have a library of different CSS styles. |
| http://mail.gnu.org/archive/html/bug-texinfo/2004-01/msg00025.html |
| - HTML: for printindex, not using <table> could be better. |
| From Per Bothner: |
| Better of course if we we could nest the subentries within the super |
| entries, and maybe avoid using tables altogether. It might be possible |
| using grids (and maybe subgrids), but they're relatively new. |
| - Support output formats retaining the tree structure of Texinfo documents |
| as parsed by the Parser. A lisp-like format for GUILE? Maybe JSON? |
| - Support other graphical documentation browsers like GNOME DevHelp |
| - DevHelp support could need to wait for a specification of the DevHelp |
| XML file format, which was not documented in 2025. From DevHelp help |
| in 'Index file format': |
| "Unfortunately the *.devhelp2 XML file format is not well documented. |
| There is still some hope that it will be fixed in the near future." |
| There was an early discussion in 2015. The *.devhelp format at that time |
| was the first devhelp file format, now obsolete: |
| (https://lists.gnu.org/archive/html/bug-texinfo/2015-03/msg00041.html) |
| - Support the MediaWiki output format. |
| - LaTeX: customization and internationalization. |
| - Info: render math as png and include as an image. Using LaTeX preview |
| package and dvipng could be the best option. Rahguzar for SageMath |
| (https://lists.gnu.org/archive/html/help-texinfo/2024-08/msg00001.html) |
| This is implemented, questions/issues that remains: |
| * add to NEWS and documentation |
| * images are not well scaled, need probably to add information on |
| scale to be used by Emacs. |
| https://lists.gnu.org/archive/html/emacs-devel/2025-01/msg00339.html |
| |
| * TeX: |
| - Index above @item allows page break. |
| - Table of contents is misaligned if there are 10 or more [sub]sections. |
| - @float captions should be typeset in a smaller font? |
| - Reset the scriptfonts and scriptscriptfonts when font size changes. |
| - Reasonable way to change fonts from the default (some work has been |
| done), to allow for PostScript fonts, for example. |
| - @multitable: handle @hsep and @vsep. |
| - @multitable: repeat table headings if multiple pages long. |
| - @multitable: support a heading line concept (<thead> in HTML). |
| - Introduce new command to change \bindingoffset. |
| - Include synctex support. |
| - Include hyperlink \special's in the DVI output for xdvi, etc. |
| - PDF: make each letter of the index (A, B, ...) a section in the TOC. |
| From Carsten Dominik. |
| - clear out support for \ as the index file escape character (instead |
| of @). |
| |
| * texindex: |
| - check if messages are translated via po/POTFILES.in. check if twjr |
| format can be supported in po/Makevars and "make po-check" target. |
| |
| * Doc: |
| - Verify/proofread Documentation of the HTML customization. |
| |
| * Info: |
| - If K is describe-key, K M-left changes the node as M-left is |
| analysed as multiple keys |
| - unnecessary screen redrawing when scroll-last-node=Stop and you |
| try to scroll at the bottom of the last node |
| - a line continuation backslash sometimes flickers when moving a cursor |
| - Perhaps comply with LANGUAGE setting on a per-node basis, to allow |
| incremental translation of Texinfo files. |
| - Display images when running under X, as Emacs 22+ can. |
| - Handle M-n, C-u m, and C-u g like Emacs Info (opening new windows). |
| |
| * install-info: |
| - install-info --dir-file=dir2 --entry=info foo.info installs garbage |
| from the misformatted --entry (and no entries from foo.info). |
| - support info dir entries for other than the current info file name; |
| see comments in menu_item_equal. |
| |
| * Distribution: |
| - generate txi-??.tex from .po's to make translators' jobs easier. |
| From Akim and Karl E. |
| - use SHELL more to make sure that it is possible to customize the shell |
| used for building and testing. |
| |
| * Other |
| - Info format - Get Emacs to support : in index entries by changing |
| the interpretation of index nodes slightly. See |
| https://lists.gnu.org/archive/html/bug-gnu-emacs/2019-01/msg00235.html |
| Get Emacs to support node name quoting. See |
| https://lists.gnu.org/archive/html/bug-gnu-emacs/2022-08/msg01756.html |
| - Process Texinfo files directly instead of converting to other formats. |
| There is no plan to process Texinfo files directly in the Texinfo |
| project, only to convert to output formats. New output formats |
| representing the Texinfo input could be output if useful. |
| |
| *********************************************************************** |
| Post-release: |
| |
| * texi2any: |
| Change DUMP_TREE behaviour. |
| (see git commit c7490e3cb4be27, 2025-03-01, Patrice Dumas, for affected |
| files.) |
| |
| *********************************************************************** |
| |
| * Ideas that will not be implemented: |
| |
| - Support installation of manuals in different languages, along these lines: |
| . support a LINGUAS file or variable saying which subdirs LL in the |
| source to descend into (under doc/). |
| . within each subdir LL, install the info files into $infodir/LL, |
| and run install-info on $infodir/LL/dir. |
| . info (both emacs and standalone) should read $infodir/$LANG/dir |
| as the first dir file, and likewise read info files first from |
| $infodir/$LANG, before falling back to $infodir. |
| . consider ways to avoid installing images in both places. |
| In fact, images probably need to be installed in a subdir |
| $infodir/MANUAL/ in the first place, to avoid conflicts of having |
| the same image name in different manuals. |
| For a test case, see texinfo cvs, with its one translated manual |
| (info-fr.texi). |
| From Wojciech Polak. |
| ... Except, in practice, people just name their manuals with a |
| suffix for the language, and that seems to work well enough. There |
| aren't that many manuals even in English, let alone other languages, |
| and there are almost no manuals in multiple languages. |
| |
| - Call Ghostscript to get ASCII/jpg output for the @image command. |
| [makeinfo should not try to be make, or assume it knows how the user |
| wants to generate images. Too many different methods are possible.] |
| |
| - Get Info declared as a MIME Content-Type, and an `info:' URI scheme; |
| A library consortium had an URI scheme for a completely different |
| purpose than info documentation accepted: |
| https://datatracker.ietf.org/doc/html/rfc4452 |
| There is mail about this in the bug-texinfo archives: |
| http://mail.gnu.org/archive/html/bug-texinfo/2003-09/msg00086.html |
| However, the registration of those URI and the use of those URI is |
| discontinued since 2010: |
| https://en.wikipedia.org/wiki/Info_URI_scheme |
| Meanwhile the use of info: in free softwares is still documented in |
| man uri. |
| |
| - Change bars. This is difficult or impossible in TeX, |
| unfortunately. To do it right requires device driver support. |
| wdiff or ediff may be all we can do. Merely specifying what should be |
| changed is not obvious. texdiff (http://www.robmar.net/TexDiff) does |
| something reasonable for LaTeX, maybe it can be adapted. |
| |
| - @else for the @if... conditionals. Using (for example) an @iftex block |
| followed by an @ifnottex block is good enough. |
| |
| - A running view mode in Info, to display the next node after the end of the |
| last one, and be able to toggle display of a node's subnodes. |
| [Too hard to implement because of how much code assumes |
| that only one node is in a window at once.] |
| |
| |