AutoGen: automatic options

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

### 7.3.6 Automatically Supported Options

AutoOpts provides automated support for five options. `help` and `more-help` are always provided. `version` is provided if `version` is defined in the option definitions See section 7.3.1 Program Description Attributes. `save-opts` and `load-opts` are provided if at least one `homerc` is defined See section 7.3.1 Program Description Attributes.

Below are the option names and flag values. The flags are activated if and only if at least one user-defined option also uses a flag value. These flags may be deleted or changed to characters of your choosing by specifying `xxx-value = "y";`, where `xxx` is one of the five names below and `y` is either empty or the character of your choice. For example, to change the help flag from `?` to `h`, specify `help-value = "h";`; and to require that `save-opts` be specified only with its long option name, specify `save-opts-value = "";`.

``help -?'`
  This option will immediately invoke the `USAGE()` procedure and display the usage line, a description of each option with its description and option usage information. This is followed by the contents of the definition of the `detail` text macro.

``more-help -!'`
  This option is identical to the `help` option, except that it also includes the contents of the `detail-file` file (if provided and found), plus the output is passed through a pager program. (`more` by default, or the program identified by the `PAGER` environment variable.)

``version -v'`
  This will print the program name, title and version. If it is followed by the letter `c` and a value for `copyright` and `owner` have been provided, then the copyright will be printed, too. If it is followed by the letter `n`, then the full copyright notice (if available) will be printed.

``save-opts ->'`
  This option will cause the option state to be printed in RC/INI file format when option processing is done but not yet verified for consistency. The program will terminate successfully without running when this has completed. Note that for most shells you will have to quote or escape the flag character to restrict special meanings to the shell.

  The output file will be the RC/INI file name (default or provided by `rcfile`) in the last directory named in a `homerc` definition.

  This option may be set from within your program by invoking the "`SET_OPT_SAVE_OPTS(filename)`" macro (see section 7.4.16 SET_OPT_name - Force an option to be set). Invoking this macro will set the file name for saving the option processing state, but the state will not actually be saved. You must call `optionSaveFile` to do that (see section 7.4.28.5 optionSaveFile). CAVEAT: if, after invoking this macro, you call `optionProcess`, the option processing state will be saved to this file and `optionProcess` will not return. You may wish to invoke `CLEAR_OPT( SAVE_OPTS )` (see section 7.4.2 CLEAR_OPT( <NAME> ) - Clear Option Markings) beforehand.

``load-opts -<'`
  This option will load options from the named file. They will be treated exactly as if they were loaded from the normally found RC/INI files, but will not be loaded until the option is actually processed. This can also be used within an RC/INI file causing them to nest.

  It is ultimately intended that specifying the option, `no-load-opts` will suppress the processing of rc/ini files and environment variables. To do this, AutoOpts must first implement pre-scanning of the options, environment and rc files.

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

This document was generated by Bruce Korb on October 24, 2004 using texi2html