Module command line parser: Difference between revisions

From GRASS-Wiki
Jump to navigation Jump to search
(init)
 
Line 25: Line 25:
== GUI window parser ==
== GUI window parser ==


* auto-created from --tcltk or --xml-description command line options.
* Auto-created from <tt>--tcltk</tt> or <tt>--interface-description</tt> (for XML) command line options.
* options may be grouped into tabs
* Options may be grouped into tabs by the parser settings
* quotes to protect special characters from the shell are not needed.
* Quotes to protect "special characters" from the shell are not needed here. Quotes needed to denote SQL 'strings' are still needed.
 


== Help page template ==
== Help page template ==


* auto-created with the --html-description command line option.
* auto-created with the --html-description command line option.

Revision as of 07:18, 18 December 2007

GRASS's command line parser is used by just about all modules to check input values, create help pages and GUIs. With the help of the g.parser module your shell or Python scripts can automatically generate help page templates and fully functional GUI windows.


Command line parser

  • options take user input (name or number) and of the style:
option=answer
  • flags are on/off switches and of the style
-f


  • the first option= listed by --help may be skiped, for example:
d.rast elevation.dem
  • option names may be shortened up to the point where they collide.

Thus shortening option names in a module with color= and column= options would require at minimum colo= and colu=. for example:

input=in=   and   output=out=
  • flags may be combined behind a single "-". for example:
-r -f -t   is the same as   -rtf


GUI window parser

  • Auto-created from --tcltk or --interface-description (for XML) command line options.
  • Options may be grouped into tabs by the parser settings
  • Quotes to protect "special characters" from the shell are not needed here. Quotes needed to denote SQL 'strings' are still needed.

Help page template

  • auto-created with the --html-description command line option.