summaryrefslogtreecommitdiff
path: root/doc/cli.xhtml
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-11-16 11:43:19 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-11-16 11:43:19 +0200
commit5a2da5767e796bcfdaf5ebf3b80b93c57d31d0aa (patch)
treee3f101a7cae07ce18a485abc261b15467339861b /doc/cli.xhtml
parent03ee21e34a4829644cc07b4fc6378b2f5e1de937 (diff)
Support specifying documentation variables on command linedoc
Diffstat (limited to 'doc/cli.xhtml')
-rw-r--r--doc/cli.xhtml75
1 files changed, 39 insertions, 36 deletions
diff --git a/doc/cli.xhtml b/doc/cli.xhtml
index 896f237..e2baa6b 100644
--- a/doc/cli.xhtml
+++ b/doc/cli.xhtml
@@ -70,12 +70,6 @@
redirect the output to STDOUT instead of a file.</p>
<h1>OPTIONS</h1>
-
-<!--
- The following documentation was generated by CLI, a command
- line interface compiler for C++.
--->
-
<dl class="options">
<dt><code><b>--help</b></code></dt>
<dd>Print usage information and exit.</dd>
@@ -118,11 +112,33 @@
<dd>Generate all functions non-inline. By default simple functions are
made inline. This option suppresses creation of the inline file.</dd>
+ <dt><code><b>--cli-namespace</b></code> <i>ns</i></dt>
+ <dd>Generate the CLI support types in the <i>ns</i> namespace
+ (<code><b>cli</b></code> by default). The namespace can be nested, for
+ example <code><b>details::cli</b></code>. If the namespace is empty, then
+ the support types are generated in the global namespace.</dd>
+
<dt><code><b>--ostream-type</b></code> <i>type</i></dt>
<dd>Output stream type instead of the default
<code><b>std::ostream</b></code> that should be used to print usage and
exception information.</dd>
+ <dt><code><b>--generate-cxx</b></code></dt>
+ <dd>Generate C++ code. If neither <code><b>--generate-man</b></code> nor
+ <code><b>--generate-html</b></code> is specified, this mode is assumed by
+ default.</dd>
+
+ <dt><code><b>--generate-man</b></code></dt>
+ <dd>Generate documentation in the man page format.</dd>
+
+ <dt><code><b>--generate-html</b></code></dt>
+ <dd>Generate documentation in the HTML format.</dd>
+
+ <dt><code><b>--stdout</b></code></dt>
+ <dd>Write output to STDOUT instead of a file. This option is not valid
+ when generating C++ code and is normally used to combine generated
+ documentation for several option classes in a single file.</dd>
+
<dt><code><b>--suppress-undocumented</b></code></dt>
<dd>Suppress the generation of documentation entries for undocumented
options.</dd>
@@ -152,22 +168,24 @@
<dt><code><b>--exclude-base</b></code></dt>
<dd>Exclude base class information from usage and documentation.</dd>
- <dt><code><b>--cli-namespace</b></code> <i>ns</i></dt>
- <dd>Generate the CLI support types in the <i>ns</i> namespace
- (<code><b>cli</b></code> by default). The namespace can be nested, for
- example <code><b>details::cli</b></code>. If the namespace is empty, then
- the support types are generated in the global namespace.</dd>
-
- <dt><code><b>--generate-cxx</b></code></dt>
- <dd>Generate C++ code. If neither <code><b>--generate-man</b></code> nor
- <code><b>--generate-html</b></code> is specified, this mode is assumed by
- default.</dd>
-
- <dt><code><b>--generate-man</b></code></dt>
- <dd>Generate documentation in the man page format.</dd>
+ <dt><code><b>--class</b></code> <i>fq-name</i></dt>
+ <dd>Generate the man page or HTML documentation only for the
+ <i>fq-name</i> options class. The <i>fq-name</i> name should be a
+ fully-qualified options class name, for example,
+ <code><b>app::options</b></code>. To generate documentation for multiple
+ classes, repeat this option and the documentation will be produced in the
+ order specified. This functionality is useful if you need to assemble
+ documentation from multiple classes in a specific order or to insert
+ custom documentation between options belonging to different classes.</dd>
- <dt><code><b>--generate-html</b></code></dt>
- <dd>Generate documentation in the HTML format.</dd>
+ <dt><code><b>--docvar</b></code>|<code><b>-v</b></code> <i>name</i>=<i>val</i></dt>
+ <dd>Set documentation variable <i>name</i> to the value <i>val</i>.
+ Documentation variables can be substituted in prologues and epilogues (see
+ <code><b>--*-prologue*</b></code> and <code><b>--*-epilogue*</b></code>
+ options) using the <code><b>$</b></code><i>name</i><code><b>$</b></code>
+ expansion syntax (use <code><b>$$</b></code> to escape expansion). They
+ can also be defined in <code><b>.cli</b></code> files using the
+ <code>"\<i>name</i>=<i>val</i>"</code> syntax.</dd>
<dt><code><b>--hxx-prologue</b></code> <i>text</i></dt>
<dd>Insert <i>text</i> at the beginning of the generated C++ header
@@ -243,21 +261,6 @@
<dd>Insert the content of <i>file</i> at the end of the generated HTML
file.</dd>
- <dt><code><b>--class</b></code> <i>fq-name</i></dt>
- <dd>Generate the man page or HTML documentation only for the
- <i>fq-name</i> options class. The <i>fq-name</i> name should be a
- fully-qualified options class name, for example,
- <code><b>app::options</b></code>. To generate documentation for multiple
- classes, repeat this option and the documentation will be produced in the
- order specified. This functionality is useful if you need to assemble
- documentation from multiple classes in a specific order or to insert
- custom documentation between options belonging to different classes.</dd>
-
- <dt><code><b>--stdout</b></code></dt>
- <dd>Write output to STDOUT instead of a file. This option is not valid
- when generating C++ code and is normally used to combine generated
- documentation for several option classes in a single file.</dd>
-
<dt><code><b>--hxx-suffix</b></code> <i>suffix</i></dt>
<dd>Use <i>suffix</i> instead of the default <code><b>.hxx</b></code> to
construct the name of the generated header file.</dd>