Difference between revisions of "Template:Man/doc"

From blackwiki
Jump to navigation Jump to search
imported>Vanisaac
m (→‎Internals: clean up per WP:CAT#T and WP:AWBREQ add template:Sandbox other)
 
(63 intermediate revisions by 31 users not shown)
Line 1: Line 1:
<includeonly>{{template doc page transcluded}}</includeonly><noinclude>{{template doc page viewed directly}}</noinclude>
+
{{Documentation subpage}}
 
<!-- EDIT TEMPLATE DOCUMENTATION BELOW THIS LINE -->
 
<!-- EDIT TEMPLATE DOCUMENTATION BELOW THIS LINE -->
 
To be used for inserting [[manual page]] links into articles on [[Unix]] topics.
 
To be used for inserting [[manual page]] links into articles on [[Unix]] topics.
Line 31: Line 31:
 
!Source!!Example!!Result
 
!Source!!Example!!Result
 
|-
 
|-
|[[/die.net|die.net]]<ref>Current default</ref>||{{tlx|man|1|man|die.net}}||{{man|1|man|die.net}}
+
|''[[/default|default]]''<ref>Redirects to the current default</ref>||{{tlx|man|1|ls}}||{{man|1|ls}}
 
|-
 
|-
|''[[/default|default]]''<ref>Redirects to the current default</ref>||{{tlx|man|1|man}}||{{man|1|man}}
+
|[[/die.net|die.net]]||{{tlx|man|1|ls|die.net}}||{{man|1|ls|die.net}}
 
|-
 
|-
|[[/FreeBSD|FreeBSD]]||{{tlx|man|1|man|FreeBSD}}||{{man|1|man|FreeBSD}}
+
|[[/v6|Version 6 Unix]]||{{tlx|man|1|ls|v6}}||{{man|1|ls|v6}}
 
|-
 
|-
|[[/Linux|Linux]]||{{tlx|man|1|man|Linux}}||{{man|1|man|Linux}}
+
|[[/v7|Version 7 Unix]]||{{tlx|man|1|ls|v7}}||{{man|1|ls|v7}}
 
|-
 
|-
|[[/OpenBSD|OpenBSD]]||{{tlx|man|1|man|OpenBSD}}||{{man|1|man|OpenBSD}}
+
|[[/4.2BSD|4.2BSD]]||{{tlx|man|1|ls|4.2BSD}}||{{man|1|ls|4.2BSD}}
 +
|-
 +
|[[/4.3BSD|4.3BSD]]||{{tlx|man|1|ls|4.3BSD}}||{{man|1|ls|4.3BSD}}
 +
|-
 +
|[[/4.3BSD-Reno|4.3BSD-Reno]]||{{tlx|man|1|ls|4.3BSD-Reno}}||{{man|1|ls|4.3BSD-Reno}}
 +
|-
 +
|[[/4.4BSD-Lite2|4.4BSD-Lite2]]||{{tlx|man|1|ls|4.4BSD-Lite2}}||{{man|1|ls|4.4BSD-Lite2}}
 +
|-
 +
|[[/9front|9front]]||{{tlx|man|1|ls|9front}}||{{man|1|ls|9front}}
 +
|-
 +
|[[/Darwin|Darwin]]||{{tlx|man|1|ls|Darwin}}||{{man|1|ls|Darwin}}
 +
|-
 +
|[[/Debian|Debian]]||{{tlx|man|1|ls|Debian}}||{{man|1|ls|Debian}}
 +
|-
 +
|[[/man.cx|man.cx]]||{{tlx|man|8|iptables|man.cx||inline}}||{{man|8|iptables|man.cx||inline}}
 +
|-
 +
|[[/DragonFly BSD|DragonFly BSD]]||{{tlx|man|1|ls|DragonFly BSD}}||{{man|1|ls|DragonFly BSD}}
 +
|-
 +
|[[/FreeBSD|FreeBSD]]||{{tlx|man|1|ls|FreeBSD}}||{{man|1|ls|FreeBSD}}
 +
|-
 +
|[[/HP-UX|HP-UX]]||{{tlx|man|1|ls|HP-UX}}||{{man|1|ls|HP-UX}}
 +
|-
 +
|[[/Inferno|Inferno]]||{{tlx|man|1|ls|Inferno}}||{{man|1|ls|Inferno}}
 +
|-
 +
|[[/IRIX|IRIX]]||{{tlx|man|1|ls|IRIX}}||{{man|1|ls|IRIX}}
 +
|-
 +
|[[/BIND_9|BIND 9]]||{{tlx|man|1|named|BIND 9}}||{{man|1|named|BIND 9}}
 +
|-
 +
|[[/Linux|Linux]]<ref name=linuxall>Note: this covers all sections, including section 1 of the Linux user's manual and sections 2, 3, 4, 5, 6, 7, and 8 of the Linux programmer's manual.</ref>||{{tlx|man|7|epoll|Linux}}||{{man|7|epoll|Linux}}
 +
|-
 +
|[[/ManKier|ManKier]]<ref name=linuxall/>||{{tlx|man|1|ls|ManKier}}||{{man|1|ls|ManKier}}
 +
|-
 +
|[[/MirOS BSD|MirOS BSD]]||{{tlx|man|1|ls|MirOS BSD}}||{{man|1|ls|MirOS BSD}}
 +
|-
 +
|[[/NetBSD|NetBSD]]||{{tlx|man|1|ls|NetBSD}}||{{man|1|ls|NetBSD}}
 +
|-
 +
|[[/OpenBSD|OpenBSD]]||{{tlx|man|1|ls|OpenBSD}}||{{man|1|ls|OpenBSD}}
 +
|-
 +
|[[/OpenSolaris|OpenSolaris]]||{{tlx|man|1|ls|OpenSolaris}}||{{man|1|ls|OpenSolaris}}
 +
|-
 +
|[[/perldoc|perldoc]]<ref>Note: this is the official documentation included with [[Perl]]. It does not contain general manual pages.</ref>||{{tlx|man|1|perlrun|perldoc}}||{{man|1|perlrun|perldoc}}
 +
|-
 +
|[[/Plan 9|Plan 9]]||{{tlx|man|1|ls|Plan 9}}||{{man|1|ls|Plan 9}}
 +
|-
 +
|[[/Solaris|Solaris]]||{{tlx|man|1|ls|Solaris}}||{{man|1|ls|Solaris}}
 +
|-
 +
|[[/SUS|SUS]]<ref name=sus>Note: the SUS pages use a non-numerical chapter system. A simple mapping is in place for human comfort.</ref>||{{tlx|man|cu|ls|SUS}}||{{man|cu|ls|SUS}}
 +
|-
 +
|[[/SUS6|SUS6]]<ref name=sus/>||{{tlx|man|sh|putmsg|SUS6}}||{{man|sh|putmsg|SUS6}}
 
|}
 
|}
  
 
<references/>
 
<references/>
 +
 +
===Other sources===
 +
Occasionally you will come across manual pages for which writing a source is overkill.  In this case you can use [[Template:man/format]] directly with a URL for formatting:
 +
:{|class="wikitable"
 +
|-
 +
!In !! Out
 +
|-
 +
|<code><nowiki>{{man/format|1|dbx|http://.../dbx.1.html|source-level debugging tool|[[Sun Studio]] Developer's Manual}}</nowiki></code> || {{man/format|1|dbx|http://developers.sun.com/sunstudio/documentation/ss11/mr/man1/dbx.1.html|source-level debugging tool|[[Sun Studio]] Developer's Manual}}
 +
|}
 +
The interface of [[Template:man/format]] is therefore externally visible and needs to be kept constant.
  
 
==Hacking==
 
==Hacking==
Line 49: Line 107:
 
#Manual section
 
#Manual section
 
#Manual page name
 
#Manual page name
#Output selector: <code>attrib</code> for attribution, <code>url</code> for URL to page.
+
#Output selector:
 +
#*<code>attrib</code> for attribution
 +
#*<code>url</code> for URL to page
 +
#*<code>display_section</code> for section to display in parentheses.
 
See [[Template:Man/die.net]] for an example; see [[Template:Man/FreeBSD]] for a demonstration of varying the attribution by manual section.
 
See [[Template:Man/die.net]] for an example; see [[Template:Man/FreeBSD]] for a demonstration of varying the attribution by manual section.
  
Line 55: Line 116:
 
[[Template:man]] handles choosing the default source and calling it for URL and attribution; the default source is [[Template:man/default]], which is a template redirect currently to [[Template:man/die.net]]. [[Template:man/format]] actually formats the link and descriptions into a nice-looking link+auxilia in Unix style.
 
[[Template:man]] handles choosing the default source and calling it for URL and attribution; the default source is [[Template:man/default]], which is a template redirect currently to [[Template:man/die.net]]. [[Template:man/format]] actually formats the link and descriptions into a nice-looking link+auxilia in Unix style.
  
<includeonly>
+
<includeonly>{{Sandbox other||
<!-- ADD CATEGORIES BELOW THIS LINE -->
 
 
[[Category:External link templates|{{PAGENAME}}]]
 
[[Category:External link templates|{{PAGENAME}}]]
[[Category:Computing templates|{{PAGENAME}}]]
+
[[Category:Software templates|{{PAGENAME}}]]
[[Category:Templates using ParserFunctions|{{PAGENAME}}]]
+
}}</includeonly>
<!-- ADD INTERWIKIS BELOW THIS LINE -->
 
</includeonly>
 

Latest revision as of 00:33, 26 April 2020

To be used for inserting manual page links into articles on Unix topics.

Usage

Examples

In Out
{{man|3|printf}} printf – System Interfaces Reference, The Single UNIX Specification, Issue 7 from The Open Group
{{man|3|printf|||inline}} printf
{{man|3|printf|FreeBSD}} printf(3) – FreeBSD Library Functions Manual
{{man|3|printf||formatted output conversion}} printf: formatted output conversion – System Interfaces Reference, The Single UNIX Specification, Issue 7 from The Open Group

Parameters

  1. Manual section
  2. Manual page name
  3. Source (the name of a subpage in the Template:Man namespace e.g. FreeBSD. Leave blank for the current default.)
  4. Page description
  5. Style parameter; currently inline omits the attribution.

Available sources

Please add to this table as you write new sources!

Source Example Result
default[1] {{man|1|ls}} ls – Commands & Utilities Reference, The Single UNIX Specification, Issue 7 from The Open Group
die.net {{man|1|ls|die.net}} ls(1) – Linux User Commands Manual
Version 6 Unix {{man|1|ls|v6}} ls(1) – Version 6 Unix Programmer's Manual
Version 7 Unix {{man|1|ls|v7}} ls(1) – Version 7 Unix Programmer's Manual
4.2BSD {{man|1|ls|4.2BSD}} ls(1) – 4.2BSD General Commands Manual
4.3BSD {{man|1|ls|4.3BSD}} ls(1) – 4.3BSD General Commands Manual
4.3BSD-Reno {{man|1|ls|4.3BSD-Reno}} ls(1) – BSD General Commands Manual
4.4BSD-Lite2 {{man|1|ls|4.4BSD-Lite2}} ls(1) – BSD General Commands Manual
9front {{man|1|ls|9front}} ls(1) – 9front manual page
Darwin {{man|1|ls|Darwin}} ls(1) – Darwin and macOS General Commands Manual
Debian {{man|1|ls|Debian}} ls(1) – Debian General Commands Manual
man.cx {{man|8|iptables|man.cx|inline}} iptables(8)
DragonFly BSD {{man|1|ls|DragonFly BSD}} ls(1) – DragonFly BSD General Commands Manual
FreeBSD {{man|1|ls|FreeBSD}} ls(1) – FreeBSD General Commands Manual
HP-UX {{man|1|ls|HP-UX}} ls(1) – HP-UX 11i User Commands Manual
Inferno {{man|1|ls|Inferno}} ls(1) – Inferno General commands Manual
IRIX {{man|1|ls|IRIX}} ls(1) – IRIX 6.5 User Commands Manual
BIND 9 {{man|1|named|BIND 9}} named – BIND 9
Linux[2] {{man|7|epoll|Linux}} epoll(7) – Linux Programmer's Manual – Overview, Conventions and Miscellanea
ManKier[2] {{man|1|ls|ManKier}} ls(1) – Linux General Commands Manual
MirOS BSD {{man|1|ls|MirOS BSD}} ls(1) – MirOS BSD i386 General Commands Manual
NetBSD {{man|1|ls|NetBSD}} ls(1) – NetBSD General Commands Manual
OpenBSD {{man|1|ls|OpenBSD}} ls(1) – OpenBSD General Commands Manual
OpenSolaris {{man|1|ls|OpenSolaris}} ls(1) – illumos and OpenSolaris User Commands Reference Manual from latest Sun based OpenSolaris
perldoc[3] {{man|1|perlrun|perldoc}} perlrun(1) – Perl Programming Documentation
Plan 9 {{man|1|ls|Plan 9}} ls(1) – Plan 9 Programmer's Manual, Volume 1
Solaris {{man|1|ls|Solaris}} ls(1) – Solaris 10 User Commands Reference Manual
SUS[4] {{man|cu|ls|SUS}} ls – Commands & Utilities Reference, The Single UNIX Specification, Issue 7 from The Open Group
SUS6[4] {{man|sh|putmsg|SUS6}} putmsg – System Interfaces Reference, The Single UNIX Specification, Issue 6 from The Open Group
  1. Redirects to the current default
  2. 2.0 2.1 Note: this covers all sections, including section 1 of the Linux user's manual and sections 2, 3, 4, 5, 6, 7, and 8 of the Linux programmer's manual.
  3. Note: this is the official documentation included with Perl. It does not contain general manual pages.
  4. 4.0 4.1 Note: the SUS pages use a non-numerical chapter system. A simple mapping is in place for human comfort.

Other sources

Occasionally you will come across manual pages for which writing a source is overkill. In this case you can use Template:man/format directly with a URL for formatting:

In Out
{{man/format|1|dbx|http://.../dbx.1.html|source-level debugging tool|[[Sun Studio]] Developer's Manual}} dbx(1): source-level debugging tool – Sun Studio Developer's Manual

The interface of Template:man/format is therefore externally visible and needs to be kept constant.

Hacking

Writing sources

A source takes three parameters:

  1. Manual section
  2. Manual page name
  3. Output selector:
    • attrib for attribution
    • url for URL to page
    • display_section for section to display in parentheses.

See Template:Man/die.net for an example; see Template:Man/FreeBSD for a demonstration of varying the attribution by manual section.

Internals

Template:man handles choosing the default source and calling it for URL and attribution; the default source is Template:man/default, which is a template redirect currently to Template:man/die.net. Template:man/format actually formats the link and descriptions into a nice-looking link+auxilia in Unix style.