Kyle Swenson | 8d8f654 | 2021-03-15 11:02:55 -0600 | [diff] [blame^] | 1 | ## linkperf: macro |
| 2 | # |
| 3 | # Usage: linkperf:command[manpage-section] |
| 4 | # |
| 5 | # Note, {0} is the manpage section, while {target} is the command. |
| 6 | # |
| 7 | # Show PERF link as: <command>(<section>); if section is defined, else just show |
| 8 | # the command. |
| 9 | |
| 10 | [macros] |
| 11 | (?su)[\\]?(?P<name>linkperf):(?P<target>\S*?)\[(?P<attrlist>.*?)\]= |
| 12 | |
| 13 | [attributes] |
| 14 | asterisk=* |
| 15 | plus=+ |
| 16 | caret=^ |
| 17 | startsb=[ |
| 18 | endsb=] |
| 19 | tilde=~ |
| 20 | |
| 21 | ifdef::backend-docbook[] |
| 22 | [linkperf-inlinemacro] |
| 23 | {0%{target}} |
| 24 | {0#<citerefentry>} |
| 25 | {0#<refentrytitle>{target}</refentrytitle><manvolnum>{0}</manvolnum>} |
| 26 | {0#</citerefentry>} |
| 27 | endif::backend-docbook[] |
| 28 | |
| 29 | ifdef::backend-docbook[] |
| 30 | ifndef::perf-asciidoc-no-roff[] |
| 31 | # "unbreak" docbook-xsl v1.68 for manpages. v1.69 works with or without this. |
| 32 | # v1.72 breaks with this because it replaces dots not in roff requests. |
| 33 | [listingblock] |
| 34 | <example><title>{title}</title> |
| 35 | <literallayout> |
| 36 | ifdef::doctype-manpage[] |
| 37 | .ft C |
| 38 | endif::doctype-manpage[] |
| 39 | | |
| 40 | ifdef::doctype-manpage[] |
| 41 | .ft |
| 42 | endif::doctype-manpage[] |
| 43 | </literallayout> |
| 44 | {title#}</example> |
| 45 | endif::perf-asciidoc-no-roff[] |
| 46 | |
| 47 | ifdef::perf-asciidoc-no-roff[] |
| 48 | ifdef::doctype-manpage[] |
| 49 | # The following two small workarounds insert a simple paragraph after screen |
| 50 | [listingblock] |
| 51 | <example><title>{title}</title> |
| 52 | <literallayout> |
| 53 | | |
| 54 | </literallayout><simpara></simpara> |
| 55 | {title#}</example> |
| 56 | |
| 57 | [verseblock] |
| 58 | <formalpara{id? id="{id}"}><title>{title}</title><para> |
| 59 | {title%}<literallayout{id? id="{id}"}> |
| 60 | {title#}<literallayout> |
| 61 | | |
| 62 | </literallayout> |
| 63 | {title#}</para></formalpara> |
| 64 | {title%}<simpara></simpara> |
| 65 | endif::doctype-manpage[] |
| 66 | endif::perf-asciidoc-no-roff[] |
| 67 | endif::backend-docbook[] |
| 68 | |
| 69 | ifdef::doctype-manpage[] |
| 70 | ifdef::backend-docbook[] |
| 71 | [header] |
| 72 | template::[header-declarations] |
| 73 | <refentry> |
| 74 | <refmeta> |
| 75 | <refentrytitle>{mantitle}</refentrytitle> |
| 76 | <manvolnum>{manvolnum}</manvolnum> |
| 77 | <refmiscinfo class="source">perf</refmiscinfo> |
| 78 | <refmiscinfo class="version">{perf_version}</refmiscinfo> |
| 79 | <refmiscinfo class="manual">perf Manual</refmiscinfo> |
| 80 | </refmeta> |
| 81 | <refnamediv> |
| 82 | <refname>{manname}</refname> |
| 83 | <refpurpose>{manpurpose}</refpurpose> |
| 84 | </refnamediv> |
| 85 | endif::backend-docbook[] |
| 86 | endif::doctype-manpage[] |
| 87 | |
| 88 | ifdef::backend-xhtml11[] |
| 89 | [linkperf-inlinemacro] |
| 90 | <a href="{target}.html">{target}{0?({0})}</a> |
| 91 | endif::backend-xhtml11[] |