mirror of https://github.com/ddevault/scdoc
parent
bf882e4f89
commit
5dbc869c2b
@ -0,0 +1,182 @@ |
|||||||
|
scdoc(5) |
||||||
|
|
||||||
|
# NAME |
||||||
|
|
||||||
|
scdoc - document format for writing manual pages |
||||||
|
|
||||||
|
# SYNTAX |
||||||
|
|
||||||
|
Input files must use the UTF-8 encoding. |
||||||
|
|
||||||
|
## PREAMBLE |
||||||
|
|
||||||
|
Each scdoc file must begin with the following preamble: |
||||||
|
|
||||||
|
*name*(_section_) ["left\_footer" ["center\_header"]] |
||||||
|
|
||||||
|
The *name* is the name of the man page you are writing, and _section_ is the |
||||||
|
section you're writing for (see *man*(1) for information on manual sections). |
||||||
|
|
||||||
|
_left\_footer_ and _center\_header_ are optional arguments which set the text |
||||||
|
positioned at those locations in the generated man page, and *must* be surrounded |
||||||
|
with double quotes. |
||||||
|
|
||||||
|
## SECTION HEADERS |
||||||
|
|
||||||
|
Each section of your man page should begin with something similar to the |
||||||
|
following: |
||||||
|
|
||||||
|
# HEADER NAME |
||||||
|
|
||||||
|
Subsection headers are also understood - use two hashes. Each header must have |
||||||
|
an empty line on either side. |
||||||
|
|
||||||
|
## PARAGRAPHS |
||||||
|
|
||||||
|
Begin a new paragraph with an empty line. |
||||||
|
|
||||||
|
## FORMATTING |
||||||
|
|
||||||
|
Text can be made *bold* or _underlined_ with asterisks and underscores: \*bold\* |
||||||
|
or \_underlined\_. |
||||||
|
|
||||||
|
## INDENTATION |
||||||
|
|
||||||
|
You may indent lines with tab characters (*\\t*) to indent them by 4 spaces in |
||||||
|
the output. Indented lines may not contain headers. |
||||||
|
|
||||||
|
The result looks something like this. |
||||||
|
|
||||||
|
You may use multiple lines and most _formatting_. |
||||||
|
|
||||||
|
Deindent to return to normal, or indent again to increase your indentation |
||||||
|
depth. |
||||||
|
|
||||||
|
## LISTS |
||||||
|
|
||||||
|
You may start bulleted lists with dashes (-), like so: |
||||||
|
|
||||||
|
``` |
||||||
|
- Item 1 |
||||||
|
- Item 2 |
||||||
|
- Subitem 1 |
||||||
|
- Subitem 2 |
||||||
|
- Item 3 |
||||||
|
``` |
||||||
|
|
||||||
|
The result looks like this: |
||||||
|
|
||||||
|
- Item 1 |
||||||
|
- Item 2 |
||||||
|
- Subitem 1 |
||||||
|
- Subitem 2 |
||||||
|
- Item 3 |
||||||
|
|
||||||
|
You may also extend long entries onto another line by giving it the same indent |
||||||
|
level, plus two spaces. They will be rendered as a single list entry. |
||||||
|
|
||||||
|
``` |
||||||
|
- Item 1 is pretty long so let's |
||||||
|
break it up onto two lines |
||||||
|
- Item 2 is shorter |
||||||
|
- But its children can go on |
||||||
|
for a while |
||||||
|
``` |
||||||
|
|
||||||
|
- Item 1 is pretty long so let's |
||||||
|
break it up onto two lines |
||||||
|
- Item 2 is shorter |
||||||
|
- But its children can go on |
||||||
|
for a while |
||||||
|
|
||||||
|
## NUMBERED LISTS |
||||||
|
|
||||||
|
Numbered lists are similar to normal lists, but begin with periods (.) instead |
||||||
|
of dashes (-), like so: |
||||||
|
|
||||||
|
``` |
||||||
|
. Item 1 |
||||||
|
. Item 2 |
||||||
|
. Item 3, |
||||||
|
with multiple lines |
||||||
|
``` |
||||||
|
|
||||||
|
. Item 1 |
||||||
|
. Item 2 |
||||||
|
. Item 3, |
||||||
|
with multiple lines |
||||||
|
|
||||||
|
## TABLES |
||||||
|
|
||||||
|
To begin a table, add an empty line followed by any number of rows. |
||||||
|
|
||||||
|
Each line of a table should start with | or : to start a new row or column |
||||||
|
respectively, followed by [ or - or ] to align the contents to the left, |
||||||
|
center, or right, followed by a space and the contents of that cell. You may |
||||||
|
use a space instead of an alignment specifier to inherit the alignment of the |
||||||
|
same column in the previous row. |
||||||
|
|
||||||
|
The first character of the first row is not limited to | and has special |
||||||
|
meaning. [ will produce a table with borders around each cell. | will produce a |
||||||
|
table with no borders. ] will produce a table with one border around the whole |
||||||
|
table. |
||||||
|
|
||||||
|
To conclude your table, add an empty line after the last row. |
||||||
|
|
||||||
|
``` |
||||||
|
[[ *Foo* |
||||||
|
:- _Bar_ |
||||||
|
:- _Baz_ |
||||||
|
| *Row 1* |
||||||
|
: Hello |
||||||
|
:] world! |
||||||
|
| *Row 2* |
||||||
|
: こんにちは |
||||||
|
: 世界 |
||||||
|
``` |
||||||
|
|
||||||
|
[[ *Foo* |
||||||
|
:- _Bar_ |
||||||
|
:- _Baz_ |
||||||
|
| *Row 1* |
||||||
|
: Hello |
||||||
|
:] world! |
||||||
|
| *Row 2* |
||||||
|
: こんにちは |
||||||
|
: 世界 |
||||||
|
|
||||||
|
## LITERAL TEXT |
||||||
|
|
||||||
|
You may turn off scdoc formatting and output literal text with escape codes and |
||||||
|
literal blocks. Inserting a \\ into your source will cause the subsequent symbol |
||||||
|
to be treated as a literal and copied directly to the output. You may also make |
||||||
|
blocks of literal syntax like so: |
||||||
|
|
||||||
|
``` |
||||||
|
\``` |
||||||
|
_This formatting_ will *not* be interpreted by scdoc. |
||||||
|
\``` |
||||||
|
``` |
||||||
|
|
||||||
|
These blocks will be indented one level. Note that literal text is shown |
||||||
|
literally in the man viewer - that is, it's not a means for inserting your own |
||||||
|
roff macros into the output. Note that \\ is still interpreted within literal |
||||||
|
blocks, which for example can be useful to output \``` inside of a literal block. |
||||||
|
|
||||||
|
## COMMENTS |
||||||
|
|
||||||
|
Lines beginning with ; and a space are ignored. |
||||||
|
|
||||||
|
``` |
||||||
|
; This is a comment |
||||||
|
``` |
||||||
|
|
||||||
|
# SEE ALSO |
||||||
|
|
||||||
|
*scdoc*(1) |
||||||
|
|
||||||
|
# AUTHORS |
||||||
|
|
||||||
|
Maintained by Drew DeVault <sir@cmpwn.com>. Up-to-date sources can be found at |
||||||
|
https://git.sr.ht/~sircmpwn/scdoc and bugs/patches can be submitted by email to |
||||||
|
~sircmpwn/public-inbox@lists.sr.ht. |
Loading…
Reference in new issue