Skip to content

Commit

Permalink
Mention spec and indented blocks in doctest docs
Browse files Browse the repository at this point in the history
This commit adds a new section to the Documentation Test docs, which briefly mentions indented code blocks, and links to the CommonMark specification for both.

I’m not sure about saying "fenced code blocks the more popular choice in the Rust community” because it seems like I’m speaking for everyone, but I can’t think of a better way to phrase it!
  • Loading branch information
ogham committed May 29, 2018
1 parent 4f6d9bf commit 9fcc61b
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions src/doc/rustdoc/src/documentation-tests.md
Expand Up @@ -284,3 +284,27 @@ environment that has no network access.
compiles, then the test will fail. However please note that code failing
with the current Rust release may work in a future release, as new features
are added.
## Syntax reference
The *exact* syntax for code blocks, including the edge cases, can be found
in the [Fenced Code Blocks](https://spec.commonmark.org/0.28/#fenced-code-blocks)
section of the CommonMark specification.
Rustdoc also accepts *indented* code blocks as an alternative to fenced
code blocks: instead of surrounding your code with three backticks, you
can indent each line by four or more spaces.
``````markdown
let foo = "foo";
assert_eq!(foo, "foo");
``````

These, too, are documented in the CommonMark specification, in the
[Indented Code Blocks](https://spec.commonmark.org/0.28/#indented-code-blocks)
section.

However, it's preferable to use fenced code blocks over indented code blocks.
Not only are fenced code blocks the more popular choice in the Rust community,
but there is no way to use directives such as `ignore` or `should_panic` with
indented code blocks.

0 comments on commit 9fcc61b

Please sign in to comment.