Scintilla lexers can use properties to define their behaviour, such
as setting the default language for ASP or allowing folding to occur
on c++ preprocessor directives. The properties are set by the
container, but the container has no easy way of knowing which property
names are supported so has to have a hard coded set of known names to
set. The names are not scoped to a particular lexer so it is easy to
get clashes between lexers.
SciTE has a hard coded list of properties to forward, but this list
is now automatically generated from the source code of the lexers by
LexGen.py. For name to be included in the list, there must be a call
to GetProperty*("<name>") in one of the Lex*.cxx files in
scintilla/src. The name must either start with "lexer." or "fold." or
be one of the currently forwarded names. New property names should
start with "lexer.<lexer>." or "fold.<lexer>." when they apply to one
lexer or start with "lexer." or "fold." if they apply to multiple
lexers. For example, the new SQL quoted identifier feature is
"lexer.sql.backticks.identifier". Several existing property names
already follow this convention.
To maintain compatibility, the current set of forwarded properties
will not be regularised.
Committed to CVS and available from
http://scintilla.sourceforge.net/scite.zip Source
http://scintilla.sourceforge.net/wscite.zip Windows executable
Neil
_______________________________________________
Scintilla-interest mailing list
[email protected]
http://mailman.lyra.org/mailman/listinfo/scintilla-interest