Since there has been some interest in supporting .editorconfig and it seems to be gaining in popularity, I have implemented support for SciTE.
.editorconfig doesn’t cover many properties but, because it is implemented by multiple editors, it allows some of the basics like line ends, tab size, and indentation to be specified by projects to avoid files diverging when edited by different people and applications.
The implementation for SciTE doesn’t use the library from
editorconfig.org as that adds a dependency to the PCRE regular expression library since it converts file patterns into regular expressions to test for matches. Instead, a PatternMatch function performs matches directly without converting to regular expressions. It currently implements all of the editorconfig matching rules except for numeric sequences where {1..99} matches a number between 1 and 99. The C++11 <regex> library wasn’t used as implementations often have poor Unicode semantics with, for example, “?” not matching multibyte characters.
This code evaluates .editorconfig after SciTE’s other properties files and overrides their settings. It is enabled with the enable.editor.config property. This should probably default to on in future releases as that seems safest but could default to off for the initial release in case of bugs.
A patch containing the implementation is attached.
http://editorconfig.org
Neil