Rustfmt

.rustfmt.toml是rust项目的格式化配置,这些自定义选项会增加工程的通用性. 以下是从各个Bevy生态库中汇总而成的.

tab_spaces = 4                      # 每个缩进层级使用 4 个空格(不是 tab 字符)
format_macro_bodies = true          # 自动格式化宏体内容,比如 println! 里面的内容
format_macro_matchers = true        # 自动格式化宏定义中的 matcher 部分(即 $() => {} 的部分)
wrap_comments = true                # 自动换行注释内容,保持在 max_width 范围内
max_width = 80                      # 每行最大宽度限制为 80 个字符,超出会尝试换行
reorder_impl_items = true           # 自动对 impl 块中的方法、关联常量等重新排序(按类型+名字)
merge_derives = false               # 不合并多个 #[derive()] 为一个,保留多行形式(可读性好)
imports_granularity = "Module"      # 导入项按模块分组,比如 use std::{fs, io}; 而不是分成单个
overflow_delimited_expr = true      # 表达式如果太长会在逗号后换行,比如函数调用的参数列表
group_imports = "StdExternalCrate"  # 按顺序分组导入:标准库 > 第三方库 > 自定义 crate
use_field_init_shorthand = true     # 使用字段初始化简写:x: x → x(当字段名与变量名相同)
newline_style = "Unix"              # 使用 Unix 风格的换行符,即 \n(跨平台友好)