rustdoc-prettier

Crates.iorustdoc-prettier
lib.rsrustdoc-prettier
version0.2.0
sourcesrc
created_at2024-06-30 11:11:59.89163
updated_at2024-08-08 10:09:57.667512
descriptionFormat `//!` and `///` comments with prettier
homepage
repositoryhttps://github.com/smoelius/rustdoc-prettier
max_upload_size
id1287919
size32,002
Samuel Moelius (smoelius)

documentation

README

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.
Commit count: 3

cargo fmt