1个稳定版本
1.0.0 | 2021年5月14日 |
---|
在Rust模式中排名1262
每月下载25次
用于 2 crate
5KB
此crate提供nofmt::pls
,一个宏,旨在最大程度地防止代码块被破坏。
[dependencies]
nofmt = "1.0"
nofmt::pls! {
// R G B A
pub const MAIN_WINDOW_BG: [f32; 4] = [0.187, 0.187, 0.187, 1. ];
pub const DEBUG_WINDOW_BG: [f32; 4] = [0. , 0. , 0. , 0.85];
pub const INPUT_BOX_BG: [f32; 4] = [0.011, 0.022, 0.055, 1. ];
}
如何绕过rustfmt 101
在crate上执行cargo fmt
可能会剧烈改变每个文件,不可逆。所以我们的唯一选择就是接受它。
- 要跳过单个项声明,使用
#[rustfmt::skip]
- 要跳过块,使用
nofmt::pls!
- 要跳过整个文件,使用
#![cfg_attr(rustfmt, rustfmt_skip)]
请注意,不能通过rustfmt.toml
来退出rustfmt。
由于disable_all_formatting = true
和ignore = ["/"]
都不是稳定特性。
已知限制
这种方法本身并不完美,在nofmt::pls
块内部
- 每一行都会被修剪。
- 制表符缩进会被替换为空格。
请注意,rustfmt 的格式宏是一个开放的问题。因此,这个crate可能在任何时间停止工作。
全力以赴
为了绕过限制,您可以使用与宏一起使用的rustfmt::skip
属性。
#[rustfmt::skip] nofmt::pls! {
let absolute_preservation_of_whitespace = "achieved";
}