Template:Man
To be used for inserting manual page links into articles on Unix topics.
Usage
Examples
In Out {{man|3|printf}}
The Single UNIX Specification, Version 4 from The Open Group – System Interfaces Reference,{{man|3|printf|||inline}}
{{man|3|printf|FreeBSD}}
FreeBSD Library Functions Manual –{{man|3|printf||formatted output conversion}}
The Single UNIX Specification, Version 4 from The Open Group : formatted output conversion – System Interfaces Reference,
Parameters
- Manual section
- Manual page name
- Source (the name of a subpage in the Template:Man namespace e.g. FreeBSD. Leave blank for the current default.)
- Page description
- Style parameter; currently
inline
omits the attribution.
Available sources
Please add to this table as you write new sources!
Source Example Result default {{man|1|ls}}
The Single UNIX Specification, Version 4 from The Open Group – Shell and Utilities Reference,die.net {{man|1|ls|die.net}}
Linux User Commands Manual –Version 6 Unix {{man|1|ls|v6}}
Version 6 Unix Programmer's Manual –Version 7 Unix {{man|1|ls|v7}}
Version 7 Unix Programmer's Manual –Version 8 Unix {{man|1|ls|v8}}
Version 8 Unix Programmer's Manual –4.2BSD {{man|1|ls|4.2BSD}}
4.2BSD General Commands Manual –4.3BSD {{man|1|ls|4.3BSD}}
4.3BSD General Commands Manual –4.3BSD-Reno {{man|1|ls|4.3BSD-Reno}}
BSD General Commands Manual –4.4BSD-Lite2 {{man|1|ls|4.4BSD-Lite2}}
BSD General Commands Manual –9front {{man|1|ls|9front}}
– 9front manual page Darwin {{man|1|ls|Darwin}}
Darwin and macOS General Commands Manual –Debian {{man|1|ls|Debian}}
Debian General Commands Manual –man.cx {{man|8|iptables|man.cx|inline}}
DragonFly BSD {{man|1|ls|DragonFly BSD}}
DragonFly BSD General Commands Manual –FreeBSD {{man|1|ls|FreeBSD}}
FreeBSD General Commands Manual –HP-UX {{man|1|ls|HP-UX}}
HP-UX 11i User Commands Manual –Inferno {{man|1|ls|Inferno}}
Inferno General commands Manual –IRIX {{man|1|ls|IRIX}}
IRIX 6.5 User Commands Manual –Linux {{man|7|epoll|Linux}}
Linux Programmer's Manual – Overview, Conventions and Miscellanea –ManKier {{man|1|ls|ManKier}}
Linux General Commands Manual –MirOS BSD {{man|1|ls|MirOS BSD}}
MirOS BSD i386 General Commands Manual –NetBSD {{man|1|ls|NetBSD}}
NetBSD General Commands Manual –OpenBSD {{man|1|ls|OpenBSD}}
OpenBSD General Commands Manual –OpenSolaris {{man|1|ls|OpenSolaris}}
illumos and OpenSolaris User Commands Reference Manual from latest Sun based OpenSolaris –perldoc {{man|1|perlrun|perldoc}}
Perl Programming Documentation –Plan 9 {{man|1|ls|Plan 9}}
Plan 9 Programmer's Manual, Volume 1 –Solaris {{man|1|ls|Solaris}}
Solaris 11.4 User Commands Reference Manual –SUS {{man|cu|ls|SUS}}
The Single UNIX Specification, Version 4 from The Open Group – Shell and Utilities Reference,SUS6 {{man|sh|putmsg|SUS6}}
The Single UNIX Specification, Version 3 from The Open Group – System Interfaces Reference,
- ^ Redirects to the current default
- ^ 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.
- ^ Note: this is the official documentation included with Perl. It does not contain general manual pages.
- ^ Note: the SUS pages use a non-numerical chapter system. A simple mapping is in place for human comfort.
General recommendations
For most articles, it is preferable to cite SUS (if present) for standard, the FreeBSD page for history, and the Linux page for a relatively widespread form. Add other OS pages as needed.
There are several sources for Linux manual pages. Just use "Linux" which points to manned.org, which has up-to-date manpages collected from several Linux distributions (as well as FreeBSD); it will, by default, "try to get the latest and most-close-to-upstream version of a man page", which "will fetch the man page from any of the available systems". Do not go for die.net unless it's the only place where a page can be found, as the formatting is horrible and the pages are old.
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}}
Sun Studio Developer's Manual : source-level debugging tool –
The interface of Template:man/format is therefore externally visible and needs to be kept constant.
Hacking
Writing sources
A source takes three parameters:
- Manual section
- Manual page name
- Output selector:
attrib
for attributionurl
for URL to pagedisplay_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/SUS. Template:man/format actually formats the link and descriptions into a nice-looking link+auxilia in Unix style.
References
To be used for inserting manual page links into articles on Unix topics.
Parameter | Description | Type | Status | |
---|---|---|---|---|
Manual section | 1 | The section of the manual. e.g. if the manual page is 'ls(1)', the section is 1.
| String | required |
Manual page name | 2 | The name of the page you are referring to
| String | required |
Source | 3 | The name of a subpage in the 'Template:Man' namespace.
| String | suggested |
Page description | 4 | Will appear after the link to the man page | Content | optional |
Style parameter | 5 | Currently "inline" omits the attribution
| String | optional |