# EditorConfig (https://editorconfig.org) — keeps non-Python files consistent;
# Python style is enforced by ruff (line-length 100, see pyproject.toml).
root = true

[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
indent_style = space

[*.py]
indent_size = 4
max_line_length = 100

[*.{toml,yml,yaml}]
indent_size = 2

[*.md]
# Markdown uses trailing double-space as a hard line break.
trim_trailing_whitespace = false

# Corpus fixtures are measurement inputs with hand-computed expected values —
# trailing whitespace and missing final newlines can be the very thing a case
# measures (e.g. py-blank-lines-001). Editors must never "clean" them; a silent
# fix here surfaces later as a baffling spec-drift gate failure.
[tests/corpus/**]
trim_trailing_whitespace = false
insert_final_newline = false
indent_style = unset
indent_size = unset
