curl / Mailing Lists / curl-users / Single Mail


documenting command line options

From: Daniel Stenberg <>
Date: Sun, 13 Nov 2016 23:51:49 +0100 (CET)


As I was mentioning before, I've been planning to provide a new way to write
docs for the command line options and generate the main curl man page from
this new method.

I want to show what I have in mind even though it isn't complete and isn't yet
a full replacement. I figure I'd show what I have first so that you can bring
me your suggestions and idea before I put too much work into making it into
something that could be made better. This is right now in fact only
documenting 12 command line options out of the current 187.

Nothing is written in stone for this. We can still change whatever we want for
this. Or even ditch the entire thing if we deem it a bad way forward.

The file format and system concept is described here, at least rudimentary:

Some example snippets include the description of --http2:

That when generated into man page looks like this:

          (HTTP) Tells curl to use HTTP version 2.

          See also --no-alpn. --http2 requires that the underlying libcurl
          was built to support HTTP/2. This option overrides --http1.1 and
          -0, --http1.0 and --http2-prior-knowledge. Added in 7.33.0.

Or why not the --verbose one:

That when generated into man page looks like this:

   -v, --verbose
          Makes curl verbose during the operation. Useful for debugging
          and seeing what's going on "under the hood". A line starting
          with '>' means "header data" sent by curl, '<' means "header
          data" received by curl that is hidden in normal cases, and a
          line starting with '*' means additional info provided by curl.

          If you only want HTTP headers in the output, --include might be
          the option you're looking for.

          If you think this option still doesn't give you enough details,
          consider using --trace or --trace-ascii instead.

          Use --silent to make curl really quiet.

          This option overrides --trace and --trace-ascii.

List admin:
Received on 2016-11-13