=================================================================== RCS file: /cvs/mandoc/TODO,v retrieving revision 1.60 retrieving revision 1.67 diff -u -p -r1.60 -r1.67 --- mandoc/TODO 2010/10/17 21:10:53 1.60 +++ mandoc/TODO 2010/12/09 23:44:39 1.67 @@ -1,9 +1,24 @@ ************************************************************************ * Official mandoc TODO. -* $Id: TODO,v 1.60 2010/10/17 21:10:53 schwarze Exp $ +* $Id: TODO,v 1.67 2010/12/09 23:44:39 schwarze Exp $ ************************************************************************ ************************************************************************ +* parser bugs +************************************************************************ + +- the roff parser doesn't tolerate additional characters between + a macro and the \} terminating a conditional block, e.g. + .if n \{ + .br \} + reported by ulrich spoerlein Tue, 19 Oct 2010 20:39:50 +0200 + +- .BI "string string " word punct in gettext(3) + add bogus line breaks (rep by naddy@) + committed; currently working on IP and TP? + and what about B and I? + +************************************************************************ * missing features ************************************************************************ @@ -37,22 +52,16 @@ and when using the macro, it must expand yet again. - implement basic non-parametric .de to support e.g. sox(1) - .de SP - .if t .sp .5 - .if n .sp - .. - .de EX - .SP - .nf - .ft CW - .. - .de EE - .ft R - .SP - .fi - .. reported by naddy@ Sat, 16 Oct 2010 23:51:57 +0200 + *** sox(1) still doesn't work, tbl(1) errors need investigation +- clean up escape sequence handling, creating three classes: + (1) fully implemented, or parsed and ignored without loss of content + (2) unimplemented, potentially causing loss of content + or serious mangling of formatting (e.g. \n) -> ERROR + see textproc/mgdiff(1) for nice examples + (3) undefined, just output the character -> perhaps WARNING + - port OpenBSD tbl integration bsd.lv, probably cleaning it up - look at pages generated from reStructeredText, e.g. devel/mercurial hg(1) @@ -84,17 +93,26 @@ (e.g., NetBSD mDNSShared/dns-sd.1) (mdoc_html.c and mdoc_term.c `Nm' handlers can be slightly simplified) -- allow `Qq', `Dq', `Sq', `Aq', `Bq' to have 0 arguments - noted by Alex Kozlov 08/06/10 23:05 - - Have `Sh', `It', `Ss' and others complain if `Pp' is invoked prior to close (in the post validation) or prior to open (pre). This noted by jmc@ a thousand years ago. +- xloadimage(1) wants .ti (temporary indent), rep by naddy@ + +- bashbug(1) complains "line scope broken" after + .SM + .B something + should either just work or be a warning + reported by naddy@ + ************************************************************************ * formatting issues: ugly output ************************************************************************ +- double quotes inside double quotes are escaped by doubling them + implement this in man(7) and mdoc(7) + reminded by millert@ Thu, 09 Dec 2010 17:29:52 -0500 + - perl(1) SYNOPSIS looks bad; reported by deraadt@ 1) man(7) seems to need SYNOPSIS .Nm blocks, too @@ -114,6 +132,10 @@ * formatting issues: gratuitious differences ************************************************************************ +- .Rv (and probably .Ex) print different text if an `Nm' has been named + or not (run a manual without `Nm blah' to see this). I'm not sure + that this exists in the wild, but it's still an error. + - .%T should be quoted, not underlined, when .%J is also present, to better distinguish the contents of .%T and .%J, see for example OpenBSD cat(1) @@ -148,6 +170,18 @@ That is, when it is alone on a line between two .Pp, we want three blank lines, not two as in mandoc. +- When .Fn arguments exceed one output line, all but the first + should be indented, see e.g. rpc(3); + reported by jmc@ on discuss@ Fri, 29 Oct 2010 13:48:33 +0100 + +- It seems that .TP does not want TWOSPACE after the tag; + see bashbug(1); reported by naddy@ + +- Header lines of excessive length: + Port OpenBSD man_term.c rev. 1.25 to mdoc_term.c + and document it in mdoc(7) and man(7) COMPATIBILITY + found while talking to Chris Bennett + ************************************************************************ * performance issues ************************************************************************ @@ -163,3 +197,7 @@ Several areas can be cleaned up to make mandoc even fa ************************************************************************ * structural issues ************************************************************************ + +- Find better ways to prevent endless loops + in roff(7) macro and string expansion. +