Bug #1749659 bought up again some modularity problems with
Scintilla/SciTE. The WordList and PropSet classes are defined in
Scintilla and used both in Scintilla and SciTE. SciTE requirements
have led to some complex methods (such as GetNearestWords) being added
even though they are not used in Scintilla. Some projects using
Scintilla also use these classes which makes it hard to change them
when SciTE needs a new feature.

  I want to separate Scintilla and SciTE more. A new StringList class
in SciTE will be equivalent to the current WordList. WordList drops
methods that are not used in Scintilla. Scintilla gets to keep the
name because WordList is used in all lexers including those
distributed by others.

  All of the code responsible for iteration through a property set
and for wild card file matching is moved from PropSet to SciTE's
PropSetFile class. It would have been good to move over the variable
expansion feature but unfortunately this has been exposed as
SCI_GETPROPERTYEXPANDED.

  Projects that have used PropSet and WordList in similar ways to
SciTE could either copy the classes from Scintilla into their code or
use the modified classes from SciTE. In the future, I expect that
SciTE will start using the standard C++ library rather than its own
container classes and diverge further from Scintilla.

  Neil
_______________________________________________
Scite-interest mailing list
Scite-interest@lyra.org
http://mailman.lyra.org/mailman/listinfo/scite-interest

Reply via email to