#comments #prettier #format #forms #source #formatted

app rustdoc-prettier

Format //! and /// comments with prettier

3 unstable releases

0.2.0 Aug 8, 2024
0.1.1 Jul 28, 2024
0.1.0 Jun 30, 2024

#612 in Rust patterns

Download history 104/week @ 2024-07-23 32/week @ 2024-07-30 118/week @ 2024-08-06 5/week @ 2024-08-13 29/week @ 2024-09-10 15/week @ 2024-09-17 25/week @ 2024-09-24 35/week @ 2024-10-01

161 downloads per month

MIT/Apache

14KB
308 lines

rustdoc-prettier

Format //! and /// comments with prettier

Installation

cargo install rustdoc-prettier

rustdoc-prettier requires prettier to be installed independently, e.g.:

npm install -g prettier

Usage

rustdoc-prettier [ARGS]

Arguments ending with .rs are considered source files and are formatted. All other arguments are forwarded to prettier, with one exception. An option of the form:

---max-width <N>

is converted to options of the form:

--prose-wrap always --print-width <M>

where M is N minus the sum of the widths of the indentation, the //! or /// syntax, and the space that might follow that syntax. If the current directory contains a rustfmt.toml file with a max_width key, the --max-width option is applied automatically.

rustdoc-prettier supports glob patterns. Example:

rustdoc-prettier '**/*.rs'

References

Notes

rustdoc-prettier parses source code manually. It does not use rustdoc-json. There are two reasons for this:

  1. rustdoc-json provides the span of the commented code, but not of the comment itself. To the best of my knowledge, there is no easy way to extract rustdoc comments using rustdoc-json's output.
  2. rustdoc-json does not output spans for items that come from macro expansions or inline assembly. However, there are legitimate reasons to want to format such comments.

Dependencies

~7–16MB
~243K SLoC