# EditorConfig is awesome: https://editorconfig.org

# There should usually only be one of these.  
# If you want to override any .editorconfig settings in lower folders, create a new .editorconfig there
# and remove this line or set it to false.  It will override duplicate entries and inherit the rest.
root=true

# ---- ---- ---- ---- ---- ---- ---- ---- 
# Defaults for all files.
# ---- ---- ---- ---- ---- ---- ---- ---- 
[{*, *.*}]
tab_width = 4
indent_size = 4
indent_style = tab
resharper_tabs_are_disallowed_highlighting=none
trim_trailing_whitespace = true
insert_final_newline = true

# ---- ---- ---- ---- ---- ---- ---- ---- 
# Code file types
# ---- ---- ---- ---- ---- ---- ---- ---- 

# ALWAYS include this to correct issues with "insert_final_newline=true" in the {*.*} glob above!
# Markdown files are sensitive to trailing whitespace.
[*.md]
trim_trailing_whitespace = false
insert_final_newline = false

[*.cs]
tab_width = 4
indent_size = 4
indent_style = tab
csharp_style_namespace_declarations=file_scoped:suggestion
resharper_tabs_are_disallowed_highlighting=none

[{*.vb, *.bas}]
tab_width = 4
indent_size = 4
indent_style = tab

[{*.js, *.ts}]
tab_width = 4
indent_size = 4
indent_style = space

[*.py]
tab_width = 4
indent_size = 4
indent_style = tab

[*.pas]
tab_width = 2
indent_size = 2
indent_style = space

[*.sql]
tab_width = 4
indent_size = 4
indent_style = tab

# ---- ---- ---- ---- ---- ---- ---- ---- 
# Declarative / data file types
# ---- ---- ---- ---- ---- ---- ---- ---- 

[*.xml]
tab_width = 4
indent_size = 4
indent_style = tab

[{*.yml, *.yaml, Dockerfile, dockerfile}]
tab_width = 2
indent_size = 2
indent_style = space

[*.json]
tab_width = 2
indent_size = 2
indent_style = space

[*.html]
tab_width = 4
indent_size = 4
indent_style = tab

[*.txt]
tab_width = 4
indent_size = 4
indent_style = tab
trim_trailing_whitespace = false
insert_final_newline = true
