From 0152ded3fff592721f5fe2b45701c643c4e3a53c Mon Sep 17 00:00:00 2001
From: Don Ho Last edited 16/July/2010 NH Last edited 19/January/2011 NH There is an overview of the internal design of
Scintilla.Scintilla Documentation
-
@@ -937,6 +937,7 @@ struct Sci_TextToFind {
SCI_GETSTATUS
.
To clear the error status call SCI_SETSTATUS(0)
.
The currently defined statuses are:
+
@@ -961,8 +962,6 @@ struct Sci_TextToFind {
-
Scintilla has multiple level undo and redo. It will continue to collect undoable actions @@ -1257,7 +1256,8 @@ struct Sci_TextToFind { the line not including any end of line characters, use
- SCI_GETSELTEXT(<unused>, char *text) - .SCI_GETSELTEXT(<unused>, char *text)
This copies the currently selected text and a terminating 0 byte to the text
buffer. The buffer size should be determined by calling with a NULL pointer for the text
argument
SCI_GETSELTEXT(0,0)
.
@@ -1507,9 +1507,9 @@ struct Sci_TextToFind {
- colour)
- colour)
- colour)
+
+
+
@@ -1661,7 +1661,7 @@ struct Sci_TextToFind {
SCI_SETADDITIONALCARETSVISIBLE(bool additionalCaretsVisible)
SCI_GETADDITIONALCARETSVISIBLE
- Determine whether to show additional carets (defaults to true
).
+ Determine whether to show additional carets (defaults to true
).
SCI_SWAPMAINANCHORCARET
@@ -2076,11 +2076,11 @@ struct Sci_TextToFind {
the lexer's colours with SCI_SETWHITESPACEFORE
and
SCI_SETWHITESPACEBACK
.
SCI_SETWHITESPACESIZE(int size)
SCI_GETWHITESPACESIZE
SCI_SETWHITESPACESIZE
sets the size of the dots used for mark space characters.
The SCI_GETWHITESPACESIZE
message retrieves the current size.
-
+
SCI_SETEXTRAASCENT(int extraAscent)
@@ -2093,7 +2093,7 @@ struct Sci_TextToFind {
Space may be added to the maximum ascent (SCI_SETEXTRAASCENT
) and the
maximum descent (SCI_SETEXTRADESCENT
) to allow for more space between lines.
This may done to make the text easier to read or to accomodate underlines or highlights.
-
+
SCI_SETSELFORE(bool useSelectionForeColour,
- int colour)
- SCI_SETSELBACK(bool useSelectionBackColour,
- int colour)
+ SCI_SETSELFORE(bool useSelectionForeColour, int colour)
+ SCI_SETSELBACK(bool useSelectionBackColour, int colour)
SCI_SETSELALPHA(int alpha)
SCI_GETSELALPHA
SCI_SETSELEOLFILLED(bool filled)
SCI_GETSELEOLFILLED
SCI_SETCARETFORE(int colour)
SCI_GETCARETFORE
- SCI_SETCARETLINEVISIBLE(bool
- show)
+ SCI_SETCARETLINEVISIBLE(bool show)
SCI_GETCARETLINEVISIBLE
SCI_SETCARETLINEBACK(int colour)
SCI_GETCARETLINEBACK
@@ -2554,18 +2551,15 @@ struct Sci_TextToFind {
SCI_GETCARETSTYLE
SCI_SETCARETWIDTH(int pixels)
SCI_GETCARETWIDTH
- SCI_SETHOTSPOTACTIVEFORE(bool useSetting,
- int colour)
+ SCI_SETHOTSPOTACTIVEFORE(bool useSetting, int colour)
SCI_GETHOTSPOTACTIVEFORE
- SCI_SETHOTSPOTACTIVEBACK(bool useSetting,
- int colour)
+ SCI_SETHOTSPOTACTIVEBACK(bool useSetting, int colour)
SCI_GETHOTSPOTACTIVEBACK
SCI_SETHOTSPOTACTIVEUNDERLINE(bool underline)
SCI_GETHOTSPOTACTIVEUNDERLINE
SCI_SETHOTSPOTSINGLELINE(bool singleLine)
SCI_GETHOTSPOTSINGLELINE
- SCI_SETCONTROLCHARSYMBOL(int
- symbol)
+ SCI_SETCONTROLCHARSYMBOL(int symbol)
SCI_GETCONTROLCHARSYMBOL
SCI_SETCARETSTICKY(int useCaretStickyBehaviour)
SCI_GETCARETSTICKY
@@ -2726,6 +2720,10 @@ struct Sci_TextToFind {
SCI_SETMARGINSENSITIVEN(int margin, bool
sensitive)
SCI_GETMARGINSENSITIVEN(int
+ margin)
+ SCI_SETMARGINCURSORN(int margin, int
+ cursor)
+ SCI_GETMARGINCURSORN(int
margin)
SCI_SETMARGINLEFT(<unused>, int
pixels)
@@ -2804,6 +2802,14 @@ struct Sci_TextToFind {
selection margins which make it easy to select ranges of lines. By default, all margins are
insensitive.
+ SCI_SETMARGINCURSORN(int margin, int
+ cursor)
+ SCI_GETMARGINCURSORN(int margin)
+ A reversed arrow cursor is normally shown over all margins. This may be changed to a normal arrow with
+ SCI_SETMARGINCURSORN(margin, SC_CURSORARROW)
or restored to a
+ reversed arrow with
+ SCI_SETMARGINCURSORN(margin, SC_CURSORREVERSEARROW)
.
+
SCI_SETMARGINLEFT(<unused>, int pixels)
SCI_GETMARGINLEFT
SCI_SETMARGINRIGHT(<unused>, int pixels)
@@ -2928,7 +2934,6 @@ struct Sci_TextToFind {
-
SCI_ANNOTATIONSETSTYLEOFFSET(int style)
SCI_ANNOTATIONGETSTYLEOFFSET
@@ -3199,7 +3204,7 @@ struct Sci_TextToFind {
There are 4 indentation guide views.
SC_IV_NONE turns the feature off but the other 3 states determine how far the guides appear on
- empty lines.
+ empty lines.
@@ -3227,8 +3232,8 @@ struct Sci_TextToFind {
This setting is good for most languages.
+
-
SCI_SETHIGHLIGHTGUIDE(int column)
SCI_GETHIGHLIGHTGUIDE
@@ -3445,8 +3450,8 @@ struct Sci_TextToFind {
is limited to pixmaps that use one character per pixel with no named colours.
The transparent colour may be named 'None'.
The data should be null terminated.
- Pixmaps use the SC_MARK_PIXMAP
marker symbol. You can find the full description of
- the XPM format here.
+ Pixmaps use the SC_MARK_PIXMAP
marker symbol. You can find descriptions of
+ the XPM format from here.
SCI_MARKERSYMBOLDEFINED(int markerNumber)
Returns the symbol defined for a markerNumber with SCI_MARKERDEFINE
@@ -3631,6 +3636,7 @@ struct Sci_TextToFind {
interior more transparent than the border. You can use
to control the alpha transparency value. The default alpha value is 30.
+
@@ -3640,8 +3646,7 @@ struct Sci_TextToFind {
SCI_INDICSETSTYLE(1, INDIC_TT);
SCI_INDICSETSTYLE(2, INDIC_PLAIN);
- SCI_INDICSETFORE(int indicatorNumber, int colour)
+
SCI_INDICSETFORE(int indicatorNumber, int colour)
SCI_INDICGETFORE(int indicatorNumber)
These two messages set and get the colour used to draw an indicator. The default indicator
colours are equivalent to:
@@ -3662,7 +3667,7 @@ struct Sci_TextToFind {
Drawing under text works only for modern indicators when
is enabled.
- Modern Indicators
+ Modern Indicators
Modern indicators are stored in a format similar to run length encoding which is efficient in both
speed and storage for sparse information.
@@ -3708,7 +3713,7 @@ struct Sci_TextToFind {
Can be used to iterate through the document to discover all the indicator positions.
- Style Byte Indicators (deprecated)
+ Style Byte Indicators (deprecated)
By default, Scintilla organizes the style byte associated with each text byte as 5 bits of
style information (for 32 styles) and 3 bits of indicator information for 3 independent
indicators so that, for example, syntax errors, deprecated names and bad indentation could all
@@ -3806,8 +3811,7 @@ struct Sci_TextToFind {
and
- .The list of words should be in sorted order. If set to ignore case mode with
, then
+ The list of words should be in sorted order. If set to ignore case mode with
@@ -3858,7 +3862,7 @@ struct Sci_TextToFind {
, then
strings are matched after being converted to upper case. One result of this is that the list
should be sorted with the punctuation characters '[', '\', ']', '^', '_', and '`' sorted after
letters.SCN_AUTOCSELECTION
notification
is used instead.
- The value is copied to the text
buffer, returning the length (not including the
+ The value is copied to the text
buffer, returning the length (not including the
terminating 0). If not found, an empty string is copied to the buffer and 0 is returned.
If the value argument is 0 then the length that should be allocated to store the value is
@@ -3866,7 +3870,7 @@ struct Sci_TextToFind {
SCI_AUTOCSETCANCELATSTART(bool cancel)
SCI_AUTOCGETCANCELATSTART
- The default behavior is for the list to be cancelled if the caret moves before the location it
+ The default behavior is for the list to be cancelled if the caret moves to the location it
was at when the list was displayed. By calling this message with a false
argument,
the list is not cancelled until the caret moves before the first character of the word being
completed.
@@ -4295,6 +4299,8 @@ struct Sci_TextToFind {
SCI_SELECTIONDUPLICATE
+ SCI_VERTICALCENTRECARET
+
@@ -4699,6 +4705,7 @@ sptr_t CallScintilla(unsigned int iMessage, uptr_t wParam, sptr_t lParam){
SCI_SETFOLDEXPANDED(int line, bool
expanded)
SCI_GETFOLDEXPANDED(int line)
+ SCI_CONTRACTEDFOLDNEXT(int lineStart)
SCI_TOGGLEFOLD(int line)
SCI_ENSUREVISIBLE(int line)
SCI_ENSUREVISIBLEENFORCEPOLICY(int
@@ -4849,6 +4856,13 @@ sptr_t CallScintilla(unsigned int iMessage, uptr_t wParam, sptr_t lParam){
until you had finished. See SciTEBase::FoldAll()
and
SciTEBase::Expand()
for examples of the use of these messages.
+ SCI_CONTRACTEDFOLDNEXT(int lineStart)
+ Search efficiently for lines that are contracted fold headers.
+ This is useful when saving the user's folding when switching documents or saving folding with a file.
+ The search starts at line number lineStart
and continues forwards to the end of the file.
+ lineStart
is returned if it is a contracted fold header otherwise the next contracted
+ fold header is returned. If there are no more contracted fold headers then -1 is returned.
+
SCI_ENSUREVISIBLE(int line)
SCI_ENSUREVISIBLEENFORCEPOLICY(int line)
A line may be hidden because more than one of its parent lines is contracted. Both these
@@ -4922,7 +4936,7 @@ sptr_t CallScintilla(unsigned int iMessage, uptr_t wParam, sptr_t lParam){
SCI_GETWRAPVISUALFLAGS
You can enable the drawing of visual flags to indicate a line is wrapped. Bits set in
wrapVisualFlags determine which visual flags are drawn.
-
+
@@ -4959,6 +4973,7 @@ sptr_t CallScintilla(unsigned int iMessage, uptr_t wParam, sptr_t lParam){
SCI_GETWRAPVISUALFLAGSLOCATION
You can set whether the visual flags to indicate a line is wrapped are drawn near the border or near the text.
Bits set in wrapVisualFlagsLocation set the location to near the text for the corresponding visual flag.
+
@@ -4989,13 +5004,13 @@ sptr_t CallScintilla(unsigned int iMessage, uptr_t wParam, sptr_t lParam){
-
SCI_SETWRAPINDENTMODE(int indentMode)
SCI_GETWRAPINDENTMODE
Wrapped sublines can be indented to the position of their first subline or one more indent level.
The default is SC_WRAPINDENT_FIXED
.
The modes are:
+
@@ -5027,7 +5042,6 @@ sptr_t CallScintilla(unsigned int iMessage, uptr_t wParam, sptr_t lParam){
-
SCI_SETWRAPSTARTINDENT(int indent)
SCI_GETWRAPSTARTINDENT
@@ -5089,7 +5103,6 @@ sptr_t CallScintilla(unsigned int iMessage, uptr_t wParam, sptr_t lParam){
-
SCI_SETPOSITIONCACHE(int size)
SCI_GETPOSITIONCACHE
@@ -5401,17 +5414,17 @@ sptr_t CallScintilla(unsigned int iMessage, uptr_t wParam, sptr_t lParam){
ILexer
-class ILexer {
-public:
+class ILexer {
+public:
virtual
int SCI_METHOD
Version()
const =
- 0;
+ 0;
virtual
void SCI_METHOD
Release()
-= 0;
+= 0;
virtual
const
char
@@ -5430,7 +5443,7 @@ SCI_METHOD PropertyNames()
const
char *val)
=
- 0;
+ 0;
virtual
const char
* SCI_METHOD DescribeWordListSets()
@@ -5443,7 +5456,7 @@ SCI_METHOD PropertyNames()
const
char *wl)
=
- 0;
+ 0;
virtual
void SCI_METHOD
Lex(unsigned
@@ -5455,7 +5468,7 @@ SCI_METHOD PropertyNames()
IDocument
*pAccess)
=
-0;
+0;
virtual
void SCI_METHOD
Fold(unsigned
@@ -5466,7 +5479,7 @@ SCI_METHOD PropertyNames()
IDocument
*pAccess)
=
-0;
+0;
virtual
void
* SCI_METHOD
@@ -5474,8 +5487,8 @@ SCI_METHOD PropertyNames()
operation,
void
*pointer)
-= 0;
-};
+= 0;
+};
@@ -5501,24 +5514,24 @@ invoked with the SCI_PRIVATELEXERCALL
API.
class IDocument
- {
-public:
+ {
+public:
virtual
int SCI_METHOD
Version()
const =
- 0;
+ 0;
virtual
void SCI_METHOD
SetErrorStatus(int
status)
=
-0;
+0;
virtual
int SCI_METHOD
Length()
const =
- 0;
+ 0;
virtual
void SCI_METHOD
GetCharRange(char
@@ -5528,64 +5541,64 @@ position,
int lengthRetrieve)
const
=
-0;
+0;
virtual
char SCI_METHOD
StyleAt(int
position)
const =
- 0;
+ 0;
virtual
int SCI_METHOD
LineFromPosition(int position)
const =
- 0;
+ 0;
virtual
int SCI_METHOD
LineStart(int line)
const =
- 0;
+ 0;
virtual
int SCI_METHOD
GetLevel(int line)
const =
-0;
+0;
virtual
int SCI_METHOD
SetLevel(int
line,
int level)
=
-0;
+0;
virtual
int SCI_METHOD
GetLineState(int
line)
const
= 0
-;
+;
virtual
int SCI_METHOD
SetLineState(int
line,
int state)
=
- 0;
+ 0;
virtual
void SCI_METHOD
StartStyling(int
position,
char mask)
=
- 0;
+ 0;
virtual bool
SCI_METHOD
SetStyleFor(int
length,
char style)
= 0
-;
+;
virtual
bool SCI_METHOD
SetStyles(int
@@ -5593,13 +5606,13 @@ position,
const char
*styles)
=
-0;
+0;
virtual void
SCI_METHOD
DecorationSetCurrentIndicator(int
indicator)
=
- 0;
+ 0;
virtual
void SCI_METHOD
DecorationFillRange(int
@@ -5608,27 +5621,27 @@ position,
int fillLength)
=
-0;
+0;
virtual
void SCI_METHOD
ChangeLexerState(int
start,
int end)
=
- 0;
+ 0;
virtual
int SCI_METHOD
CodePage()
const
= 0
-;
+;
virtual bool
SCI_METHOD
IsDBCSLeadByte(char
ch)
const =
- 0;
-};
+ 0;
+};
Scintilla tries to minimize the consequences of modifying text to
@@ -5668,9 +5681,10 @@ struct SCNotification {
int position;
// SCN_STYLENEEDED, SCN_DOUBLECLICK, SCN_MODIFIED, SCN_DWELLSTART,
// SCN_DWELLEND, SCN_CALLTIPCLICK,
- // SCN_HOTSPOTCLICK, SCN_HOTSPOTDOUBLECLICK
+ // SCN_HOTSPOTCLICK, SCN_HOTSPOTDOUBLECLICK, SCN_HOTSPOTRELEASECLICK
int ch; // SCN_CHARADDED, SCN_KEY
- int modifiers; // SCN_KEY, SCN_DOUBLECLICK, SCN_HOTSPOTCLICK, SCN_HOTSPOTDOUBLECLICK
+ int modifiers;
+ // SCN_KEY, SCN_DOUBLECLICK, SCN_HOTSPOTCLICK, SCN_HOTSPOTDOUBLECLICK, SCN_HOTSPOTRELEASECLICK
int modificationType; // SCN_MODIFIED
const char *text; // SCN_MODIFIED, SCN_USERLISTSELECTION, SCN_AUTOCSELECTION
int length; // SCN_MODIFIED
@@ -5685,6 +5699,9 @@ struct SCNotification {
int listType; // SCN_USERLISTSELECTION, SCN_AUTOCSELECTION
int x; // SCN_DWELLSTART, SCN_DWELLEND
int y; // SCN_DWELLSTART, SCN_DWELLEND
+ int token; // SCN_MODIFIED with SC_MOD_CONTAINER
+ int annotationLinesAdded; // SC_MOD_CHANGEANNOTATION
+ int updated; // SCN_UPDATEUI
};
@@ -5710,6 +5727,7 @@ struct SCNotification {
+
@@ -5784,13 +5802,59 @@ href="#SCI_POSITIONFROMLINE">SCI_POSITIONFROMLINE(lineNumber);
double click and the line
field is set to the line of the double click.
SCN_UPDATEUI
- Either the text or styling of the document has changed or the selection range has changed. Now
- would be a good time to update any container UI elements that depend on document or view state.
- This was previously called
because a common use is to check whether the
- caret is next to a brace and set highlights on this brace and its corresponding matching brace.
- This also replaces ,
- which is now deprecated.
+ Either the text or styling of the document has changed or the selection range or scroll position has changed.
+ Now would be a good time to update any container UI elements that depend on document or view state.
+ The updated
field is set to the bit set of things changed since the previous notiication.
+
+
+
+ Symbol
+
+ Value
+
+ Meaning
+
+
+
+
+
+
+ SC_UPDATE_CONTENT
+
+ 0x01
+
+ Contents, styling or markers have been changed.
+
+
+
+
+ SC_UPDATE_SELECTION
+
+ 0x02
+
+ Selection has been changed.
+
+
+
+
+ SC_UPDATE_V_SCROLL
+
+ 0x04
+
+ Scrolled vertically.
+
+
+
+
+ SC_UPDATE_H_SCROLL
+
+ 0x08
+
+ Scrolled horizontally.
+
+
+
+
SCN_MODIFIED
This notification is sent when the text or styling of the document changes or is about to
@@ -6341,12 +6405,14 @@ for line = lineStart to lineEnd do SCI_ENSUREVISIBLE(line) next
SCN_HOTSPOTCLICK
SCN_HOTSPOTDOUBLECLICK
+ SCN_HOTSPOTRELEASECLICK
These notifications are generated when the user clicks or double clicks on
text that is in a style with the hotspot attribute set.
This notification can be used to link to variable definitions or web pages.
The position
field is set the text position of the click or
double click and the modifiers
field set to the key modifiers
- held down in a similar manner to .
+ held down in a similar manner to SCN_KEY.
+ Only the state of the Ctrl key is reported for SCN_HOTSPOTRELEASECLICK
.
SCN_INDICATORCLICK
@@ -6410,11 +6476,11 @@ for line = lineStart to lineEnd do SCI_ENSUREVISIBLE(line) next
- GtkWidget *scintilla_new()
+
GtkWidget *scintilla_new()
Create a new Scintilla widget. The returned pointer can be added to a container and displayed in the same way as other
widgets.
- void scintilla_set_id(ScintillaObject *sci, uptr_t id)
+
void scintilla_set_id(ScintillaObject *sci, uptr_t id)
Set the control ID which will be used in the idFrom field of the NotifyHeader structure of all
notifications for this instance. When an application creates multiple Scintilla widgets, this allows
the source of each notification to be found. The value should be small, preferrably less than 16 bits,
@@ -6542,11 +6608,7 @@ EM_SETTARGETDEVICE
Scintilla_RegisterClasses
called. STATIC_BUILD
prevents compiling the
DllMain
function which will conflict with any DllMain
defined in your
code. Scintilla_RegisterClasses
takes the HINSTANCE
of your
- application and ensures that the "Scintilla" window class is registered. To make sure that the
- right pointing arrow cursor used in the margin is displayed by Scintilla add the
- scintilla/win32/Margin.cur
file to your application's resources with the ID
- IDC_MARGIN
which is defined in scintilla/win32/platfromRes.h
as
- 400.
+ application and ensures that the "Scintilla" window class is registered.
Ensuring lexers are linked into Scintilla
diff --git a/scintilla/doc/ScintillaDownload.html b/scintilla/doc/ScintillaDownload.html
index 7e2cc595..0ccb913e 100644
--- a/scintilla/doc/ScintillaDownload.html
+++ b/scintilla/doc/ScintillaDownload.html
@@ -25,9 +25,9 @@
-
+
Windows
-
+
GTK+/Linux
@@ -41,7 +41,7 @@
containing very few restrictions.
- Release 2.21
+ Release 2.25
Source Code
@@ -49,8 +49,8 @@
The source code package contains all of the source code for Scintilla but no binary
executable code and is available in
- - zip format (1160K) commonly used on Windows
- - tgz format (1080K) commonly used on Linux and compatible operating systems
+ - zip format (1200K) commonly used on Windows
+ - tgz format (1080K) commonly used on Linux and compatible operating systems
Instructions for building on both Windows and Linux are included in the readme file.
diff --git a/scintilla/doc/ScintillaHistory.html b/scintilla/doc/ScintillaHistory.html
index 036375c9..821393df 100644
--- a/scintilla/doc/ScintillaHistory.html
+++ b/scintilla/doc/ScintillaHistory.html
@@ -350,6 +350,24 @@
Toby Inkster
Eric Forgeot
Colomban Wendling
+
+ Neo
+ Jordan Russell
+ Farshid Lashkari
+ Sam Rawlins
+
+ Michael Mullin
+ Carlos SS
+ vim
+ Martial Demolins
+
+ Tino Weinkauf
+ Jérôme Laforge
+ Udo Lechner
+ Marco Falda
+
+ Dariusz Knociński
+ Ben Fisher
@@ -361,6 +379,336 @@
Icons Copyright(C) 1998 by Dean S. Jones
+
+ Release 2.25
+
+
+ -
+ Released 21 March 2011.
+
+ -
+ SparseState class makes it easier to write lexers which have to remember complex state between lines.
+
+ -
+ Visual Studio project (.dsp) files removed. The make files should be used instead as described in the README.
+
+ -
+ Modula 3 lexer added along with SciTE support.
+ Feature #3173374.
+
+ -
+ Asm, Basic, and D lexers add extra folding properties.
+
+ -
+ Raw string literals for C++0x supported in C++ lexer.
+
+ -
+ Triple-quoted strings used in Vala language supported in C++ lexer.
+ Feature #3177601.
+
+ -
+ The errorlist lexer used in SciTE's output pane colours lines that start with '<' as diff deletions.
+ Feature #3172878.
+
+ -
+ The Fortran lexer correctly folds type-bound procedures from Fortran 2003.
+
+ -
+ LPeg lexer support‎ improved in SciTE.
+
+ -
+ SciTE on Windows-64 fixes for menu localisation and Lua scripts.
+ Bug #3204502.
+
+ -
+ SciTE on Windows avoids locking folders when using the open or save dialogs.
+ Bug #1795484.
+
+ -
+ Diff lexer fixes problem where diffs of diffs producing lines that start with "----".
+ Bug #3197952.
+
+ -
+ Bug fixed when searching upwards in Chinese code page 936.
+ Bug #3176271.
+
+ -
+ On Cocoa, translucent drawing performed as on other platforms instead of 2.5 times less translucent.
+
+ -
+ Performance issue and potential bug fixed on GTK+ with caret line for long lines.
+
+
+
+ Release 2.24
+
+
+ -
+ Released 3 February 2011.
+
+ -
+ Fixed memory leak in GTK+ Cairo code.
+ Feature #3157655.
+
+ -
+ Insert Abbreviation dialog added to SciTE on GTK+.
+
+ -
+ SCN_UPDATEUI notifications received when window scrolled. An 'updated' bit mask indicates which
+ types of update have occurred from SC_UPDATE_SELECTION, SC_UPDATE_CONTENT, SC_UPDATE_H_SCROLL
+ or SC_UPDATE_V_SCROLL.
+ Feature #3125977.
+
+ -
+ On Windows, to ensure reverse arrow cursor matches platform default, it is now generated by
+ reflecting the platform arrow cursor.
+ Feature #3143968.
+
+ -
+ Can choose mouse cursor used in margins.
+ Feature #3161326.
+
+ -
+ On GTK+, SciTE sets a mime type of text/plain in its .desktop file so that it will appear in the shell context menu.
+ Feature #3137126.
+
+ -
+ Bash folder handles here docs.
+ Feature #3118223.
+
+ -
+ C++ folder adds fold.cpp.syntax.based, fold.cpp.comment.multiline, fold.cpp.explicit.start, fold.cpp.explicit.end,
+ and fold.cpp.explicit.anywhere properties to allow more control over folding and choice of explicit fold markers.
+
+ -
+ C++ lexer fixed to always handle single quote strings continued past a line end.
+ Bug #3150522.
+
+ -
+ Ruby folder handles here docs.
+ Feature #3118224.
+
+ -
+ SQL lexer allows '.' to be part of words.
+ Feature #3103129.
+
+ -
+ SQL folder handles case statements in more situations.
+ Feature #3135027.
+
+ -
+ SQL folder adds fold points inside expressions based on bracket structure.
+ Feature #3165488.
+
+ -
+ SQL folder drops fold.sql.exists property as 'exists' is handled automatically.
+ Bug #3164194.
+
+ -
+ SciTE only forwards properties to lexers when they have been explicitly set so the defaults set by lexers are used
+ rather than 0.
+
+ -
+ Mouse double click word selection chooses the word around the character under the mouse rather than
+ the inter-character position under the mouse. This makes double clicking select what the user is pointing
+ at and avoids selecting adjacent non-word characters.
+ Bug #3111174.
+
+ -
+ Fixed mouse double click to always perform word select, not line select.
+ Bug #3143635.
+
+ -
+ Right click cancels autocompletion.
+ Bug #3144531.
+
+ -
+ Fixed multiPaste to work when additionalSelectionTyping off.
+ Bug #3126221.
+
+ -
+ Fixed virtual space problems when text modified at caret.
+ Bug #3154986.
+
+ -
+ Fixed memory leak in lexer object code.
+ Bug #3133672.
+
+ -
+ Fixed SciTE on GTK+ search failure when using regular expression.
+ Bug #3156217.
+
+ -
+ Avoid unnecessary full window redraw for SCI_GOTOPOS.
+ Feature #3146650.
+
+ -
+ Avoid unnecessary redraw when indicator fill range makes no real change.
+
+
+
+ Release 2.23
+
+
+ -
+ Released 7 December 2010.
+
+ -
+ On GTK+ version 2.22 and later, drawing is performed with Cairo rather than GDK.
+ This is in preparation for GTK+ 3.0 which will no longer support GDK drawing.
+ The appearance of some elements will be different with Cairo as it is anti-aliased and uses sub-pixel positioning.
+ Cairo may be turned on for GTK+ versions before 2.22 by defining USE_CAIRO although this has not
+ been extensively tested.
+
+ -
+ New lexer a68k for Motorola 68000 assembler.
+ Feature #3101598.
+
+ -
+ Borland C++ is no longer supported for building Scintilla or SciTE on Windows.
+
+ -
+ Performance improved when creating large rectangular selections.
+
+ -
+ PHP folder recognizes #region and #endregion comments.
+ Feature #3101624.
+
+ -
+ SQL lexer has a lexer.sql.numbersign.comment option to turn off use of '#' comments
+ as these are a non-standard feature only available in some implementations.
+ Feature #3098071.
+
+ -
+ SQL folder recognizes case statements and understands the fold.at.else property.
+ Bug #3104091.
+ Bug #3107362.
+
+ -
+ SQL folder fixes bugs with end statements when fold.sql.only.begin=1.
+ Bug #3104091.
+
+ -
+ SciTE on Windows bug fixed with multi-line tab bar not adjusting correctly when maximizing and demaximizing.
+ Bug #3097517.
+
+ -
+ Crash fixed on GTK+ when Scintilla widget destroyed while it still has an outstanding style idle pending.
+
+ -
+ Bug fixed where searching backwards in DBCS text (code page 936 or similar) failed to find occurrences at the start of the line.
+ Bug #3103936.
+
+ -
+ SciTE on Windows supports Unicode file names when executing help applications with winhelp and htmlhelp subsystems.
+
+
+
+ Release 2.22
+
+
+ -
+ Released 27 October 2010.
+
+ -
+ SciTE includes support for integrating with Scintillua which allows lexers to be implemented in Lua as a
+ Parsing Expression Grammar (PEG).
+
+ -
+ Regular expressions allow use of '?' for non-greedy matches or to match 0 or 1 instances of an item.
+
+ -
+ SCI_CONTRACTEDFOLDNEXT added to allow rapid retrieval of folding state.
+
+ -
+ SCN_HOTSPOTRELEASECLICK notification added which is similar to SCN_HOTSPOTCLICK but occurs
+ when the mouse is released.
+ Feature #3082409.
+
+ -
+ Command added for centring current line in window.
+ Feature #3064696.
+
+ -
+ SciTE performance improved by not examining document for line ends when switching buffers and not
+ storing folds when folding turned off.
+
+ -
+ Bug fixed where scrolling to ensure the caret is visible did not take into account all pixels of the line.
+ Bug #3081721.
+
+ -
+ Bug fixed for autocompletion list overlapping text when WS_EX_CLIENTEDGE used.
+ Bug #3079778.
+
+ -
+ After autocompletion, the caret's X is updated.
+ Bug #3079114.
+
+ -
+ On Windows, default to the system caret blink time.
+ Feature #3079784.
+
+ -
+ PgUp/PgDn fixed to allow virtual space.
+ Bug #3077452.
+
+ -
+ Crash fixed when AddMark and AddMarkSet called with negative argument.
+ Bug #3075074.
+
+ -
+ Dwell notifications fixed so that they do not occur when the mouse is outside Scintilla.
+ Bug #3073481.
+
+ -
+ Bash lexer bug fixed for here docs starting with <<-.
+ Bug #3063822.
+
+ -
+ C++ lexer bug fixed for // comments that are continued onto a second line by a \.
+ Bug #3066031.
+
+ -
+ C++ lexer fixes wrong highlighting for float literals containing +/-.
+ Bug #3058924.
+
+ -
+ JavaScript lexer recognize regexes following return keyword.‎
+ Bug #3062287.
+
+ -
+ Ruby lexer handles % quoting better and treats range dots as operators in 1..2 and 1...2.
+ Ruby folder handles "if" keyword used as a modifier even when it is separated from the modified statement by an escaped new line.
+ Bug #2093767.
+ Bug #3058496.
+
+ -
+ Bug fixed where upwards search failed with DBCS code pages.
+ Bug #3065912.
+
+ -
+ SciTE has a default Lua startup script name distributed in SciTEGlobal.properties.
+ No error message is displayed if this file does not exist.
+
+ -
+ SciTE on Windows tab control height is calculated better.
+ Bug #2635702.
+
+ -
+ SciTE on Windows uses better themed check buttons in find and replace strips.
+
+ -
+ SciTE on Windows fixes bug with Find strip appearing along with Incremental Find strip.
+
+ -
+ SciTE setting find.close.on.find added to allow preventing the Find dialog from closing.
+
+ -
+ SciTE on Windows attempts to rerun commands that fail by prepending them with "cmd.exe /c".
+ This allows commands built in to the command processor like "dir" to run.
+
+
Release 2.21
diff --git a/scintilla/doc/ScintillaRelated.html b/scintilla/doc/ScintillaRelated.html
index 10d114db..fd9a4880 100644
--- a/scintilla/doc/ScintillaRelated.html
+++ b/scintilla/doc/ScintillaRelated.html
@@ -111,6 +111,10 @@
Projects using Scintilla
+
+ Coder's Studio
+ is an IDE for Assembly programming similar to Visual Studio 6.0.
+
Enterprise Architect
is a UML 2.1 analysis and design tool.
diff --git a/scintilla/doc/ScintillaToDo.html b/scintilla/doc/ScintillaToDo.html
index 13c5ee9f..972d95c4 100644
--- a/scintilla/doc/ScintillaToDo.html
+++ b/scintilla/doc/ScintillaToDo.html
@@ -87,8 +87,7 @@
Flow diagrams inside editor similar to
-
- GRASP.
+ GRASP.
A VCL component wrapper around Scintilla so it can be used with Delphi or
diff --git a/scintilla/doc/index.html b/scintilla/doc/index.html
index 49cd42cc..6fb23236 100644
--- a/scintilla/doc/index.html
+++ b/scintilla/doc/index.html
@@ -9,7 +9,7 @@
-
+