# $Id: TODO,v 8.4 1997/10/27 11:53:06 ksb Exp $

Bug:
	exclusive every and option trigger breaks -- no repeat-by.
	ends track is wrong, we don't have to be a "ENDS" to need checking


Fixes:	An invisible option trigger "%" needs to be forced to own the top
	level parameter processing so we can make it exclude the other options
	that have special actions.  Or some such.


Ideas:

Final type work:
	+ types should have a "if I'm used expand these files" rule.

	+ C++ style (kinda) template types would be _way_ cool.
	  Allow a synthetic type to require a <type> in the decls?
	  Might be more than a little over-kill.  Use the list attribute.

Add the "output" contruct:
	A format to let mkcmd output a file other than "%n.c" and "%n.h".
	This is what the manual page thing _should_ be based on.  And the
	case without the body of attributes should set the name of the
	output file (-n) and set overwrite.

	See output.c

Move the type conversion code into a template file
	Like cvt.{mi,mc,mh} would have the code in them and we'd extract
	it from the files.  The hard coded stuff is clunky and I'd like
	to be able to replace check code as well.

Our command line:
     +	Add an option to turn _on/off_ #lines in the generated code.

     +	Add a expander buffer size option

Manual pages generation:
     +	Polish manual page code for routines for file readers.
	Put in the help message from the pORMaster option
        Put in everything from the RG node
        For each hunk:
                put in the whole line with a hunk baner
                put in TP for each field
	In the "See Also" section put in a .\" to remind the editor
	to put in apropos section 5 file description pages.


File readers:
     +  Routines should complain if the conversion throws away the end of
	the line...  It complains now if you toss only the whole line.
	(Also check for function/action column as the last one?)

     +	When we read a "boolean" "toggle" or "action" from a file we
	should do something more clever than we do (like look at
	the data spec rather than ignoring it).
	At least suggest a "Boolean" enum in the docs

     +  Booleans look for "0", "f"[nocase], "no", "false"[nocase], or
	all spaces, for "0" and anything else is "1".  Toggle I'm not
	sure!  Xor with what the boolean sez?  Hehehe.  Action we should
	do as we do, I believe (set the keep and call down).}

     !	File writers are too easy.  Just do it yourself (with printf).

Templates:
     +	ask for templates from the people who use mkcmd.

     +	write the fvwm template for its module interface

     +  do the other kinda templates (typeless ones)

--
kayessbee, Oct 1997 ksb@fedex.com
ksb@fedex.com, SA+C UNIX Support
