This file contains a list of things yet to be done (see also in doc/TODO): * Create detailed texinfo documentation (see in doc) * add sample init files for different layouts - use events (onmousover, etc) for anchors - use style-sheets for formatting of various elements (like @example, etc). - xhtml with in line style - Singular manual style - How complicated could it be to get a creation of SGML ? - to LaTeX - to RTF - to open document * document css classes, and have similar classes with makeinfo - makeinfo classes: ul menu, ul index-cp index-*, div node (navigation bar), - texi2html classes: table index-cp index-*, table menu, h3 node ul toc, - same classes: pre verbatim, pre example display..., table cartouche, small dots, small enddots, div contents shortcontents, div footnote, h? unnumbered chapter appendix..., h1 settitle (title before contents, if not set by titlefont), h1 titlefont (@titlefont), * Document Texi2HTML::THIS_ELEMENT $NEW_CROSSREF_STYLE, $EXTERNAL_CROSSREF_SPLIT, $INLINE_INSERTCOPYING $OVERVIEW_LINK_TO_TOC $Texi2HTML::THISDOC{'htmlxref'} $Texi2HTML::THISDOC{'current_lang'} $Texi2HTML::THISDOC{macro name} $Texi2HTML::THISDOC{'hyphenation'} $Texi2HTML::THISDOC{'do_about'} $Texi2HTML::THISDOC{'split_level'} $copying_comment, $titlepage better and $documentdescription $program_string $heading arguments $begin_paragraph_texi $tab_item_texi $begin_style_texi $begin_special_region $end_special_region $simple_command $thing_command Also element formatting documentation, especially print_foot_navigation is not up to date. new arguments and return args of index_summary_letter * document the 'math' in 'args', in style_map, and simple_*math*. It could also be more flexible and similar with other environments, that is not only add a fixed key, but duplicate all the keys and add one. Documentation should only done once the interface is stable. * document the new $image arguments/API * don't double in title when the @top and @settitle are the same * the following is erroneous, but maybe it could be better handled anyway -> error with @item on same line than @table @xref{node, @table @emph @item line text @end table } * test @printindex in diverse contexts and handle right things like @code{ @printindex cp } * maybe some @-commands appearing on lines should stop paragraphs, namely @page or @indent. That's not sure. More likely this should be up to the writer to add a line. There is a Config hash now for @style_map commands. formats automatically stop paragraphs. * honor stop_paragraph_command for misc_commands? * @macro definition in @ifset is parsed but ignored. So in the following, the @end ifset appearing in the macro is ignored, and the macro isn't defined. Don't know if it's right. @ifset a @macro bidule @end ifset @end macro @end ifset * in chm.init (Jose Fonseca) [WINDOWS] Default=,"ug.hhc","ug.hhk","ug.html","ug.html",,,,,0x22520,,0x384e,,,,,,,,0 The numbers are a bitmask of the enabled buttons. The ones here are IMO a good default. In the future you may also add that as an option, as the Docbook XSL stylesheets do (see in http://docbook.sourceforge.net/release/xsl/snapshot/doc/html/rn20.html all the CHM related parameters one can change). * many FIXME in the code * in index_split the section associated with indices is the numbered section not the associated node where the @cindex are. Good or bad? * maybe be quiet during special region expansion outside of document. It is not very clear that it is wrong, though. multiple_pass could be passed down to echo_warn/echo_error and no warning would be produced with multiple_pass > 1. Alternatively, line numbers could be passed down like what is done with inline_insertcopying * antispam @email <bug-gnulib@gnu.org> * menu_description is menucomment in xml. menuentry is the menunode+menutitle+menucomment menu_comment in makeinfo --xml treated as normal text. the documentation, however uses the same words than in texi2html. * Tests/formatting/code_not_closed.texi should trigger 2 errors, none are triggered currently. * a FIXME in Tests/formatting/detailmenus.texi with a warning missing for a menu entry for a spurious entry with no corresponding node entry. more precisely the node is not among the direct subsections. * roff is certainly not uptodate. At least the @quote* and @guillem* * the code of xml.c in makeinfo shows specific treatement of & in definition arguments. I don't know what it corresponds with. All the definition argument parsing stuff is certainly worth asking on the texinfo list. * something like @math{@minus{} {\frac{1}{2}}} leads to errors in makeinfo about misplaced { } because it seems that @minus turns on texinfo mode or the like, while @math{{\frac{1}{2}} @minus{}} is error free. * formatting/nodename_parentheses.texi gives wrong output. * in @example, makeinfo --xml @ followed by a space &space;@ followed by a tab &space;@ followed texi2html @ followed by a space &space; @ followed by a tab &space; @ followed * in xml @itemize @item i--temize @end itemize makeinfo: i--temize texi2html: i--temize * in xml @itemize @bullet{} a--n itemize line @item i--tem 1 @item i--tem 2 @end itemize makeinfo: • a--n itemize line i--tem 1 i--tem 2 texi2html: • a–n itemize line i--tem 1 i--tem 2 * in xml @enumerate @item e--numerate @end enumerate makeinfo: e--numerate texi2html: e--numerate * add @detailmenu in coverage, and @group * in imbrications.texi there should be a warning for @defun aaaa @deffnx bbbb @end deffn @end defun Makeinfo gives: imbrications.texi:241: Must be in `@deffn' environment to use `@deffnx'. imbrications.texi:259: `@end' expected `defun', but saw `deffn'. * makeinfo doesn't warn for empty heading commands, like ** unnumberedsubsec without name (l. 284) * makeinfo warn when there is no @settitle nor @top where it finds its title in texi2tml there is no warning, and also the title is constructed differently. * makeinfo don't warn for empty deffn, but texi2dvi cannot process them * enable_encoding.init is certainly dependent on USE_UNICODE through the use of non 8 bit representation of characters. * makeinfo in title, for @code{something} leads to `something'. In texi2html all the style commands are removed without extra formatting. * test for @deffn with end of line protected in @footnote (to test end of line protection in keep_texi). * empty lines in @hyphenation are not valid for texi2dvi * manuals/mini_ker result is not valid, but it looks like a validate bug? In any case, it may make sense to have @tex not starting paragraph, like @html, at least when expanding it. * texinfo expands @-commands normally in @documentdescription, but keeps --, texi2html uses simple_format which removes most @commands but uses entities * clean formatting/def_cmds.texi to remove invalid texinfo and put it in an ifset. * if a 'term' triggers no_paragraph, the ouput may be more valid. But a center won't have any effect in it. * end of line after a @contents should certainly be kept in xml.init * texi2dvi doesn't accept @table in @format * warnings and errors are somewhat random at present. Also it would be nice to have the same error messages than makeinfo. * when there are nested complex_formats, a small format that doesn't have style, like smalldisplay in a format with style, like example, the smalldisplay will use the class of the above format, and lose the small font property. * macros/value_in_pass0_macros result is very different from texi2dvi and makeinfo. To be verified that cp in fn is style not in @code. Also certainly simpler and more focused tests to do for syn/syncode * decide @documentencoding @. And maybe change regexp. * html32 is not up to date: Error at line 2159, character 8: unknown entity "euro" Error at line 2161, character 7: unknown entity "le" Error at line 2162, character 7: unknown entity "ge" For headings. In normal it is strong. Error at line 2616, character 4: element "H1" not allowed here; check which elements this element may be contained within Error at line 2619, character 4: element "H1" not allowed here; check which elements this element may be contained within Error at line 2622, character 4: element "H2" not allowed here; check which elements this element may be contained within Error at line 2625, character 4: element "H3" not allowed here; check which elements this element may be contained within Error at line 2628, character 4: element "H4" not allowed here; check which elements this element may be contained within * verify that code_style is used for code_style style @-commands in remove_texi. * docbook: in function no style. replaceable is for @var or function argument. Only characters. Instead of synopsis may use specialized synopsis, funcsynopsis/funcprototype for deftype*, funcdef for defffn, ooclass for object oriented. also informalfigure in @float * to solve above issue, the definition arg formatted with simple_format should alo be passed down * in docbook, when there is only one section
should be better than book. Maybe the best way to do that would be passing the information that there is only one section to the functions formatting the page header and page footer. * makeinfo has a lot of other short command line switches, but implement only those that are documented, in --help or info makeinfo. * -I can take paths (separated by : or ;) not only directories. * does documentlanguage cmd line apply to first or all files? ask on bug-texinfo. * now config variables are read-only after command line switches expansion. If defined, they set $Texi2HTML::THISDOC{'VAR'} and if not defined, $Texi2HTML::THISDOC{'VAR'} is autodetected. $Texi2HTML::THISDOC{'VAR'} is then used in the code. This means that, if a variable that was not autodetected becomes autodetected, the code will have to switch to using $Texi2HTML::THISDOC{'VAR'} instead of $VAR. This is very bad since it means API breaking. * makeinfo --no-header implies --no-split (and default for out file is stdout). * in @titlepage, @title, @authors and similar commands should be formatted when they happen and not at the beginning. @titlepage @titlefont{Software} @sp 1 @title for something @subtitle subtitle @author by Somebody and Someone @author and Other people * makeinfo.init not uptodate with makeinfo --html. Index entries link back now. And also look at floats? menu name is used instead of node in menu links url text. * change LINK_BUTTONS for makeinfo.init to have next, up... nodes * ignore spaces after @ command, before {, like texi2dvi does? * failures with split index between node and section in indices/ makeinfo_index_split first.html is missing makeinfo_nodes_before_top_and_sections needs to be checkedd (first should be in first.html?). * error message when xref is followed by something else than . is missing. * no line numbers when in footnotes. * ignore spaces at end of @item line for @(|v|f)table. Also maybe after @item, but to be careful with things prepended or commands used in for the whole line. * add --command command line that gives inserted lines. * @ogonek has 2 test files, and is in coverage. Maybe add it to encoding/* where other accents are used too. Or maybe tests should be more focused? * empty macro in macros/empty_macro.texi is replaced by a new line, even without arg, ie the form @foo Should the new line be stripped? makeinfo does the same, so things are likely to be right as is. * for makeinfo, the following are not the same, looks like -I is not taken into account with a leading ./: @include ./d2t_singular/surf_lib_noEx.tex @include d2t_singular/surf_lib_noEx.tex for texi2html they are the same. * makeinfo keeps @macro definitions in -E output. Maybe it should be done, too, for expansion in places that are only expanded by texi2dvi, namely in @*headings, it could be better to delay @macro expansion to allow for different expansions at different places in the document, something that cannot be done with texi2html -E. * add 0x7F as a comment character (ignore to eol). * add as a filter when things come from STDIN, and there is no file in argument. If there is no setfilename, file name is stdin.info. * @FORMAT like @tex, @html... should be kept with -E and certainly handled in formatting function. Cf test/macros/out/texi_cond for a wrong output. * texi2html doesn't understand `-o /dev/null'. It aborts with *** /dev/ not writable report from Werner LEMBERG. * texi2html's option -E suppresses creation of the default output file. Since texi2html shall replace makeinfo completely, it should rather produce the output file instead for compatibility. report from Werner LEMBERG.