The official way to get Rustfmt to skip an item is #[rustfmt::skip]
, however I want it to skip an entire file. I tried this:
#![rustfmt::skip]
However you get this error
error[E0658]: non-builtin inner attributes are unstable
Here is the issue for that error.
Is there a workaround for this? Solutions I am not interested in:
- Use unstable Rust
- Tell Rustfmt not to process the file using something external to the file (
rustfmt.toml
for example)
Currently Rustfmt traverses the mod tree itself so you can put the attribute on the file that declared the module you want to ignore.
Then
dont_format_this_file.rs
will be skipped.However, Rustfmt 2 changed its behaviour so that it doesn't traverse the mod tree, so you have to specify
dont_format_this_file.rs
directly. In that case it seems likely that it will find themod dont_format_this_file;
declaration so this may not work when Rustfmt 2 is released.