[BACK]Return to TODO CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc

Diff for /mandoc/TODO between version 1.45 and 1.64

version 1.45, 2010/09/08 11:57:29 version 1.64, 2010/11/03 12:07:58
Line 4 
Line 4 
 ************************************************************************  ************************************************************************
   
 ************************************************************************  ************************************************************************
   * 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  * missing features
 ************************************************************************  ************************************************************************
   
Line 36 
Line 51 
   \\ must behave in a macro def like in a macro argument,    \\ must behave in a macro def like in a macro argument,
   and when using the macro, it must expand yet again.    and when using the macro, it must expand yet again.
   
 - look at bsd.lv tbl(1)  - implement basic non-parametric .de to support e.g. sox(1)
   from kristaps@  Fri, 11 Sep 2009 17:10:53 +0200    .de SP
   also look at the mail from Thomas Klausner wiz at NetBSD    .if t .sp .5
     on Wed, 2 Jun 2010 11:01:29 +0200    .if n .sp
   joerg@ has patches for this somewhere...    ..
     .de EX
     .SP
     .nf
     .ft CW
     ..
     .de EE
     .ft R
     .SP
     .fi
     ..
     reported by naddy@ Sat, 16 Oct 2010 23:51:57 +0200
   
   - 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
         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)  - 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    These are a weird mixture of man(7) and custom autogenerated low-level
   roff stuff.  Figure out to what extent we can cope.    roff stuff.  Figure out to what extent we can cope.
Line 74 
Line 117 
 - allow `Qq', `Dq', `Sq', `Aq', `Bq' to have 0 arguments  - allow `Qq', `Dq', `Sq', `Aq', `Bq' to have 0 arguments
   noted by Alex Kozlov 08/06/10 23:05    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  * formatting issues: ugly output
 ************************************************************************  ************************************************************************
Line 90 
Line 145 
   try e.g. .Bl -column It Ta Ta    try e.g. .Bl -column It Ta Ta
   reported by millert Fri, 02 Apr 2010 16:13:46 -0400    reported by millert Fri, 02 Apr 2010 16:13:46 -0400
   
   - in enclosures, mandoc sometimes fancies a bogus end of sentence
     reminded by jmc@  Thu, 23 Sep 2010 18:13:39 +0059
   
 ************************************************************************  ************************************************************************
 * formatting issues: gratuitious differences  * formatting issues: gratuitious differences
 ************************************************************************  ************************************************************************
Line 98 
Line 156 
   to better distinguish the contents of .%T and .%J,    to better distinguish the contents of .%T and .%J,
   see for example OpenBSD cat(1)    see for example OpenBSD cat(1)
   
 - .It ${name Ns [ selector ] Ns }  
   should be "${name[selector]}" not "${name [selector]}"  
   This is parsed as  
   text("${name") text("[") Ns() text(selector)...  
   Opening punctuation should not fall out of .Ns.  
   see for example OpenBSD csh(1)  
   
 - In .Bl -bullet, the groff bullet is "+\b+\bo\bo", the mandoc bullet  - In .Bl -bullet, the groff bullet is "+\b+\bo\bo", the mandoc bullet
   is just "o\bo".    is just "o\bo".
   see for example OpenBSD ksh(1)    see for example OpenBSD ksh(1)
   
 - .No text No ) is "text )", not "text)"  
   see the terrible example  
     case word in [[(]  pattern [| pattern] ... ) list ;; ] ... esac  
   in OpenBSD ksh(1)  
   
 - .Sm should *not* produce as a blank line in .Bd -literal  
   see for example "Brace expansion" in OpenBSD ksh(1)  
   
 - The characters "|" and "\*(Ba" should never be bold,  - The characters "|" and "\*(Ba" should never be bold,
   not even in the middle of a word, e.g. ".Cm b\*(Bac" in    not even in the middle of a word, e.g. ".Cm b\*(Bac" in
   "mknod [-m mode] name b|c major minor"    "mknod [-m mode] name b|c major minor"
Line 131 
Line 174 
   In -unfilled, tabs are 5 spaces, just like in -filled and -ragged.    In -unfilled, tabs are 5 spaces, just like in -filled and -ragged.
   See the CCDF_* display in OpenBSD ccdconfig(8).    See the CCDF_* display in OpenBSD ccdconfig(8).
   
 - In .Bd -unfilled, .Pp should produce one blank line, not two;  
   see the ccd.conf display in OpenBSD ccdconfig(8).  
   
 - .Nx 1.0a  - .Nx 1.0a
   should be "NetBSD 1.0A", not "NetBSD 1.0a",    should be "NetBSD 1.0A", not "NetBSD 1.0a",
   see OpenBSD ccdconfig(8).    see OpenBSD ccdconfig(8).
Line 142 
Line 182 
   on the next line, it must be indented by -width, not width+1;    on the next line, it must be indented by -width, not width+1;
   see "rule block|pass" in OpenBSD ifconfig(8).    see "rule block|pass" in OpenBSD ifconfig(8).
   
 - When .%T is used outside an .Rs context and with a trailing comma,  - The \& zero-width character counts as output.
   there is no point in rendering two commata,    That is, when it is alone on a line between two .Pp,
   see the first paragraph of the DESCRIPTION in OpenBSD mount_nfs(8).    we want three blank lines, not two as in mandoc.
   
 - When .%T is used outside an .Rs context and without a trailing comma,  - When .Fn arguments exceed one output line, all but the first
   no comma should be rendered at all,    should be indented, see e.g. rpc(3);
   see the first paragraph of the DESCRIPTION in OpenBSD exports(5).    reported by jmc@ on discuss@  Fri, 29 Oct 2010 13:48:33 +0100
   
 - Bogus .Pp before .Bl should not cause a double blank line,  - It seems that .TP does not want TWOSPACE after the tag;
   see "The route utility provides the following simple commands:"    see bashbug(1); reported by naddy@
   in OpenBSD route(8).  
   
 - In -T[x]html, Rs/Re need a div.  - 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  * performance issues
Line 171  Several areas can be cleaned up to make mandoc even fa
Line 213  Several areas can be cleaned up to make mandoc even fa
 ************************************************************************  ************************************************************************
 * structural issues  * structural issues
 ************************************************************************  ************************************************************************
   
 - rendering frontend code can calculate widths only for plain strings,  
   not for strings containing escape sequences.  For example, this  
   hinders calculation of the indent required for .Nm \&[ in text(1).  
   comments from kristaps@  Wed, 21 Jul 2010 23:26:08 +0200  
   
 - another example of the same problem:  
   .Bl -tag -width "\eD{format}XX" -compact  
   in OpenBSD ksh(1) gives the wrong width  
   because "\e" is one character in groff, two in mandoc  
   
 - Now that `ds' is minimally supported, we can get rid of some  
   predefined strings.  \*(C+ has already been thrown out.  Track these  
   down and whack them.  Look in e.g. gcc.1 for the top-level `ds'  
   invocations.  These are reproduced across most crappy GNU manuals.  

Legend:
Removed from v.1.45  
changed lines
  Added in v.1.64

CVSweb