]> git.cameronkatri.com Git - mandoc.git/blobdiff - TODO
Note missing man/roff(?) feature not documented anywhere.
[mandoc.git] / TODO
diff --git a/TODO b/TODO
index 70a6e01af3a3ab3c186a4a398d0f0c0c544eed92..3fc2d98b58bd47880946e91aed52b6689d33afe7 100644 (file)
--- a/TODO
+++ b/TODO
@@ -2,6 +2,10 @@
 * missing features
 ************************************************************************
 
+- .` "macro" not implemented (see gnu/usr.bin/cvs/man/cvs.1)
+  found by Anthony Bentley (anthonyjbentley@gmail.com)
+  06/01/10 23:48 on tech@openbsd
+
 - 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
   noticed by espie@  Fri, 23 Apr 2010 17:10:35 +0200
   NEEDS MERGING TO bsd.lv
 
+- implement blank `Bl -column', such as
+  .Bl -column
+  .It foo Ta bar
+  .El
+
+- explicitly disallow nested `Bl -column', which would clobber internal
+  flags defined for struct mdoc_macro
+
+- set a meaningful default if no `Bl' list type is assigned
 
+- have a blank `It' head for `Bl -tag' not puke
+  
 ************************************************************************
 * formatting issues: ugly output
 ************************************************************************
 
 - OpenBSD::PackageName(3p) has "if (block) 90:1" in the parse tree
 
+************************************************************************
+* performance issues
+************************************************************************
+
+Several areas can be cleaned up to make mandoc even faster.  These are 
+
+- cache `Bd' display types as `Bl' types are cached (this primarily
+  improves code-size by removing the a2disp type functions)
+
+- improve caching mechanism to handle other per-element arguments so
+  that they need not be recalculated between front- and back-ends (also
+  reduces code size and complexity)
+
+- improve hashing mechanism for macros (quite important: performance)
+
+- improve hashing mechanism for characters (not as important)