summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2021-11-15 14:47:46 +0100
committerDaniel Stenberg <daniel@haxx.se>2021-11-15 14:51:59 +0100
commitc2a62638c7d83bcd676e39c25a254cb30251e692 (patch)
tree4bc4b99516833891cdfd22d52f0bacad68c2f56a
parent3bf54f90f3875062c0aa984cb90ddd35565d01cd (diff)
downloadcurl-bagder/gen-example.tar.gz
gen.pl: improve example output formatbagder/gen-example
Treat consecutive lines that start with a space to be "examples". They are output enclosed by .nf and .fi Updated form.d to use this new fanciness
-rw-r--r--docs/cmdline-opts/MANPAGE.md3
-rw-r--r--docs/cmdline-opts/form.d12
-rwxr-xr-xdocs/cmdline-opts/gen.pl11
3 files changed, 16 insertions, 10 deletions
diff --git a/docs/cmdline-opts/MANPAGE.md b/docs/cmdline-opts/MANPAGE.md
index f7f09eb1d..e3f5681a2 100644
--- a/docs/cmdline-opts/MANPAGE.md
+++ b/docs/cmdline-opts/MANPAGE.md
@@ -40,6 +40,9 @@ correct markup that shows both short and long version.
Text written within `*asterisks*` will get shown using italics. Text within
two `**asterisks**` will get shown using bold.
+Text that is prefixed with a space will be treated like an "example" and will
+be output in monospace.
+
## Header and footer
`page-header` is the file that will be output before the generated options
diff --git a/docs/cmdline-opts/form.d b/docs/cmdline-opts/form.d
index 737d2b398..2347015f2 100644
--- a/docs/cmdline-opts/form.d
+++ b/docs/cmdline-opts/form.d
@@ -91,16 +91,12 @@ carriage-returns and trailing spaces are stripped.
Here is an example of a header file contents:
# This file contain two headers.
-.br
X-header-1: this is a header
# The following header is folded.
-.br
X-header-2: this is
-.br
another header
-
To support sending multipart mail messages, the syntax is extended as follows:
.br
- name can be omitted: the equal sign is the first character of the argument,
@@ -115,11 +111,8 @@ inline part in two alternative formats: plain text and HTML. It attaches a
text file:
curl -F '=(;type=multipart/alternative' \\
-.br
- -F '=plain text message' \\
-.br
- -F '= <body>HTML message</body>;type=text/html' \\
-.br
+ -F '=plain text message' \\
+ -F '= <body>HTML message</body>;type=text/html' \\
-F '=)' -F '=@textfile.txt' ... smtp://example.com
Data can be encoded for transfer using encoder=. Available encodings are
@@ -133,7 +126,6 @@ Example: send multipart mail with a quoted-printable text message and a
base64 attached file:
curl -F '=text message;encoder=quoted-printable' \\
-.br
-F '=@localfile;encoder=base64' ... smtp://example.com
See further examples and details in the MANUAL.
diff --git a/docs/cmdline-opts/gen.pl b/docs/cmdline-opts/gen.pl
index e891f6709..f6f6ce8be 100755
--- a/docs/cmdline-opts/gen.pl
+++ b/docs/cmdline-opts/gen.pl
@@ -76,6 +76,7 @@ sub manpageify {
sub printdesc {
my @desc = @_;
+ my $exam = 0;
for my $d (@desc) {
if($d =~ /\(Added in ([0-9.]+)\)/i) {
my $ver = $1;
@@ -89,6 +90,16 @@ sub printdesc {
# *italics*
$d =~ s/\*([^ ]*)\*/\\fI$1\\fP/g;
}
+ if(!$exam && ($d =~ /^ /)) {
+ # start of example
+ $exam = 1;
+ print ".nf\n"; # no-fill
+ }
+ elsif($exam && ($d !~ /^ /)) {
+ # end of example
+ $exam = 0;
+ print ".fi\n"; # fill-in
+ }
# skip lines starting with space (examples)
if($d =~ /^[^ ]/) {
for my $k (keys %optlong) {