EditorConfig maintient des styles de code cohérents entre différents éditeurs et IDE au sein des équipes de développement.
Configuration de base pour projets
Placez un fichier .editorconfig à la racine de votre projet :
# Déclaration du fichier EditorConfig racine
root = true
# Valeurs par défaut globales pour tous les fichiers
[*]
indent_style = space
indent_size = 2
tab_width = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
# Indentation de 4 espaces pour Python
[*.py]
indent_size = 4
# Indentation par tabulations pour Go et Makefiles
[*.go]
indent_style = tab
[Makefile]
indent_style = tab
# Les fichiers Markdown conservent les espaces finals pour les retours à la ligne
[*.md]
trim_trailing_whitespace = false
Propriétés prises en charge
| Propriété | Valeurs autorisées | Description |
|---|---|---|
root |
true |
Arrête la recherche récursive dans les répertoires parents |
indent_style |
space | tab |
Type de caractère d'indentation |
indent_size |
Integer | tab |
Nombre de colonnes par indentation |
tab_width |
Integer | Largeur de colonne pour une tabulation (par défaut indent_size) |
end_of_line |
lf | crlf | cr |
Séquence de fin de ligne |
charset |
utf-8 | utf-16be | utf-16le | latin1 |
Encodage des caractères du fichier |
trim_trailing_whitespace |
true | false |
Supprime les espaces blancs en fin de ligne |
insert_final_newline |
true | false |
Garantit que le fichier se termine par une nouvelle ligne |
max_line_length |
Integer | off |
Largeur maximale de colonne recommandée |
Correspondance de motifs Glob
*: Correspond à n'importe quelle chaîne, sauf les séparateurs de chemin (/)**: Correspond à n'importe quelle chaîne à travers plusieurs répertoires?: Correspond à un seul caractère quelconque[seq]: Correspond à n'importe quel caractère présent dans seq[!seq]: Correspond à n'importe quel caractère absent de seq{s1,s2,s3}: Correspond à l'une des chaînes séparées par des virgules