EditorConfig utrzymuje spójny styl kodowania pomiędzy różnymi edytorami i środowiskami IDE w zespołach inżynierskich.
Standardowa konfiguracja bazowa projektu
Umieść plik .editorconfig w katalogu głównym projektu:
# Deklaracja najwyższego pliku EditorConfig
root = true
# Globalne ustawienia domyślne dla wszystkich plików
[*]
indent_style = space
indent_size = 2
tab_width = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
# Wcięcia 4-spacjowe dla języka Python
[*.py]
indent_size = 4
# Wcięcia tabulatorami dla Go i plików Makefile
[*.go]
indent_style = tab
[Makefile]
indent_style = tab
# Pliki Markdown zachowują spacje końcowe dla łamania linii
[*.md]
trim_trailing_whitespace = false
Obsługiwane właściwości
| Właściwość | Dozwolone wartości | Opis |
|---|---|---|
root |
true |
Zatrzymuje rekursywne przeszukiwanie katalogów nadrzędnych |
indent_style |
space | tab |
Typ znaku używanego do wcięć |
indent_size |
Integer | tab |
Liczba kolumn dla wcięcia |
tab_width |
Integer | Liczba kolumn dla tabulatora (domyślnie indent_size) |
end_of_line |
lf | crlf | cr |
Sekwencja znaków końca linii |
charset |
utf-8 | utf-16be | utf-16le | latin1 |
Kodowanie znaków pliku |
trim_trailing_whitespace |
true | false |
Usuwanie białych znaków na końcach linii |
insert_final_newline |
true | false |
Upewnienie się, że plik kończy się znakiem nowej linii |
max_line_length |
Integer | off |
Zalecana maksymalna szerokość wiersza |
Dopasowywanie wzorców Glob
*: Dopasowuje dowolny ciąg znaków oprócz separatorów ścieżek (/)**: Dopasowuje dowolny ciąg znaków w wielu katalogach?: Dopasowuje dowolny pojedynczy znak[seq]: Dopasowuje dowolny znak znajdujący się w seq[!seq]: Dopasowuje dowolny znak nieznajdujący się w seq{s1,s2,s3}: Dopasowuje dowolny z ciągów rozdzielonych przecinkami