Mode d'emploi
- Choisissez l'indentation dans Indenter avec et Taille de l'indentation. Choisissez le saut de ligne dans Fin de ligne et l'encodage dans Jeu de caractères.
- Cochez les sections par type de fichier dont vous avez besoin : Garder les espaces en fin de ligne en Markdown, Indenter le YAML avec deux espaces et Indenter les recettes Makefile avec des tabulations.
- Copiez le texte de Le fichier .editorconfig, ou téléchargez-le, puis enregistrez-le dans le dossier racine de votre projet.
- Lisez Signification de chaque ligne pour vérifier ce que fait chaque propriété.
Comment fonctionne le fichier
De nombreux éditeurs et environnements de développement lisent un fichier .editorconfig et appliquent ses réglages aux fichiers qui correspondent à chaque section. Un en-tête de section est un motif de nom de fichier entre crochets, et les propriétés qui suivent s'appliquent à chaque fichier correspondant. Une section postérieure remplace une section antérieure pour la même propriété. La ligne root = true arrête la recherche : les réglages ne vont donc que dans ce dossier et dans les dossiers situés en dessous.
- * correspond à n'importe quels caractères, sauf une barre oblique.
- ** correspond à n'importe quels caractères, barres obliques comprises.
- {yml,yaml} correspond à l'un ou l'autre texte : *.{yml,yaml} correspond donc aux deux types de fichiers.
Les sections par type de fichier
- Markdown : deux espaces en fin de ligne créent un saut de ligne, la suppression est donc désactivée pour *.md.
- YAML : les tabulations ne sont pas admises pour l'indentation, donc *.{yml,yaml} est indenté avec des espaces, deux par niveau.
- Makefile : chaque ligne de recette doit commencer par une tabulation, donc Makefile reçoit indent_style = tab.
Choisir les valeurs
- Les espaces sont le choix courant pour le code. Les tabulations conviennent à une équipe dont tous les éditeurs affichent une tabulation à la même largeur.
- LF est le saut de ligne habituel des projets sous Linux et macOS, et de la plupart des dépôts. CRLF est celui des fichiers texte Windows.
- UTF-8 est l'encodage standard. N'utilisez UTF-8 avec une marque d'ordre d'octets que lorsqu'un outil en a besoin.
Exemple détaillé : les choix par défaut
Avec des espaces, une taille d'indentation de 2, LF, UTF-8, les espaces en fin de ligne supprimés, un saut de ligne final et les trois sections par type de fichier, le fichier a une ligne root, une section pour tous les fichiers avec six propriétés, une propriété dans chacune des sections Markdown et Makefile, et deux dans la section YAML. Le tableau liste onze lignes de propriété, dont six sont montrées ici.
| Section | Propriété | Valeur |
|---|---|---|
| Haut du fichier | root | true |
| Tous les fichiers | indent_style | space |
| Tous les fichiers | indent_size | 2 |
| Markdown (.md) | trim_trailing_whitespace | false |
| YAML (.yml, .yaml) | indent_style | space |
| Makefile | indent_style | tab |
Questions fréquentes
Où faut-il placer le fichier .editorconfig ?
Dans le dossier racine du projet, à côté du README. Les éditeurs le cherchent dans le dossier de chaque fichier, puis dans chaque dossier au-dessus ; la recherche s'arrête au premier fichier qui a root = true.
Un fichier .editorconfig reformate-t-il mon code ?
Pas de lui-même. Il indique aux éditeurs et aux extensions quelles indentation, fins de ligne et encodage utiliser lorsqu'ils modifient ou enregistrent un fichier. Un formateur ou un linteur fait le reformatage, et certains lisent les mêmes réglages.
Pourquoi la section Markdown garde-t-elle les espaces en fin de ligne ?
En Markdown, deux espaces en fin de ligne créent un saut de ligne. Les supprimer réunirait deux lignes en une : cette section désactive donc la suppression pour les seuls fichiers .md.
Pourquoi un Makefile doit-il utiliser des tabulations ?
make lit chaque ligne de recette après un caractère de tabulation, et une recette qui commence par des espaces est une erreur. La section Makefile fixe donc indent_style à tab pour les fichiers nommés Makefile.
Un sous-dossier peut-il retirer l'un de ces réglages ?
Oui, avec la valeur unset, qui retire une propriété définie plus tôt. Cette page n'écrit que des valeurs simples : ajoutez cette ligne dans le fichier .editorconfig propre au sous-dossier si vous en avez besoin.
Le fichier est-il envoyé à un serveur ?
Non. Le fichier est écrit dans votre navigateur à partir de vos choix, et rien de ce que vous choisissez n'est stocké.
Sources
- EditorConfig (en anglais) : the file format and the supported properties
- EditorConfig (en anglais) : specification, sections, globs and root
- CommonMark 0.31.2 (en anglais) : hard line breaks (two spaces at the end of a line)
- YAML 1.2.2 (en anglais) : tab characters must not be used in indentation
- GNU Make (en anglais) : manual, a recipe line begins with a tab character
Chiffres et texte vérifiés pour la dernière fois le mardi 10 novembre 2026.