-
Notifications
You must be signed in to change notification settings - Fork 31
Description
This issue inspired from the following discussion:
Currently, the spec defines the following components:
In EditorConfig:
- "EditorConfig files" (named ``.editorconfig`` in lowercase) include
section(s) storing key-value pairs. EditorConfig files must conform to this
specification.
- "Cores" parse files conforming to this specification, and provide
key-value pairs to plugins.
- "Plugins" receive key-value pairs from cores and update an editor's
settings based on the key-value pairs.
- "Editors" permit editing files, and use plugins to update settings for
files being edited.
These definitions basically make an assumption, that the EditorConfig specification is here mainly for text editors and IDEs:
"Editors" permit editing files, and use plugins to update settings for
files being edited.
While that is true that editors tend to support .editorconfig
files and the spec in general, the problem is that the editorconfig is not always implemented by plugins in the IDE. For instance, there are Maven/Gradle plugins and other pieces of software that implement EditorConfig spec but they are not used to edit the text and do not relate to text editors whatsoever. They are a part of build/CI process.
Those CI/build plugins basiaclly used during build to either ensure that given file "X" confirms to the restrictions defined in the spec, or to (literally) change the content of the given file "X" during the build to make it confirm to the spec.
The problem is that the current version of the spec, and the max_line_length
as it is being discussed makes an assumption that it is supported by so called "Editors", i.e. IDE/text editor components, which is not the only case.
Proposal:
I am not sure if we should make any assumptions about the nature of tool that is implementing the spec. Current spec does that assumption, and becuase of this the definitions like max_line_length
tend to reflect that assumption in themselves.