GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  CLI-GENERATE (1)

NAME

cli-generate - Generate source and documentation from CLI descriptions

CONTENTS

Synopsis
Description
     Operation
     File Format
     Headers
     Section Names
     Options Format
     Formatting
Options
Examples
Author

SYNOPSIS

cli-generate [ -c | -h | -m | -w ] FILENAME.cli

DESCRIPTION

    Operation

cli-generate reads in a CLI (command line interface) description file, parses it into its various sections, and prints out one of a set of output files. In typical usage, that output would be directed to a file and later compiled or included in other sources.

The CLI file (named PROGRAM.cli) is divided into two parts, a header (formatted much like a standard mail header) and a series of sections. Headers and sections other than those specified below are ignored. All headers and sections are optional.

    File Format

file = header "\n" *section

header = *(header-line "\n")

header-line = header-field ":" whitespace value

whitespace = *(SPACE / TAB)

section = "[" name "]" "\n" lines

lines = *( line "\n" )

    Headers

Description:
  A one-line description of what the program does.
Include:
  Add C statements to #include the given source file. Must be formatted as either <file> or file
Min: The minimum number of allowed non-option arguments. Defaults to 0.
Max: The maximum number of allowed non-option arguments. Negative values mean unlimited. Defaults to -1.
Show-Pid:
  Set to non-zero if the resulting program is to show its PID with every output message. Defaults to 0.
Usage: A one-line description of the intended usage. Defaults to empty.

    Section Names

[prefix]
  The text in this section is shown in the command usage before the options description.
[options]
  The list of options this program accepts. See below for their format.
[suffix]
  The text in this section is shown in the command usage after the options description.
[description]
[return value]
[errors]
[examples]
[environment]
[files]
[see also]
[notes]
[caveats]
[diagnostics]
[bugs]
[restrictions]
[author]
[history]
  These sections are formatted and copied into the man page in the standard order.

    Options Format

options = *(option / separator)

option = option1 "\n" option2 "\n" *(line "\n")

option1 = [shortopt] [longopt] type ["=" flag-value] variable ["=" init]

option2 = helpstr ["=" default]

separator = "-- " text "\n"

shortopt = "-" character

longopt = "--" word

type = "FLAG" / "COUNTER" / "INTEGER" / "UINTEGER" / "STRING" / "STRINGLIST" / "FUNCTION"

If not specified, flag-value and init are 0, and default is empty.

    Formatting

Except for [prefix], [options], and [suffix], all of the sections support formatting instructions similar to that of TeXinfo (but greatly simplified).
@strong{text}
  Use "strong" (bold) text.
@command{text}
  Indicate the name of a command.
@option{text}
  Indicate a command-line option.
@emph{text}
  Use "emphatic" (italicized) text.
@var{text}
  Indicate a metasyntactic variable.
@env{text}
  Indicate an environment variable.
@file{text}
  Indicate the name of a file.
@code{text}
  Indicate text that is a literal example of a piece of a program.
@samp{text}
  Indicate text that is a literal example of a sequence of characters.
@example
@end example
  The text between these two tags is indented.
@verbatim
@end verbatim
  Everything between these two tags is passed as-is (verbatim) to the output.
@table @format
@end table
  Mark up a two-column table, or "definition list".
@item paragraph
  Add an item to a table. The @item starts a paragraph that will be the actual list entry. Any subsequent paragraphs will be typeset seperately.

OPTIONS

-c Output C source code.
-h Output C header file.
-m Output a UNIX man page.
-w Output HTML (web) markup.

EXAMPLES

Here is a sample CLI file, containing many of the described elements.

Min: 1
Max: 1
Usage: PATH
Description: Create a file.
Show-Pid: 0
Include: <stdio.h>

[prefix] If the given PATH is a directory, it is suffixed with another name.

[description] @program generates a new random file from a variety of sources including @command{ls} and @command{ps} output.

If the given @option{PATH} is a directory, it is suffixed with another name of my choosing.

[options] -v --verbose FLAG=1 opt_verbose

-t --type STRING opt_type = "type1" The type of the file to generate. = type1 Possible types for this include @option{type1} and @option{base64}.

AUTHOR

Bruce Guenter <bruce@untroubled.org>
Search for    or go to Top of page |  Section 1 |  Main Index


CLI-GENERATE (1) -->

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.