# Line endings are not cosmetic in this repository.
#
# Common Lisp's FORMAT has directives whose meaning *is* a newline.  A `~`
# at end of line swallows the newline and the indentation that follows it,
# which is how every multi-line message in this project is written — there
# are more than thirty of them.  Check the same file out with CRLF and the
# character after the `~` is a Return instead, so the directive becomes
# unknown and the file does not compile:
#
#     error in FORMAT: Unknown directive (character: Return)
#
# git's core.autocrlf defaults to true on a Windows install, so this is not
# hypothetical: it cost antsim a Windows release build, and this project
# inherited the same style of message without inheriting the fix.  The
# source compiles everywhere it was written and nowhere it was checked out
# with the other convention.  Nothing about the Lisp is wrong; it is
# standard and it stays.
#
# Normalising to LF in the repository *and* in the working tree, on every
# platform, is the fix.  Nothing here is edited by a tool that requires
# CRLF, and the one Windows-native file — a PowerShell script — is read
# perfectly well with LF endings by PowerShell 5 and 7 alike.
* text=auto eol=lf

# Binary, and must never be touched by any of the above: a normalised PNG
# is a corrupt PNG.  `text=auto` detects this correctly on its own, but the
# images are where getting it wrong is silent — the file still has a size
# and a header, and only looks wrong.
*.png binary
*.jpg binary
*.gif binary

# Packaged artefacts, for the same reason.
*.AppImage binary
*.zip binary
*.msi binary
