summaryrefslogtreecommitdiffstats
path: root/DOCS/OUTDATED-tech/manpage.txt
diff options
context:
space:
mode:
Diffstat (limited to 'DOCS/OUTDATED-tech/manpage.txt')
-rw-r--r--DOCS/OUTDATED-tech/manpage.txt283
1 files changed, 283 insertions, 0 deletions
diff --git a/DOCS/OUTDATED-tech/manpage.txt b/DOCS/OUTDATED-tech/manpage.txt
new file mode 100644
index 0000000000..f3ad7fd355
--- /dev/null
+++ b/DOCS/OUTDATED-tech/manpage.txt
@@ -0,0 +1,283 @@
+========================================
+A documentation about MPlayer's man page
+========================================
+
+
+About the documentation
+-----------------------
+
+Yes it's true: This is the documentation of the documentation (man page).
+This guide should be used as a reference for questions about the man page
+structure. It's not a strict guide but we recommend following it to get a
+uniform man page.
+
+
+
+What belongs in the man page?
+-----------------------------
+
+ - option descriptions (all)
+ - usage (options, configuration files, controls)
+ - basic examples
+
+
+
+What doesn't belong in the man page?
+------------------------------------
+
+ - instructions for installation, encoding and similar processes
+ - detailed evaluations or hints
+ - tutorials, guides
+
+
+
+How should patches look like?
+-----------------------------
+
+Follow the rules in patches.txt, they apply to the man page, too.
+Exceptions are:
+
+ - Cosmetic patches are allowed but should be done separately from the real
+ changes, be marked as cosmetic changes and shouldn't change the general
+ style without reasons/permissions.
+ - The same applies to spell checking.
+
+
+
+How do I create an HTML, text or other version of the man page?
+---------------------------------------------------------------
+
+The man page was more or less designed for groff as it is the main tool for
+it. Therefore only groff produces acceptable results without changes.
+Additionally, the SS variable should be set to either very low or very high
+values to produce a better groff HTML output (Due to a bug of groff2html?).
+A setting of 4 should look readable. Here's an overview again:
+
+ - groff:
+ groff is the "official" tool to convert man pages. To get good results you
+ need a recent version (1.18.2).
+ groff -mman -Thtml mplayer.1 > mplayer.1.html
+ groff -mman -Tlatin1 -rLL=78n mplayer.1 | col -bxp > mplayer.1.txt
+ The groff man page lists other output formats to use with -T.
+
+ Unfortunately groff is not able to handle UTF-8 input as of version 1.19.2.
+ groff-utf8 is a wrapper that works around these deficiencies:
+ http://www.haible.de/bruno/packages-groff-utf8.html
+
+ - man2html:
+ You can view it through a CGI script:
+ http://localhost/cgi-bin/man2html?mplayer
+ The output is unusable as the script doesn't seem to support the macro
+ definitions. Maybe manually changing all leads to acceptable results.
+
+ - rman:
+ rman -f html mplayer.1 > man_page.rman.html
+ The output is ugly as rman doesn't understand many of the macros used.
+
+ - troffcvt:
+ troff2html -man mplayer.1 > man_page.tcvt.html
+ The (good) output is similar to groff but simplified...
+
+
+
+The structure
+-------------
+
+The option descriptions are divided into sections. Inside a section options are
+alphabetically sorted. The sections are:
+
+(Header)
+ not visible, copyright and author information
+(Macro definitions)
+ not visible, some macro definitions
+NAME
+ The man page is used for both mplayer and mencoder.
+SYNOPSIS
+ a description of MPlayer's playtree
+DESCRIPTION
+ a general description of MPlayer, MEncoder, GMPlayer and their features
+INTERACTIVE CONTROL
+ description of MPlayer's input system and interactive controls
+USAGE
+ some general notes about usage
+CONFIGURATION FILES
+ description of the configuration file format
+GENERAL OPTIONS
+ General options that are common to both MPlayer and MEncoder.
+PLAYER OPTIONS (MPLAYER ONLY)
+ user interface option descriptions (MPlayer only)
+DEMUXER/STREAM OPTIONS
+ demuxer and stream layer option descriptions
+OSD/SUBTITLE OPTIONS
+ This section is special in that it contains all subtitle and OSD option
+ descriptions even if they might belong to one of the other sections. It
+ was created because of its size.
+AUDIO OUTPUT OPTIONS (MPLAYER ONLY)
+ audio output layer (ao) option descriptions (MPlayer only)
+AUDIO OUTPUT DRIVERS (MPLAYER ONLY)
+ audio output driver description (ao)
+VIDEO OUTPUT OPTIONS (MPLAYER ONLY)
+ video output layer (vo) option descriptions (MPlayer only)
+VIDEO OUTPUT DRIVERS (MPLAYER ONLY)
+ video output driver description (vo)
+DECODING/FILTERING OPTIONS
+ decoding/filtering layer options (ad, vd, pl)
+VIDEO FILTERS
+ video filter description (vf)
+GENERAL ENCODING OPTIONS (MENCODER ONLY)
+ Encoding option descriptions (ve) (MEncoder only).
+CODEC SPECIFIC ENCODING OPTIONS (MENCODER ONLY)
+ Codec specific option descriptions (lavc,divx4,xvid,lame) (MEncoder only).
+FILES
+ a list and description of all installed/used files/directories
+EXAMPLES OF MPLAYER USAGE
+ basic examples, again: no long descriptions/processes
+EXAMPLES OF MENCODER USAGE
+ basic examples, again: no long descriptions/processes
+BUGS
+AUTHORS
+
+
+
+The man page/groff format
+-------------------------
+
+Just read this and RTFS:
+
+ man 7 roff
+ http://www.tldp.org/HOWTO/mini/Man-Page.html
+ man 7 man
+ man 7 groff
+
+
+
+"Style" guidelines
+------------------
+
+This section was kept simple but there are certain guidelines/rules to get a
+uniform man page. The best way is to read (and understand) the source.
+
+
+General:
+
+ - No line should contain more than 79 characters.
+ - used commands: .TH, .SH, .TP, .IP, .PP, .[R]B, .I, .br, .RS, .RE, .na,
+ .nh, .ad, .hy, macro definitions, comments and some more
+ - Don't forget the quotation marks around expressions, etc...
+ - Each new sentence should start on a line of its own.
+ - There is a typographical difference between a hyphen, a minus and an
+ en-dash or em-dash. For the man page this means that you should put a
+ backslash before a '-' if it denotes a range (1\-10), an option (\-fs),
+ stdin (\-), a dash (mplayer \- movie player) or a minus (\-1). Use just
+ '-' if it is a hyphen (A-V).
+ - Don't start a line with "'" or ".", nroff treats them specially.
+ - To quickly check a manual page for markup errors, just run
+ man DOCS/man/XX/mplayer.1 > /dev/null
+
+
+Option descriptions:
+
+ - Options should be in alphabetical order.
+ - Option and/or suboption parameters should be short, descriptive and put
+ in angular brackets (e.g. \-vo <driver>).
+ - If the option has a parameter in a certain range, specify it right after
+ the option (e.g. \-subpos <0\-100>).
+ - Optional things should be put in square brackets ([]).
+ - Obsolete options are followed by (OBSOLETE), beta options by
+ (BETA CODE), etc.
+ - MPlayer-only options in a section which isn't marked this way
+ are followed by (MPlayer only).
+ - Add references to other options if they belong to each other, e.g.
+ '(\-vo zr only)' or '(also see \-alang)' or are commonly used together.
+ - If a nontrivial default parameter exists, mention it, e.g. (default: 24).
+ - Put examples and notes at the end of the description (before suboptions).
+ - The end of the suboptions _always_ has to be followed by a paragraph
+ (BUG).
+ - For flag options just document the non-default one of \-XXX and \-noXXX.
+ If the option is not a flag, describe both, one below the other (this is
+ an exception to the alphabetical order).
+
+
+Macro definitions (see beginning of man page):
+
+ - .SS starting value of the suboption column
+ - .IPs Add new suboption (we use .TP for normal options and .IP for
+ the rest).
+ - .RSs begin of suboptions, end with .RE
+ - .RSss begin of suboptions in a suboption
+ - .REss end of suboptions in a suboption
+
+
+Options, suboptions, examples structure:
+
+ - Normal options (note the '<' and '>'):
+
+ [...]
+ .TP
+ .B \-option <parameter>
+ description
+ [...]
+
+ - Long suboptions:
+
+ [...]
+ description. Available options are:
+ .
+ .RSs
+ .IPs "subopt1=<value>"
+ description1
+ .IPs "subopt2=<value>"
+ description2
+ [...]
+ .IPs "last subopt=<value>"
+ last description
+ .RE
+ .
+ [...]
+
+ - Short suboptions:
+
+ [...]
+ description. Available options are:
+
+ .PD 0
+ .RSs
+ .IPs "subopt1=<value>"
+ description1
+ .IPs "subopt2=<value>"
+ description2
+ [...]
+ .IPs "last subopt=<value>"
+ last description
+ .RE
+ .PD 1
+ .
+ [...]
+
+ - Suboptions in suboptions:
+
+ [...]
+ .IPs "subopt1=<value>"
+ description1
+ .RSss
+ subsubopt1: description1
+ .br
+ subsubopt2: description2
+ [...]
+ .REss
+ [...]
+
+ - Examples:
+
+ [...]
+
+ .I EXAMPLE:
+ .PD 0
+ .RSs
+ .IP "\-option used parameters"
+ description
+ [...]
+ .RE
+ .PD 1
+ .
+ [...]