summaryrefslogtreecommitdiff
path: root/rustfmt.toml
blob: 7dc6e875783a84d203a4456c9d16d0bbf8a62062 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# Версия Rust edition (2021, 2018, 2015)
edition = "2021"

# Общие настройки
max_width                    = 100                 # Максимальная ширина строки
hard_tabs                    = false               # Использовать пробелы вместо табов
tab_spaces                   = 4                   # Количество пробелов на таб
error_on_line_overflow       = true                # Ошибка при превышении ширины строки
report_todo                  = "Always"            # Отмечать TODO комментарии
report_fixme                 = "Always"            # Отмечать FIXME комментарии

# Отступы и выравнивание
indent_style                 = "Block"             # Стиль отступов ("Block" или "Visual")
align_enum_variants          = true                # Выравнивать варианты enum
align_function_params        = false               # Выравнивать параметры функций

# Структуры и enum
struct_lit_single_line       = true                # Разрешить литералы структур в одну строку
enum_discrim_align_threshold = 0                   # Выравнивать дискриминанты enum
match_arm_blocks             = true                # Блоки в руках match
match_block_trailing_comma   = false               # Запятая после последнего элемента в match

# Функции и where-клаузы
fn_args_layout               = "Tall"              # Параметры функции в несколько строк
where_single_line            = false               # Переносить where-клаузы на новую строку
brace_style                  = "SameLineWhere"     # Расположение фигурных скобок

# Импорты
group_imports                = "StdExternalCrate"  # Группировать импорты
reorder_imports              = false               # Сортировать импорты по алфавиту
imports_granularity          = "Crate"             # Уровень группировки импортов

# Строки и форматирование
format_strings               = true               # Автоформатирование строк
wrap_comments                = true               # Перенос длинных комментариев
comment_width                = 80                 # Ширина комментариев
chain_width                  = 60                 # Макс. длина цепочки методов перед переносом

# Макросы
format_macro_matchers        = true               # Форматировать тело макросов
format_macro_bodies          = true               # Форматировать тела макросов