ron 0.3 → 0.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,154 +0,0 @@
1
- ron(5) -- humane manual page authoring format
2
- =============================================
3
-
4
- ## SYNOPSIS
5
-
6
- A basic manual page in Ron:
7
-
8
- name(1) -- one sentence description
9
- ===================================
10
-
11
- ## SECTION HEADING
12
-
13
- A normal paragraph. This can span multiple lines and is
14
- terminated with two or more line endings -- just like
15
- Markdown.
16
-
17
- ## INLINE MARKUP
18
-
19
- Inline markup is used for `code` and `user input` (displayed
20
- in boldface), and also <variables> or _emphasis_.
21
-
22
- Manual page references like sh(1), markdown(5), roff(7), etc.
23
- are displayed in boldface and hyperlinked in HTML output.
24
-
25
- ## DEFINITION LISTS
26
-
27
- Definition lists are used to define options, arguments,
28
- variables, and other type of terms:
29
-
30
- * `-a`, `--arg1`=[_OPTION_]:
31
- One or more paragraphs describing the argument.
32
- * `-b`, `--arg2`:
33
- Any number of these may be specified and may
34
- be nested.
35
-
36
- ## DESCRIPTION
37
-
38
- Ron files are simple ascii texts that document things in the
39
- style of UNIX man pages but with a syntax and feature-set less
40
- insane than that of roff(7). Ron files are piped through ron(1)
41
- to build and install traditional roff(7) man pages or to generate
42
- hyperlinked HTML documentation.
43
-
44
- All ron formatted files must conform to a simple subset of
45
- markdown(5), a humane text markup designed for writing on the
46
- web. It is neither possible nor desirable to express many of
47
- roff(7)'s complex typesetting features in ron.
48
-
49
- ## MANPAGE TITLE
50
-
51
- All man pages have a <name>, belong to a <section>, and have a
52
- single sentence <tagline> (useless but witty, preferably). Ron
53
- files must begin with a first-level heading that includes all of
54
- this information. For example, this very man page begins:
55
-
56
- ron(5) -- humane manual page authoring format
57
- =============================================
58
-
59
- Here, we're saying that the man page documents a thing named
60
- `ron` in manual section `5` (the "file formats" section; see
61
- manpages(5) for full section list) and that's quickly described
62
- as a "humane manual page authoring format".
63
-
64
- These bits of information are used to fill in the document
65
- header, to create the `NAME` section, and also to establish
66
- output filenames when processed with ron(1).
67
-
68
- ## SECTION HEADINGS
69
-
70
- Man section headings are expressed with markdown level two
71
- headings. markdown(5) provides two syntaxes for level two
72
- headings. A hash prefix syntax:
73
-
74
- ## HEADING TEXT
75
-
76
- Or, a dash underline syntax:
77
-
78
- HEADING TEXT
79
- ------------
80
-
81
- Section headings should be in all uppercase and may not contain
82
- other inline markup.
83
-
84
- Most manual pages include at least one of the `SYNOPSIS`,
85
- `DESCRIPTION`, and/or `OPTIONS` sections. Additional sections
86
- commonly included are `SYNTAX`, `ENVIRONMENT`, `HISTORY`, `RETURN
87
- VALUES`, `BUGS`, `SECURITY CONSIDERATIONS`, `STANDARDS` /
88
- `CONFORMING TO`, `AUTHOR`, and `COPYRIGHT`. Finally, most man
89
- pages end with a `SEE ALSO` section that references other manual
90
- pages and external documents.
91
-
92
- ## INLINE MARKUP
93
-
94
- Man pages have a limited set of text formatting capabilities at
95
- their disposal. There's basically <b>boldface</b> and
96
- <i>italics</i> (often displayed using <u>underline</u>). Ron uses
97
- the following bits of markdown(5) to accomplish this:
98
-
99
- * <code>\`backticks\`</code>:
100
- Code, flags, commands, and noun-like things; typically
101
- displayed in in <b>boldface</b>. Note that all text included
102
- within `backticks` is displayed literally; other inline markup
103
- is not processed.
104
- * `**double-stars**`:
105
- Like `backticks` but inline markup is processed.
106
- * `_`_underbars_`_`:
107
- User-specified arguments, variables, or user input; typically
108
- displayed with <u>underline</u>.
109
- * `<angle-quotes>`:
110
- Same as _underbars_. This is not compatible with Markdown.
111
-
112
- Here is grep(1)'s DESCRIPTION section represented in `ron`:
113
-
114
- `Grep` searches the named input _FILE_ (or standard input if
115
- no files are named, or the file name `-` is given) for lines
116
- containing a match to the given _PATTERN_. By default, `grep`
117
- prints the matching lines.
118
-
119
- ## DEFINITION LISTS
120
-
121
- Because definition lists are so often used in manual pages to
122
- describe arguments, options, and variables, the basic markdown(5)
123
- list syntax has been extended to support a definition list
124
- syntax.
125
-
126
- Definition list syntax is exactly the same as markdown(5)'s
127
- unordered list syntax but requires that the first line of each
128
- list item be terminated with a colon "`:`". The first line (minus
129
- the colon) is the <term>; subsequent lines may be comprised of
130
- multiple paragraphs, code blocks, standard lists, and nested
131
- definition lists.
132
-
133
- An example definition list, taken from BSD test(1)'s
134
- `DESCRIPTION` section:
135
-
136
- The following primaries are used to construct expressions:
137
-
138
- * `-b` _file_:
139
- True if _file_ exists and is a block special file.
140
-
141
- * `-c` _file_:
142
- True if _file_ exists and is a character special file.
143
-
144
- * `-d` _file_:
145
- True if file exists and is a directory.
146
-
147
- The definition list syntax is intentionally backward compatible
148
- with markdown(5)'s list syntax. This allows `ron` documents to be
149
- piped through normal markdown processors with minor degradation
150
- in output formatting.
151
-
152
- ## SEE ALSO
153
-
154
- ron(1), markdown(5), manpages(5)
data/man/ron.7 DELETED
@@ -1,201 +0,0 @@
1
- .\" generated with Ron/v0.2
2
- .\" http://github.com/rtomayko/ron/
3
- .
4
- .TH "RON" "7" "December 2009" "Ryan Tomayko" "Ron Manual"
5
- .
6
- .SH "NAME"
7
- \fBron\fR \-\- the opposite of roff
8
- .
9
- .SH "DESCRIPTION"
10
- Ron is a humane text format and toolchain for creating UNIX man
11
- pages, and things that appear as man pages from a distance. Use it
12
- to build and install standard UNIX roff man pages or to generate
13
- nicely formatted HTML manual pages for the web.
14
- .
15
- .P
16
- The Ron file format is based on Markdown. In fact, Ron files are a
17
- compatible subset of Markdown syntax but have a more rigid structure and
18
- extend Markdown in some ways to provide features commonly found in man
19
- pages (e.g., definition lists). The ron(5) manual page defines the
20
- format in more detail.
21
- .
22
- .SH "DOCUMENTATION"
23
- The \fB.ron\fR files located under the \fBman/\fR directory show off a wide
24
- range of ron capabilities and are the source of Ron's own documentation.
25
- The source files and generated HTML / roff output files are available
26
- at:
27
- .
28
- .IP "\(bu" 4
29
- \fIron(1)\fR \-
30
- build markdown based manual pages at the command line.
31
- .
32
- .br
33
- \fIsource file\fR, \fIroff output\fR
34
- .
35
- .IP "\(bu" 4
36
- \fIron(5)\fR \-
37
- humane manual page authoring format syntax reference.
38
- .
39
- .br
40
- \fIsource file\fR, \fIroff output\fR
41
- .
42
- .IP "\(bu" 4
43
- \fImarkdown(5)\fR \-
44
- humane text markup syntax (taken from \fIMarkdown Syntax\fR,
45
- John Gruber)
46
- .
47
- .br
48
- \fIsource file\fR, \fIroff output\fR
49
- .
50
- .IP "" 0
51
- .
52
- .SH "INSTALL"
53
- Install with Rubygems:
54
- .
55
- .IP "" 4
56
- .
57
- .nf
58
-
59
- $ [sudo] gem install ron
60
- $ ron \-\-help
61
- .
62
- .fi
63
- .
64
- .IP "" 0
65
- .
66
- .P
67
- Or, clone the git repository:
68
- .
69
- .IP "" 4
70
- .
71
- .nf
72
-
73
- $ git clone git://github.com/rtomayko/ron.git
74
- $ PATH=ron/bin:$PATH
75
- $ ron \-\-help
76
- .
77
- .fi
78
- .
79
- .IP "" 0
80
- .
81
- .SH "BASIC USAGE"
82
- To generate a roff man page from the included\fI\fBmarkdown.5.ron\fR\fR file and open it with man(1):
83
- .
84
- .IP "" 4
85
- .
86
- .nf
87
-
88
- $ ron \-b man/markdown.5.ron
89
- building: man/markdown.5
90
- $ man man/markdown.5
91
- .
92
- .fi
93
- .
94
- .IP "" 0
95
- .
96
- .P
97
- To generate a standalone HTML version:
98
- .
99
- .IP "" 4
100
- .
101
- .nf
102
-
103
- $ ron \-b \-\-html man/markdown.5.ron
104
- building: man/markdown.5.html
105
- $ open man/markdown.5.html
106
- .
107
- .fi
108
- .
109
- .IP "" 0
110
- .
111
- .P
112
- To build roff and HTML versions of all ron files:
113
- .
114
- .IP "" 4
115
- .
116
- .nf
117
-
118
- $ ron \-b \-\-roff \-\-html man/*.ron
119
- .
120
- .fi
121
- .
122
- .IP "" 0
123
- .
124
- .P
125
- If you just want to view a ron file as if it were a man page without
126
- building intermediate files:
127
- .
128
- .IP "" 4
129
- .
130
- .nf
131
-
132
- $ ron \-m man/markdown.5.ron
133
- .
134
- .fi
135
- .
136
- .IP "" 0
137
- .
138
- .P
139
- The \fIron(1)\fR manual page
140
- includes comprehensive documentation on \fBron\fR command line options.
141
- .
142
- .SH "ABOUT"
143
- Some people think UNIX manual pages are a poor and outdated style of
144
- documentation. I disagree:
145
- .
146
- .IP "\(bu" 4
147
- Man pages follow a well defined structure that's immediately
148
- familiar and provides a useful starting point for developers
149
- documenting new tools, libraries, and formats.
150
- .
151
- .IP "\(bu" 4
152
- Man pages get to the point. Because they're written in an inverted
153
- style, with a SYNOPSIS section followed by additional detail,
154
- prose and references to other sources of information, man pages
155
- provide the best of both cheat sheet and reference style
156
- documentation.
157
- .
158
- .IP "\(bu" 4
159
- Man pages have extremely \-\- unbelievably \-\- limited text
160
- formatting capabilities. You get a couple of headings, lists, bold,
161
- underline and no more. This is a feature.
162
- .
163
- .IP "\(bu" 4
164
- Although two levels of section hierarchy are technically
165
- supported, most man pages use only a single level. Unwieldy
166
- document hierarchies complicate otherwise good documentation.
167
- Feynman covered all of physics \-\- heavenly bodies through QED \-\-
168
- with only two levels of document hierarchy (\fIThe Feynman Lectures
169
- on Physics\fR, 1970).
170
- .
171
- .IP "\(bu" 4
172
- Man pages have a simple referencing syntax; e.g., sh(1), fork(2),
173
- markdown(5). HTML versions can use this to generate links between
174
- pages.
175
- .
176
- .IP "\(bu" 4
177
- The classical terminal man page display is typographically well
178
- thought out. Big bold section headings, justified monospace text,
179
- nicely indented paragraphs, intelligently aligned definition
180
- lists, and an informational header and footer.
181
- .
182
- .IP "" 0
183
- .
184
- .P
185
- Unfortunately, trying to figure out how to create a man page is a
186
- fairly tedious process. The roff/man macro languages are highly
187
- extensible, fractured between multiple dialects, and include a bunch
188
- of device specific stuff that's entirely irrelevant to modern
189
- publishing tools.
190
- .
191
- .P
192
- Ron aims to address many of the issues with man page creation while
193
- preserving the things that makes man pages a great form of
194
- documentation.
195
- .
196
- .SH "COPYING"
197
- Ron is Copyright (C) 2009 \fIRyan Tomayko\fR
198
- See the file COPYING for information of licensing and distribution.
199
- .
200
- .SH "SEE ALSO"
201
- ron(1), ron(5), markdown(5)
@@ -1,133 +0,0 @@
1
- ron -- the opposite of roff
2
- ===========================
3
-
4
- ## DESCRIPTION
5
-
6
- Ron is a humane text format and toolchain for creating UNIX man
7
- pages, and things that appear as man pages from a distance. Use it
8
- to build and install standard UNIX roff man pages or to generate
9
- nicely formatted HTML manual pages for the web.
10
-
11
- The Ron file format is based on Markdown. In fact, Ron files are a
12
- compatible subset of Markdown syntax but have a more rigid structure and
13
- extend Markdown in some ways to provide features commonly found in man
14
- pages (e.g., definition lists). The ron(5) manual page defines the
15
- format in more detail.
16
-
17
- ## DOCUMENTATION
18
-
19
- The `.ron` files located under the `man/` directory show off a wide
20
- range of ron capabilities and are the source of Ron's own documentation.
21
- The source files and generated HTML / roff output files are available
22
- at:
23
-
24
- * [ron(1)](http://rtomayko.github.com/ron/ron.1.html) -
25
- build markdown based manual pages at the command line.
26
- [source file](http://github.com/rtomayko/ron/blob/master/man/ron.1.ron),
27
- [roff output](http://github.com/rtomayko/ron/blob/master/man/ron.1)
28
-
29
- * [ron(5)](http://rtomayko.github.com/ron/ron.5.html) -
30
- humane manual page authoring format syntax reference.
31
- [source file](http://github.com/rtomayko/ron/blob/master/man/ron.5.ron),
32
- [roff output](http://github.com/rtomayko/ron/blob/master/man/ron.5)
33
-
34
- * [markdown(5)](http://rtomayko.github.com/ron/markdown.5.html) -
35
- humane text markup syntax (taken from
36
- [Markdown Syntax](http://daringfireball.net/projects/markdown/syntax),
37
- John Gruber)
38
- [source file](http://github.com/rtomayko/ron/blob/master/man/ron.5.ron),
39
- [roff output](http://github.com/rtomayko/ron/blob/master/man/ron.5)
40
-
41
- ## INSTALL
42
-
43
- Install with Rubygems:
44
-
45
- $ [sudo] gem install ron
46
- $ ron --help
47
-
48
- Or, clone the git repository:
49
-
50
- $ git clone git://github.com/rtomayko/ron.git
51
- $ PATH=ron/bin:$PATH
52
- $ ron --help
53
-
54
- ## BASIC USAGE
55
-
56
- To generate a roff man page from the included
57
- [`markdown.5.ron`](man/markdown.5.ron) file and open it with man(1):
58
-
59
- $ ron -b man/markdown.5.ron
60
- building: man/markdown.5
61
- $ man man/markdown.5
62
-
63
- To generate a standalone HTML version:
64
-
65
- $ ron -b --html man/markdown.5.ron
66
- building: man/markdown.5.html
67
- $ open man/markdown.5.html
68
-
69
- To build roff and HTML versions of all ron files:
70
-
71
- $ ron -b --roff --html man/*.ron
72
-
73
- If you just want to view a ron file as if it were a man page without
74
- building intermediate files:
75
-
76
- $ ron -m man/markdown.5.ron
77
-
78
- The [ron(1)](http://rtomayko.github.com/ron/ron.1.html) manual page
79
- includes comprehensive documentation on `ron` command line options.
80
-
81
- ## ABOUT
82
-
83
- Some people think UNIX manual pages are a poor and outdated style of
84
- documentation. I disagree:
85
-
86
- - Man pages follow a well defined structure that's immediately
87
- familiar and provides a useful starting point for developers
88
- documenting new tools, libraries, and formats.
89
-
90
- - Man pages get to the point. Because they're written in an inverted
91
- style, with a SYNOPSIS section followed by additional detail,
92
- prose and references to other sources of information, man pages
93
- provide the best of both cheat sheet and reference style
94
- documentation.
95
-
96
- - Man pages have extremely -- unbelievably -- limited text
97
- formatting capabilities. You get a couple of headings, lists, bold,
98
- underline and no more. This is a feature.
99
-
100
- - Although two levels of section hierarchy are technically
101
- supported, most man pages use only a single level. Unwieldy
102
- document hierarchies complicate otherwise good documentation.
103
- Feynman covered all of physics -- heavenly bodies through QED --
104
- with only two levels of document hierarchy (_The Feynman Lectures
105
- on Physics_, 1970).
106
-
107
- - Man pages have a simple referencing syntax; e.g., sh(1), fork(2),
108
- markdown(5). HTML versions can use this to generate links between
109
- pages.
110
-
111
- - The classical terminal man page display is typographically well
112
- thought out. Big bold section headings, justified monospace text,
113
- nicely indented paragraphs, intelligently aligned definition
114
- lists, and an informational header and footer.
115
-
116
- Unfortunately, trying to figure out how to create a man page is a
117
- fairly tedious process. The roff/man macro languages are highly
118
- extensible, fractured between multiple dialects, and include a bunch
119
- of device specific stuff that's entirely irrelevant to modern
120
- publishing tools.
121
-
122
- Ron aims to address many of the issues with man page creation while
123
- preserving the things that makes man pages a great form of
124
- documentation.
125
-
126
- ## COPYING
127
-
128
- Ron is Copyright (C) 2009 [Ryan Tomayko](http://tomayko.com/about)
129
- See the file COPYING for information of licensing and distribution.
130
-
131
- ## SEE ALSO
132
-
133
- ron(1), ron(5), markdown(5)