# Keep generated artifacts and bulk asset data out of the GitHub diff and
# language stats so reviews focus on hand-written code. These files are still
# tracked and built normally; linguist-generated only collapses them in PR
# diffs (reviewers can expand) and excludes them from the language bar and the
# diffstat.
#
# External dependencies are not tracked here at all — every one of them is
# fetched at configure time into the build tree. See
# docs/external-dependencies.md for the package targets and FetchContent pins.

# Generated / regenerable parity-harness fixtures (emitted by scripts/parity/).
tests/parity/scenario_facts_generated.json linguist-generated
tests/parity/scenario_table.h             linguist-generated

# Package-manager lockfiles (root + relay/) — generated by npm.
package-lock.json linguist-generated

# Sprite metadata emitted alongside the PNG assets (data, not source code).
pix/*.json linguist-generated

# Parity goldens are byte artifacts, not text: og_test_parity compares the
# canonical dump to these files byte for byte (tests/parity/golden_compare.h),
# trailing newline included. A checkout that rewrote them to CRLF would red
# every SemanticParity row at the first line ending, so no eol conversion here.
tests/parity/golden/*.json -text

# Shell scripts run through bash on every host, the Windows CI runner
# included (the lint targets in CMakeLists.txt invoke them by interpreter).
# A CRLF checkout turns every line into "...\r: command not found".
*.sh text eol=lf

# The keyboard picture's glyph atlas: scripts/check_keyboard_glyphs.sh hashes
# the generator and compares the table it wrote, so a checkout must never
# turn their line ends into CRLF (the atlas PNG is binary already).
scripts/keyboard_picture/generate_glyphs.py text eol=lf
src/interface/ui/keyboard_glyphs.inc         text eol=lf
