People comparing EditorConfig to eslint or prettier does not really understand it's purpose.<p>yes they have intersecting features, but EditorConfig's main feature is that it lets you set file type specific whitespace rules automatically, across almost all editors.<p>- Most editors will have a global whitespace rule and you have to use that same rule for every file.<p>- Some editors can be configured to have different rules per file type but then it can't be done per project. So every project has to use the same rules.<p>- Some editors will let you configure all of these per project, but you have to save this project-settings file somewhere. Editor specific code is no good in the repo, so you need to maintain/backup it yourself.<p>EditorConfig solves all of these issues for me.
Before clicking on the link, I thought "Oh, just another attempt at standardizing editor preferences from a file in a repo." But looking at their list of editors which natively support EditorConfig and the list of plugins for editors which don't, this is far better support than I imagined. This is it! Problem solved.
EditorConfig is awesome, especially for a distributed remote team. I've standardized everyone whom I ever worked with few initial project settings and EditorConfig is such one must-do item. Been using it (I think) for the past 5 years or so.
I made this a standard for all my engineers years ago. anything I can do to automate consistency and "correctness" in coding style and let my team focus on doing the real work
Looks like 99% of this is covered by my editor being configured to autodetect existing indentation, and adjust itself accordingly: <a href="https://github.com/ciaranm/detectindent" rel="nofollow">https://github.com/ciaranm/detectindent</a>
I've evangelised this tool on every team I've worked with for years. It eliminates _so_ many forms of conflict and bikeshedding. (Plus I have contributed in a trivial way to the Emacs plugin; they very happily accept PRs).
At least in the JavaScript world, this was a lovely thing to have. Now we have linters which are even better! Still nice to include this so that all collaborators don't need to modify their editors to jump in!
I prefer tabs to spaces, not here to argue, and editorconfig is read by GitHub and let's me change tabs to display as 4 spaces instead of eight. A major win. Also allows me to default their editor to tabs.
The companion would be eclint in order to lint as part of a git hook or CI test run<p><a href="https://github.com/jedmao/eclint" rel="nofollow">https://github.com/jedmao/eclint</a>