* text=auto

# Generic files
AUTHORS text
ChangeLog text
COPYING text
NEWS text
README text
CONTRIBUTING text
*.txt text
*.md text
*.zip binary

# C-like Sources
*.asm text
*.c text
*.cc text
*.cpp text
*.h text
*.s text
*.S text
*.elf binary

# C-like configuration/scripts
*.ac text
*.am text
# file permission +x
*.bat text
*.build text
*.incl text
makefile text
Makefile text
*.mk text
# file permission +x
*.sh text

# Qt
*.pro text
*.qml text
*.qrc text

# Visual Studio
*.dsp text eol=crlf
*.dsw text eol=crlf
*.filters text eol=crlf
*.sln text eol=crlf
*.vcxproj text eol=crlf

# C output files 
# (These should not normally be checked in, exceptions for pre-compiled libraries and tests)
*.o binary
*.d text
# file permission +x
*.dll binary diff=dll
*.a binary
# file permission +x
*.exe binary
*.out binary
*.app binary
# file permission +x
*.jnilib binary diff=hex
# file permission +x
*.so binary

# Web/Javascript/Node
*.css text
*.htm text
*.html text
*.js text
*.json text
.npmignore text
package-list text
*.xml text
*.xsd text
*.xsl text
yarn.lock text
*.lock text

# Images
*.gif binary
*.icns binary
*.ico binary
*.jpg binary
*.jpeg binary
*.png binary
*.PNG binary
*.xpm binary

# Java/Eclipse
# remove trailing whitespace
*.java text
# remove trailing whitespace
*.properties text
.api_filters text
.classpath text
*.exsd text
*.g text
*.inf text
*.ini text
*.launch text
*.mappings text
# remove trailing whitespace
*.MF text
.options text
*.options text
*.prefs text
*.product text
.project text
*.setup text
*.target text

# Java output files
# (These should not normally be checked in, exceptions for pre-compiled libraries and tests)
*.class binary
*.jar binary

# Files used in tests
*.awts text
be32 binary
be32lib binary
be64 binary
be64lib binary
*.bin binary
exe binary
exebig_g binary
exe_g binary
*.expected text
*.F90 text
*.init text
launchConfigTestGdbinit text
le32 binary
le32lib binary
le64 binary
le64lib binary
*.main text
output-1 text
*.pda text
*.rts text
*.srec text eol=lf
test_commands text

# Other special files
cdtOptions text
.clang-format text
.contentsettings text
*.csv text
*.dia binary
*.dictionary text
.eclipseproduct text
.euml2 text
.gitattributes text
.gitignore text
.gitkeep text
*.patch text
*.src text
*.tmLanguage text
*.top text
*.ucd text
.umlproject text
# remove trailing whitespace
# file permission +x
*.py text
*.xhtml text
