=================================================================== RCS file: /cvs/mandoc/TODO,v retrieving revision 1.65 retrieving revision 1.75 diff -u -p -r1.65 -r1.75 --- mandoc/TODO 2010/11/29 13:04:31 1.65 +++ mandoc/TODO 2011/01/10 03:43:47 1.75 @@ -1,6 +1,6 @@ ************************************************************************ * Official mandoc TODO. -* $Id: TODO,v 1.65 2010/11/29 13:04:31 kristaps Exp $ +* $Id: TODO,v 1.75 2011/01/10 03:43:47 schwarze Exp $ ************************************************************************ ************************************************************************ @@ -13,19 +13,23 @@ .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? +************************************************************************ +* formatter bugs +************************************************************************ +- in literal mode, the man(7) -Tascii formatter + breaks the line between macro arguments, + e.g. ".B #include " in gettext(3) + ************************************************************************ * missing features ************************************************************************ -- explicit blocks with missing end macro should be implicitely closed - at the end of the enclosing block, e.g. .Bl It (El) Sh - reminded by stsp@ in net/pptp pptp.8 Fri, 23 Apr 2010 20:32:39 +0200 +- pod2man expects `tr' to be implemented for \*(-- to work +- implement `rm' - it is easy to do and used in the pod2man preamble + reminded by brad@ Sun, Jan 09, 2011 at 09:45:58PM -0500 + - fix bad block nesting involving multiple identical explicit blocks see the OpenBSD mdoc_macro.c 1.47 commit message @@ -40,42 +44,17 @@ .Sh .Nm .Bk .Nm .Ek .Sh found by jmc@ in ssh-keygen(1) from jmc@ Wed, 14 Jul 2010 18:10:32 +0100 -- auto-Bk in the SYNOPSIS - patch from kristaps@ Fri, 16 Jul 2010 14:51:24 +0200 - to be revisited after OpenBSD 4.8 tree unlock +- \\ is now implemented correctly + * when defining strings and macros using .ds and .de + * when parsing roff(7) and man(7) macro arguments + It does not yet work in mdoc(7) macro arguments + because libmdoc does not yet use mandoc_getarg(). + Also check what happens in plain text, it must be identical to \e. -- implement \\ - in plain text, identical to \e - as a macro argument, identical to \ i.e. escaping the next character - We do not have macro definitions yet; if we implement them, - \\ must behave in a macro def like in a macro argument, - 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 -- implement parametric .de to support e.g. - /usr/xenocara/lib/libXxf86vm/manXF86VM.man - .de ZN - .ie t \fB\^\\$1\^\fR\\$2 - .el \fI\^\\$1\^\fP\\$2 - .. - .ZN -lXxf86vm - - 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 @@ -83,8 +62,6 @@ 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) These are a weird mixture of man(7) and custom autogenerated low-level roff stuff. Figure out to what extent we can cope. @@ -114,13 +91,6 @@ (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 @@ -129,10 +99,20 @@ should either just work or be a warning reported by naddy@ +- check compatibility with Plan9: + http://swtch.com/usr/local/plan9/tmac/tmac.an + http://swtch.com/plan9port/man/man7/man.html + "Anthony J. Bentley" 28 Dec 2010 21:58:40 -0700 + ************************************************************************ * formatting issues: ugly output ************************************************************************ +- double quotes inside double quotes are escaped by doubling them + implement this in mdoc(7), too + so far, we only have it in roff(7) and man(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 @@ -156,10 +136,6 @@ 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) - - In .Bl -bullet, the groff bullet is "+\b+\bo\bo", the mandoc bullet is just "o\bo". see for example OpenBSD ksh(1) @@ -172,12 +148,9 @@ - A bogus .Pp between two .It must not produce a double blank line, see between -R and -r in OpenBSD rm(1), before "update" in mount(8), or in DIAGNOSTICS in init(8). + Also have `It' complain if `Pp' is invoked at certain times (not + -compact?). -- .Bd -literal and .Bd -unfilled are *not* identical. - In -literal, tabs are 8 spaces. - In -unfilled, tabs are 5 spaces, just like in -filled and -ragged. - See the CCDF_* display in OpenBSD ccdconfig(8). - - .Nx 1.0a should be "NetBSD 1.0A", not "NetBSD 1.0a", see OpenBSD ccdconfig(8). @@ -194,15 +167,24 @@ 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 ************************************************************************ +* error reporting issues +************************************************************************ + +- .fi without preceding .nf need not be an ERROR, + a warning is sufficient; occurs in all postfix manuals + reported by brad@ Sun, Jan 09, 2011 at 09:45:58PM -0500 + +- downgrade "ERROR: macro requires body argument(s)" to WARNING + for the typical man(7) cases, it keeps confusing people + reminded by brad@ Sun, Jan 09, 2011 at 09:45:58PM -0500 + +************************************************************************ * performance issues ************************************************************************ @@ -217,3 +199,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. +