Descent3/.gitattributes
Jason Yundt df838f0617 Create EditorConfig file
Most files in this repo assume that tabs are 8 characters wide and use 2
spaces for indentation. Most people’s editors aren’t configured to do
that by default. This can lead to indentation mistakes [1].

The main motivation behind this change is to make indentation mistakes
less likely. Many editors [2] will automatically use whatever
indentation settings are in the EditorConfig file.


On an unrelated note, the EditorConfig that this commit adds includes a
tab_width property. This comment in cfile/cfile.h was the inspiration
for specifying the tab_width property:

// Opens a HOG file.  Future calls to cfopen(), etc. will look in this HOG.
// Parameters:  libname - the path & filename of the HOG file
// NOTE:	libname must be valid for the entire execution of the program.  Therefore, it should either
//			be a fully-specified path name, or the current directory must not change.
// Returns: 0 if error, else library handle that can be used to close the library
int cf_OpenLibrary(const char *libname);

When tab_width is set to 8, the first “libname” lines up with the second
“libname”, and the m in “must” lines up with the b in “be”. When
tab_width is set to its default value (4 in this case [3]), the first
“libname” doesn’t line up with anything, and the second “libname” lines
up with the b in “be”. It just looks more correct when tab_width is set
to 8.

[1]: <https://github.com/DescentDevelopers/Descent3/pull/372#issuecomment-2122445826>
[2]: <https://editorconfig.org/#pre-installed>
[3]: <https://spec.editorconfig.org/#supported-pairs>
2024-05-21 11:11:16 -04:00

62 lines
1.1 KiB
Plaintext

# .gitattributes
# Text files
*.asm text eol=lf
*.asp text eol=lf
*.bat text eol=lf
*.c text eol=lf
*.cc text eol=lf
*.check_cache text eol=lf
*.cmake text eol=lf
*.cnt text eol=lf
*.cpp text eol=lf
*.h text eol=lf
*.hm text eol=lf
*.in text eol=lf
*.json text eol=lf
*.lastbuildstate text eol=lf
*.list text eol=lf
*.loc text eol=lf
*.log text eol=lf
*.m text eol=lf
*.md text eol=lf
*.msg text eol=lf
*.msn text eol=lf
*.recipe text eol=lf
*.rc text eol=lf
*.rule text eol=lf
*.sh text eol=lf
*.sqlite text eol=lf
*.str text eol=lf
*.txt text eol=lf
*.yaml text eol=lf
*.yml text eol=lf
# .editorconfig also contains a list of files that should use CRLFs. If you add
# a new “eol=crlf” here, then please also add it to .editorconfig.
# Visual Studio project files
*.vcproj text eol=crlf
*.vcxproj text eol=crlf
# Binary files
*.bin binary
*.bmp binary
*.dll binary
*.exe binary
*.exp binary
*.fnt binary
*.ico binary
*.idb binary
*.lib binary
*.oaf binary
*.obj binary
*.ogf binary
*.omf binary
*.osf binary
*.pdb binary
*.rc2 binary
*.rtf binary
*.sln binary
*.stamp binary
*.tlog binary
*.wav binary