A detailed description of how to write a lexer, including a discussion of folding. As such, its primary programming interface is through Windows messages.
The default alpha value for most features is SC_ALPHA_NOALPHA. Each byte in a Scintilla document is associated with a byte of styling information.
The combination of a character byte and a style byte is called a cell.
These parameters are integers that are large enough to hold pointers, and the return value is also an integer large enough to contain a pointer.
Although the commands only use the arguments described, because all messages have two arguments whether Scintilla uses them or not, it is strongly recommended that any unused arguments are set to 0.
Lengths measure the numbers of bytes, not the amount of characters in those bytes.
Positions within the Scintilla document refer to a character or the gap before that character.This restriction is for performance; if lines differed in height then calculations involving positioning of text would require the text to be styled first., Sci_Text Range *tr) → int SCI_ALLOCATE(int bytes) SCI_ADDTEXT(int length, const char *text) SCI_ADDSTYLEDTEXT(int length, cell *c) SCI_APPENDTEXT(int length, const char *text) SCI_INSERTTEXT(int pos, const char *text) SCI_CHANGEINSERTION(int length, const char *text) SCI_CLEARALL SCI_DELETERANGE(int start, int length Delete) SCI_CLEARDOCUMENTSTYLE SCI_GETCHARAT(int pos) → int SCI_GETSTYLEAT(int pos) → int SCI_GETSTYLEDTEXT(, const char *text) This replaces all the text in the document with the zero terminated text string you pass in.The first character in a document is 0, the second 1 and so on. There are places where the caret can not go where two character bytes make up one character.This occurs when a DBCS character from a language like Japanese is included in the document or when line ends are marked with the CP/M standard of a carriage return followed by a line feed.SCI_SETSAVEPOINT This message tells Scintilla that the current state of the document is unmodified.