+ } else if (streq(type, "summary")) {
+ /* Summary comes after - on first line. */
+ char *dash;
+
+ dash = strchr(lines[0], '-');
+ if (!dash)
+ errx(1, "Malformed first line: no -");
+ dash += strspn(dash, "- ");
+ puts(dash);
+ } else if (streq(type, "description")) {
+ line = 1;
+ while (is_blank(lines[line]))
+ line++;
+
+ while (!end_section(lines[line]))
+ puts(lines[line++]);
+ } else if (streq(type, "example")) {
+ line = find_section(lines, type, false);
+ if (lines[line]) {
+ unsigned int strip;
+ line++;
+
+ while (is_blank(lines[line]))
+ line++;
+
+ /* Examples can be indented. Take cue
+ * from first non-blank line. */
+ if (lines[line])
+ strip = strspn(lines[line], " \t");
+
+ while (!end_section(lines[line])) {
+ if (strspn(lines[line], " \t") >= strip)
+ puts(lines[line] + strip);
+ else
+ puts(lines[line]);
+ line++;
+ }
+ }
+ } else if (streq(type, "all")) {
+ for (line = 0; lines[line]; line++)
+ puts(lines[line]);
+ } else
+ errx(1, "Unknown type '%s'", type);
+
+ talloc_free(lines);