|
3 | 3 | rustdoc \- generate documentation from Rust source code
|
4 | 4 | .SH SYNOPSIS
|
5 | 5 | .B rustdoc
|
6 |
| -[\fIOPTIONS\fR] \fICRATEFILE\fR |
| 6 | +[\fIOPTIONS\fR] \fIINPUT\fR |
7 | 7 |
|
8 | 8 | .SH DESCRIPTION
|
9 | 9 | This tool generates API reference documentation by extracting comments from
|
10 |
| -source code written in the Rust language, available at <\fBhttps://www.rust- |
11 |
| -lang.org\fR>. It provides several output formats for the generated |
12 |
| -documentation. |
| 10 | +source code written in the Rust language, available at |
| 11 | +<\fBhttps://www.rust-lang.org\fR>. It accepts several input formats and provides |
| 12 | +several output formats for the generated documentation. |
13 | 13 |
|
14 |
| -.SH COMMANDS |
| 14 | +.SH OPTIONS |
15 | 15 |
|
16 | 16 | .TP
|
17 |
| ---output-dir <val> |
18 |
| -Put documents here (default: .) |
| 17 | +-r --input-format <val> |
| 18 | +html or json (default: inferred) |
19 | 19 | .TP
|
20 |
| ---output-format <val> |
21 |
| -markdown or html (default: html) |
| 20 | +-w --output-format <val> |
| 21 | +html or json (default: html) |
22 | 22 | .TP
|
23 |
| ---output-style <val> |
24 |
| -doc-per-crate or doc-per-mod (default: doc-per-mod) |
| 23 | +-o --output <val> |
| 24 | +where to place the output (default: doc/ for html, doc.json for json) |
25 | 25 | .TP
|
26 |
| ---pandoc-cmd <val> |
27 |
| -Command for running pandoc |
| 26 | +--passes <val> |
| 27 | +space-separated list of passes to run (default: '') |
| 28 | +.TP |
| 29 | +--no-defaults |
| 30 | +don't run the default passes |
| 31 | +.TP |
| 32 | +--plugins <val> |
| 33 | +space-separated list of plugins to run (default: '') |
| 34 | +.TP |
| 35 | +--plugin-path <val> |
| 36 | +directory to load plugins from (default: /tmp/rustdoc_ng/plugins) |
| 37 | +.TP |
| 38 | +-L --library-path <val> |
| 39 | +directory to add to crate search path |
28 | 40 | .TP
|
29 | 41 | -h, --help
|
30 | 42 | Print help
|
31 | 43 |
|
32 | 44 | .SH "OUTPUT FORMATS"
|
33 | 45 |
|
34 |
| -The rustdoc tool can generate documentation in either the Markdown |
35 |
| -or HTML formats. It requires the pandoc tool |
36 |
| -<\fBhttp://johnmacfarlane.net/pandoc/\fR> for conversion features. |
| 46 | +The rustdoc tool can generate output in either an HTML or JSON format. |
| 47 | + |
| 48 | +If using an HTML format, then the specified output destination will be the root |
| 49 | +directory of an HTML structure for all the documentation. Pages will be placed |
| 50 | +into this directory, and source files will also possibly be rendered into it as |
| 51 | +well. |
| 52 | + |
| 53 | +If using a JSON format, then the specified output destination will have the |
| 54 | +rustdoc output serialized as JSON into it. This output format exists to |
| 55 | +pre-compile documentation for crates, and for usage in non-rustdoc tools. The |
| 56 | +JSON output is the following hash: |
| 57 | + |
| 58 | + { |
| 59 | + "schema": VERSION, |
| 60 | + "crate": ..., |
| 61 | + "plugins": ..., |
| 62 | + } |
| 63 | + |
| 64 | +The schema version indicates what the structure of crate/plugins will look |
| 65 | +like. Within a schema version the structure will remain the same. The `crate` |
| 66 | +field will contain all relevant documentation for the source being documented, |
| 67 | +and the `plugins` field will contain the output of the plugins run over the |
| 68 | +crate. |
37 | 69 |
|
38 | 70 | .SH "EXAMPLES"
|
39 | 71 |
|
40 | 72 | To generate documentation for the source in the current directory:
|
41 | 73 | $ rustdoc hello.rs
|
42 | 74 |
|
43 |
| -To build documentation into a subdirectory named 'doc' in the Markdown |
44 |
| -format: |
45 |
| - $ rustdoc --output-dir doc --output-format markdown hello.rs |
| 75 | +List all available passes that rustdoc has, along with default passes: |
| 76 | + $ rustdoc --passes list |
| 77 | + |
| 78 | +To precompile the documentation for a crate, and then use it to render html at |
| 79 | +a later date: |
| 80 | + $ rustdoc -w json hello.rs |
| 81 | + $ rustdoc doc.json |
46 | 82 |
|
47 |
| -The generated HTML can be viewed with any standard web browser, while |
48 |
| -the Markdown version is well-suited for conversion into other formats. |
| 83 | +The generated HTML can be viewed with any standard web browser. |
49 | 84 |
|
50 | 85 | .SH "SEE ALSO"
|
51 | 86 |
|
|
0 commit comments