blob: 60762b88233bca3e6f38a175ba14a968082c4854 [file] [log] [blame]
<html lang="en">
<head>
<title>Argp Help Flags - The GNU C Library</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="The GNU C Library">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Argp-Help.html#Argp-Help" title="Argp Help">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU C library.
This is Edition 0.12, last updated 2007-10-27,
of `The GNU C Library Reference Manual', for version
2.8 (Sourcery G++ Lite 2011.03-41).
Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002,
2003, 2007, 2008, 2010 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``Free Software Needs Free Documentation''
and ``GNU Lesser General Public License'', the Front-Cover texts being
``A GNU Manual'', and with the Back-Cover Texts as in (a) below. A
copy of the license is included in the section entitled "GNU Free
Documentation License".
(a) The FSF's Back-Cover Text is: ``You have the freedom to
copy and modify this GNU manual. Buying copies from the FSF
supports it in developing GNU and promoting software freedom.''-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
pre.display { font-family:inherit }
pre.format { font-family:inherit }
pre.smalldisplay { font-family:inherit; font-size:smaller }
pre.smallformat { font-family:inherit; font-size:smaller }
pre.smallexample { font-size:smaller }
pre.smalllisp { font-size:smaller }
span.sc { font-variant:small-caps }
span.roman { font-family:serif; font-weight:normal; }
span.sansserif { font-family:sans-serif; font-weight:normal; }
--></style>
<link rel="stylesheet" type="text/css" href="../cs.css">
</head>
<body>
<div class="node">
<a name="Argp-Help-Flags"></a>
<p>
Up:&nbsp;<a rel="up" accesskey="u" href="Argp-Help.html#Argp-Help">Argp Help</a>
<hr>
</div>
<h4 class="subsection">25.3.10 Flags for the <code>argp_help</code> Function</h4>
<p>When calling <code>argp_help</code> (see <a href="Argp-Help.html#Argp-Help">Argp Help</a>) or
<code>argp_state_help</code> (see <a href="Argp-Helper-Functions.html#Argp-Helper-Functions">Argp Helper Functions</a>) the exact output
is determined by the <var>flags</var> argument. This should consist of any of
the following flags, or'd together:
<dl>
<dt><code>ARGP_HELP_USAGE</code><a name="index-ARGP_005fHELP_005fUSAGE-3082"></a><dd>A unix &lsquo;<samp><span class="samp">Usage:</span></samp>&rsquo; message that explicitly lists all options.
<br><dt><code>ARGP_HELP_SHORT_USAGE</code><a name="index-ARGP_005fHELP_005fSHORT_005fUSAGE-3083"></a><dd>A unix &lsquo;<samp><span class="samp">Usage:</span></samp>&rsquo; message that displays an appropriate placeholder to
indicate where the options go; useful for showing the non-option
argument syntax.
<br><dt><code>ARGP_HELP_SEE</code><a name="index-ARGP_005fHELP_005fSEE-3084"></a><dd>A &lsquo;<samp><span class="samp">Try ... for more help</span></samp>&rsquo; message; &lsquo;<samp><span class="samp">...</span></samp>&rsquo; contains the
program name and &lsquo;<samp><span class="samp">--help</span></samp>&rsquo;.
<br><dt><code>ARGP_HELP_LONG</code><a name="index-ARGP_005fHELP_005fLONG-3085"></a><dd>A verbose option help message that gives each option available along
with its documentation string.
<br><dt><code>ARGP_HELP_PRE_DOC</code><a name="index-ARGP_005fHELP_005fPRE_005fDOC-3086"></a><dd>The part of the argp parser doc string preceding the verbose option help.
<br><dt><code>ARGP_HELP_POST_DOC</code><a name="index-ARGP_005fHELP_005fPOST_005fDOC-3087"></a><dd>The part of the argp parser doc string that following the verbose option help.
<br><dt><code>ARGP_HELP_DOC</code><a name="index-ARGP_005fHELP_005fDOC-3088"></a><dd><code>(ARGP_HELP_PRE_DOC | ARGP_HELP_POST_DOC)</code>
<br><dt><code>ARGP_HELP_BUG_ADDR</code><a name="index-ARGP_005fHELP_005fBUG_005fADDR-3089"></a><dd>A message that prints where to report bugs for this program, if the
<code>argp_program_bug_address</code> variable contains this information.
<br><dt><code>ARGP_HELP_LONG_ONLY</code><a name="index-ARGP_005fHELP_005fLONG_005fONLY-3090"></a><dd>This will modify any output to reflect the <code>ARGP_LONG_ONLY</code> mode.
</dl>
<p>The following flags are only understood when used with
<code>argp_state_help</code>. They control whether the function returns after
printing its output, or terminates the program:
<dl>
<dt><code>ARGP_HELP_EXIT_ERR</code><a name="index-ARGP_005fHELP_005fEXIT_005fERR-3091"></a><dd>This will terminate the program with <code>exit (argp_err_exit_status)</code>.
<br><dt><code>ARGP_HELP_EXIT_OK</code><a name="index-ARGP_005fHELP_005fEXIT_005fOK-3092"></a><dd>This will terminate the program with <code>exit (0)</code>.
</dl>
<p>The following flags are combinations of the basic flags for printing
standard messages:
<dl>
<dt><code>ARGP_HELP_STD_ERR</code><a name="index-ARGP_005fHELP_005fSTD_005fERR-3093"></a><dd>Assuming that an error message for a parsing error has printed, this
prints a message on how to get help, and terminates the program with an
error.
<br><dt><code>ARGP_HELP_STD_USAGE</code><a name="index-ARGP_005fHELP_005fSTD_005fUSAGE-3094"></a><dd>This prints a standard usage message and terminates the program with an
error. This is used when no other specific error messages are
appropriate or available.
<br><dt><code>ARGP_HELP_STD_HELP</code><a name="index-ARGP_005fHELP_005fSTD_005fHELP-3095"></a><dd>This prints the standard response for a &lsquo;<samp><span class="samp">--help</span></samp>&rsquo; option, and
terminates the program successfully.
</dl>
</body></html>