Why Every Repo Needs an .editorconfig Generator
Every editor and IDE has its own defaults for indentation, line endings, and trailing whitespace, which is exactly why a shared .editorconfig file exists: one small file at the root of a repo that every contributor's editor reads and obeys automatically, regardless of their personal settings. This editorconfig generator lets you create .editorconfig content and generate editorconfig file rules for a project in seconds instead of hand-writing the INI-like syntax from memory, fully editorconfig online with nothing to install. Use it as a straightforward editorconfig maker whenever you're bootstrapping a new repo or fixing an existing one that keeps producing tabs-vs-spaces diffs between contributors.
How to Use This .editorconfig Generator
This .editorconfig generator applies whatever root rules you set, indent style and size, end-of-line character, charset, whether to trim trailing whitespace, and whether to insert a final newline, to every file by default, effectively making this an indent style config generator on its own even before you add any language overrides. Add editorconfig per language rules by typing comma-separated language names (markdown, python, go, make, yaml, json) into the Language overrides field, each one adds its own override section with a matching glob pattern. Click Generate, then copy the result or download it directly as a ready-to-commit, consistent code style editorconfig file.
Which Editors Actually Read .editorconfig?
Support varies by editor. JetBrains IDEs (WebStorm, PyCharm, IntelliJ, and the rest of the family) read .editorconfig natively with zero setup. Vim and Neovim need a plugin, or in recent Neovim versions a small config snippet, to pick it up. Sublime Text needs the EditorConfig package installed from Package Control. If you're specifically looking for editorconfig for vscode, install the official EditorConfig for VS Code extension, VS Code does not read .editorconfig out of the box without it.
| Editor | Support |
|---|---|
| VS Code | Needs the EditorConfig for VS Code extension |
| JetBrains IDEs | Built-in, no plugin required |
| Vim / Neovim | Needs a plugin, or built-in support in newer Neovim |
| Sublime Text | Needs the EditorConfig package |
What This Generator's Language Overrides Actually Change
Each language override only changes indent style, indent size, or trailing-whitespace trimming for files matching that language's glob pattern, it doesn't duplicate every root setting. Markdown turns trim_trailing_whitespace off, since a trailing double-space is meaningful Markdown syntax that forces a line break, Make sets indent_style to tab since Makefiles require literal tab characters, and Python, Go, YAML, and JSON each get their own conventional indent_size. This keeps the generated file focused on what actually differs per language instead of restating defaults that are already inherited from the root [*] section.