Mercurial > mplayer.hg
annotate DOCS/tech/manpage.txt @ 20567:a45bc176a16d
paragraph about groff and UTF-8
author | diego |
---|---|
date | Wed, 01 Nov 2006 17:31:11 +0000 |
parents | 5fe8793f0c17 |
children | 2b0bf3891361 |
rev | line source |
---|---|
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
1 ======================================== |
7286 | 2 A documentation about MPlayer's man page |
3 ======================================== | |
4 | |
5 | |
6 About the documentation | |
7 ----------------------- | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
8 |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
9 Yes it's true: This is the documentation of the documentation (man page). |
7286 | 10 This guide should be used as a reference for questions about the man page |
11 structure. It's not a strict guide but we recommend following it to get a | |
12 uniform man page. | |
13 | |
14 | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
15 |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
16 What belongs in the man page? |
7286 | 17 ----------------------------- |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
18 |
19920 | 19 - option descriptions (all) |
20 - usage (options, configuration files, controls) | |
21 - basic examples | |
7286 | 22 |
23 | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
24 |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
25 What doesn't belong in the man page? |
7286 | 26 ------------------------------------ |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
27 |
19920 | 28 - instructions for installation, encoding and similar processes |
29 - detailed evaluations or hints | |
30 - tutorials, guides | |
7286 | 31 |
32 | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
33 |
7286 | 34 How should patches look like? |
35 ----------------------------- | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
36 |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
37 Follow the rules in patches.txt, they apply to the man page, too. |
7286 | 38 Exceptions are: |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
39 |
19920 | 40 - Cosmetic patches are allowed but should be done separately from the real |
41 changes, be marked as cosmetic changes and shouldn't change the general | |
42 style without reasons/permissions. | |
43 - The same applies to spell checking. | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
44 |
7286 | 45 |
46 | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
47 How do I create an HTML, text or other version of the man page? |
7741 | 48 --------------------------------------------------------------- |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
49 |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
50 The man page was more or less designed for groff as it is the main tool for |
7286 | 51 it. Therefore only groff produces acceptable results without changes. |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
52 Additionally, the SS variable should be set to either very low or very high |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
53 values to produce a better groff HTML output (Due to a bug of groff2html?). |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
54 A setting of 4 should look readable. Here's an overview again: |
7289 | 55 |
19920 | 56 - groff: groff is the "official" tool to convert man pages. |
57 To get good results you need a recent version (1.18.2). | |
58 groff -mman -Thtml mplayer.1 > mplayer.1.html | |
59 groff -mman -Tlatin1 -rLL=78n mplayer.1 | col -bx > mplayer.1.txt | |
60 The groff man page lists other output formats to use with -T. | |
11561 | 61 |
20567 | 62 Unfortunately groff is not able to handle UTF-8 input as of |
63 version 1.19.2. groff-utf8 is a wrapper that works around these | |
64 deficiencies: | |
65 http://www.haible.de/bruno/packages-groff-utf8.html | |
66 | |
19920 | 67 - man2html: You can view it through a CGI script: |
68 http://localhost/cgi-bin/man2html?mplayer | |
69 The output is unusable as the script doesn't seem to support | |
70 the macro definitions. Maybe manually changing all leads to | |
71 acceptable results. | |
11561 | 72 |
19920 | 73 - rman: rman -f html mplayer.1 > man_page.rman.html |
74 The output is ugly as rman doesn't understand many of the | |
75 macros used. | |
11561 | 76 |
19920 | 77 - troffcvt: troff2html -man mplayer.1 > man_page.tcvt.html |
78 The (good) output is similar to groff but simplified... | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
79 |
7286 | 80 |
81 | |
82 The structure | |
83 ------------- | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
84 |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
85 The option descriptions are divided into sections. Inside a section options are |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
86 alphabetically sorted. The sections are: |
7286 | 87 |
88 (Header) | |
19920 | 89 not visible, copyright and author information |
7286 | 90 (Macro definitions) |
19920 | 91 not visible, some macro definitions |
7286 | 92 NAME |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
93 The man page is used for both mplayer and mencoder. |
7286 | 94 SYNOPSIS |
19920 | 95 a description of MPlayer's playtree |
7286 | 96 DESCRIPTION |
19920 | 97 a general description of MPlayer, MEncoder, GMPlayer and their features |
16688
ad9c4e9ca5bd
Keyboard control section renamed to interactive control, small structure change.
diego
parents:
15703
diff
changeset
|
98 INTERACTIVE CONTROL |
19920 | 99 description of MPlayer's input system and interactive controls |
11944 | 100 USAGE |
19920 | 101 some general notes about usage |
17310 | 102 CONFIGURATION FILES |
19920 | 103 description of the configuration file format |
11944 | 104 GENERAL OPTIONS |
105 General options that are common to both MPlayer and MEncoder. | |
7286 | 106 PLAYER OPTIONS (MPLAYER ONLY) |
19920 | 107 user interface option descriptions (MPlayer only) |
7286 | 108 DEMUXER/STREAM OPTIONS |
19920 | 109 demuxer and stream layer option descriptions |
19047 | 110 OSD/SUBTITLE OPTIONS |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
111 This section is special in that it contains all subtitle and OSD option |
19920 | 112 descriptions even if they might belong to one of the other sections. It |
113 was created because of its size. | |
7286 | 114 AUDIO OUTPUT OPTIONS (MPLAYER ONLY) |
19920 | 115 audio output layer (ao) option descriptions (MPlayer only) |
12468 | 116 AUDIO OUTPUT DRIVERS (MPLAYER ONLY) |
19920 | 117 audio output driver description (ao) |
7286 | 118 VIDEO OUTPUT OPTIONS (MPLAYER ONLY) |
19920 | 119 video output layer (vo) option descriptions (MPlayer only) |
12716
296b1f6f6bf7
VIDEO OUTPUT DRIVERS moved right after VIDEO OUTPUT OPTIONS.
diego
parents:
12468
diff
changeset
|
120 VIDEO OUTPUT DRIVERS (MPLAYER ONLY) |
19920 | 121 video output driver description (vo) |
7286 | 122 DECODING/FILTERING OPTIONS |
19920 | 123 decoding/filtering layer options (ad, vd, pl) |
10218
f82646fc1431
Moved video filters to a separate section, moved slave mode section to the
jonas
parents:
8699
diff
changeset
|
124 VIDEO FILTERS |
19920 | 125 video filter description (vf) |
10380
8627ec205af8
moved -af options to the filter section (should work with mencoder), split encoding options in general and codec specific part, some small (cosmetic) changes
jonas
parents:
10227
diff
changeset
|
126 GENERAL ENCODING OPTIONS (MENCODER ONLY) |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
127 Encoding option descriptions (ve) (MEncoder only). |
10380
8627ec205af8
moved -af options to the filter section (should work with mencoder), split encoding options in general and codec specific part, some small (cosmetic) changes
jonas
parents:
10227
diff
changeset
|
128 CODEC SPECIFIC ENCODING OPTIONS (MENCODER ONLY) |
8627ec205af8
moved -af options to the filter section (should work with mencoder), split encoding options in general and codec specific part, some small (cosmetic) changes
jonas
parents:
10227
diff
changeset
|
129 Codec specific option descriptions (lavc,divx4,xvid,lame) (MEncoder only). |
7286 | 130 FILES |
19920 | 131 a list and description of all installed/used files/directories |
17062
007826f61f58
Sync man page structure description with actual man page structure.
diego
parents:
16688
diff
changeset
|
132 EXAMPLES OF MPLAYER USAGE |
19920 | 133 basic examples, again: no long descriptions/processes |
17062
007826f61f58
Sync man page structure description with actual man page structure.
diego
parents:
16688
diff
changeset
|
134 EXAMPLES OF MENCODER USAGE |
19920 | 135 basic examples, again: no long descriptions/processes |
7286 | 136 BUGS |
137 AUTHORS | |
138 | |
139 | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
140 |
7286 | 141 The man page/groff format |
142 ------------------------- | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
143 |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
144 Just read this and RTFS: |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
145 |
11561 | 146 man 7 roff |
7286 | 147 http://www.tldp.org/HOWTO/mini/Man-Page.html |
148 man 7 man | |
149 man 7 groff | |
150 | |
151 | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
152 |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
153 "Style" guidelines |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
154 ------------------ |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
155 |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
156 This section was kept simple but there are certain guidelines/rules to get a |
7286 | 157 uniform man page. The best way is to read (and understand) the source. |
158 | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
159 |
7286 | 160 General: |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
161 |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
162 - No line should contain more than 79 characters. |
19920 | 163 - used commands: .TH, .SH, .TP, .IP, .PP, .[R]B, .I, .br, .RS, .RE, .na, |
7744
6d41f5e905e2
reversed some changes as they produced ugly html output
jonas
parents:
7742
diff
changeset
|
164 .nh, .ad, .hy, macro definitions, comments and some more |
11099 | 165 - Don't forget the quotation marks around expressions, etc... |
166 - Each new sentence should start on a line of its own. | |
167 - Put a backslash before a '-' if it denotes a range (1\-10), an option | |
11116 | 168 (\-fs), stdin (\-) or a dash (mplayer \- Movie Player for Linux). |
169 Use just '-' if it is a hyphen (A-V) or a minus (-1). Please note that | |
170 it should be \-dvd-device and not \-dvd\-device. | |
12864 | 171 - Don't start a line with "'" or ".", nroff treats them specially. |
19879
def3e3fbb458
Add hint about how to check man pages for markup errors.
diego
parents:
19047
diff
changeset
|
172 - To quickly check a manual page for markup errors, just run |
def3e3fbb458
Add hint about how to check man pages for markup errors.
diego
parents:
19047
diff
changeset
|
173 man DOCS/man/XX/mplayer.1 > /dev/null |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
174 |
19920 | 175 |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
176 Option descriptions: |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
177 |
11303 | 178 - Options should be in alphabetical order. |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
179 - Option and/or suboption parameters should be short, descriptive and put |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
180 in angular brackets (e.g. \-vo <driver>). |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
181 - If the option has a parameter in a certain range, specify it right after |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
182 the option (e.g. \-subpos <0\-100>). |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
183 - Optional things should be put in square brackets ([]). |
7286 | 184 - Obsolete options are followed by (OBSOLETE), beta options by |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
185 (BETA CODE), etc. |
19920 | 186 - MPlayer-only options in a section which isn't marked this way |
12744 | 187 are followed by (MPlayer only). |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
188 - Add references to other options if they belong to each other, e.g. |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
189 '(\-vo zr only)' or '(also see \-alang)' or are commonly used together. |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
190 - If a nontrivial default parameter exists, mention it, e.g. (default: 24). |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
191 - Put examples and notes at the end of the description (before suboptions). |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
192 - The end of the suboptions _always_ has to be followed by a paragraph |
7289 | 193 (BUG). |
11303 | 194 - For flag options just document the non-default one of -XXX and -noXXX, if |
195 the option is not a flag, describe both, one below the other (this is an | |
196 exception to the alphabetical order). | |
7286 | 197 |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
198 |
7286 | 199 Macro definitions (see beginning of man page): |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
200 |
19920 | 201 - .SS starting value of the suboption column |
7286 | 202 - .IPs Add new suboption (we use .TP for normal options and .IP for |
19920 | 203 the rest). |
204 - .RSs begin of suboptions, end with .RE | |
205 - .RSss begin of suboptions in a suboption | |
206 - .REss end of suboptions in a suboption | |
7286 | 207 |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
208 |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
209 Options, suboptions, examples structure: |
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
210 |
7286 | 211 - Normal options (note the '<' and '>'): |
212 | |
213 [...] | |
214 .TP | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
215 .B \-option <parameter> |
7286 | 216 description |
217 [...] | |
218 | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
219 - Long suboptions: |
7286 | 220 |
221 [...] | |
222 description. Available options are: | |
223 . | |
224 .RSs | |
225 .IPs "subopt1=<value>" | |
226 description1 | |
227 .IPs "subopt2=<value>" | |
228 description2 | |
229 [...] | |
230 .IPs "last subopt=<value>" | |
231 last description | |
232 .RE | |
233 . | |
234 [...] | |
235 | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
236 - Short suboptions: |
7289 | 237 |
238 [...] | |
239 description. Available options are: | |
240 | |
10702 | 241 .PD 0 |
7289 | 242 .RSs |
243 .IPs "subopt1=<value>" | |
244 description1 | |
245 .IPs "subopt2=<value>" | |
246 description2 | |
247 [...] | |
248 .IPs "last subopt=<value>" | |
249 last description | |
250 .RE | |
10702 | 251 .PD 1 |
7289 | 252 . |
253 [...] | |
254 | |
8699
b3e78d22cae0
Spell checking, parts reworded for greater clarity, layout now uses
diego
parents:
8217
diff
changeset
|
255 - Suboptions in suboptions: |
7286 | 256 |
257 [...] | |
258 .IPs "subopt1=<value>" | |
259 description1 | |
260 .RSss | |
261 subsubopt1: description1 | |
262 .br | |
263 subsubopt2: description2 | |
264 [...] | |
265 .REss | |
266 [...] | |
267 | |
7741 | 268 - Examples: |
7286 | 269 |
270 [...] | |
12744 | 271 |
7286 | 272 .I EXAMPLE: |
273 .PD 0 | |
274 .RSs | |
275 .IP "-option used parameters" | |
276 description | |
277 [...] | |
278 .RE | |
279 .PD 1 | |
7289 | 280 . |
7286 | 281 [...] |