# ---------------------------------------------------------------------------
# SquirrelJME
#     Copyright (C) Stephanie Gawroriski <xer@multiphasicapps.net>
# ---------------------------------------------------------------------------
# SquirrelJME is under the Mozilla Public License Version 2.0.
# See license.mkd for licensing and copyright information.
# ---------------------------------------------------------------------------
# DESCRIPTION: EditorConfig Stylization <https://editorconfig.org/>

### GLOBAL PROJECT SETTINGS ###
root = true

[*]
end_of_line = lf
insert_final_newline = true
tab_width = 4
indent_size = 4
max_line_length = 79
trim_trailing_whitespace = true

# Batch files are Windows specific
[*.bat]
end_of_line = crlf
insert_final_newline = unset
indent_style = unset

# Standard source code
[*.{md,mkd,c,cpp,h,java,js,json,j,sh,xpm,gradle,cxx,hxx}]
charset = latin1
indent_style = tab

# Markdown may be in UTF-8, but uses different indentation depending on context
[*.{md,mkd}]
charset = utf-8
indent_style = unset

# YAML uses a bit of a different format compared to the others
[*.{yml,yaml}]
indent_size = 2
indent_style = tab

# These files should _NEVER_ be re-formatted or touched
[*.{svg,__mime,in,glyph,bitmap,gpl,gpg,properties,jar}]
end_of_line = unset
insert_final_newline = unset
charset = unset
indent_size = unset
indent_style = unset
tab_width = unset
max_line_length = unset
trim_trailing_whitespace = unset
curly_bracket_next_line = unset
spaces_around_operators = unset
spaces_around_brackets = unset
indent_brace_style = unset
wildcard_import_limit = unset

[*.css]
indent_style = space

[*.less]
indent_size = 2
indent_style = space

[*.sass]
indent_size = 2
indent_style = space

[*.scss]
indent_size = 2
indent_style = space

[*.styl]
indent_size = 2
indent_style = space

[.editorconfig]

[{*.ant,*.fxml,*.jhm,*.jnlp,*.jrxml,*.qrc,*.rng,*.tld,*.wsdl,*.xml,*.xsd,*.xsl,*.xslt,*.xul}]

[{*.bash,*.sh,*.zsh}]

[{*.c,*.c++,*.cc,*.cp,*.cpp,*.cu,*.cuh,*.cxx,*.h,*.h++,*.hh,*.hp,*.hpp,*.hxx,*.i,*.icc,*.ii,*.inl,*.ino,*.ipp,*.m,*.mm,*.pch,*.tcc,*.tpp}]

[{*.cmake,CMakeLists.txt}]

[{*.comp,*.frag,*.fsh,*.geom,*.glsl,*.shader,*.tesc,*.tese,*.vert,*.vsh}]
indent_style = space

[{*.doclua,*.lua,*.wlua}]
indent_style = space

[{*.har,*.json}]
indent_size = 2
indent_style = space

[{*.htm,*.html,*.sht,*.shtm,*.shtml}]
indent_style = space

[{*.markdown,*.md,*.mkd,markdown}]
indent_style = space

[{*.mk,GNUmakefile,makefile}]

[{*.ps1,*.psd1,*.psm1}]
max_line_length = 115

[{*.py,*.pyw}]
indent_style = space

[{*.yaml,*.yml,.clang-format,.clang-tidy,_clang-format}]
indent_size = 2
