Christian Grasser a61b03ea88 Update Scintilla from v4.4.6 to v5.2.1 and add Lexilla v5.1.5
Update with https://www.scintilla.org/scintilla521.zip
            https://www.scintilla.org/lexilla515.zip

- fix setting to bring Scintilla::PositionCR from ScintillaStructures.h inline with Sci_Position.h Sci_PositionCR
- add workaround to enable lexer for searchResult
commented out SCI_SETILEXER call on searchResult to get one result which is correctly handled by the lexer,
added comment about the current problem with property @MarkingsStruct which seems to disappear after call to SCI_SETILEXER or CreateLexer
- corrected usage of ObjC lexer
- removed unnecessary filter stuff
- use own sections for scintilla and lexilla build targets and allow parallel builds
- as libscilex is no longer existing, changed to libscintilla
- adapt makefiles and cmake
- use VS2019
- started simple changes for createlexer adaptations, nullpointercheck missing on return of lexer name from deprecated LexerNameFromID -> undefined behaviour
- movement from id -> lexer name, mostly done via LexerNameFromID + switching off corresponding compiler warning
- changed to SCI_SETILEXER from SCI_SETLEXER, SCI_SETLEXERLANGUAGE needs to be corrected, see Scintilla5Migration.html
- just commented out: SCI_LOADLEXERLIBRARY

Fix #10504, close #11419
2022-03-27 17:12:53 +02:00

55 lines
2.1 KiB
Plaintext

{20}use{0} {16}v6{18};{0}
{2}# Normal single line comment{0}
{20}my{0} {22}Int{0} {23}$i{0} {18}={0} {16}0{18};{0}
{20}my{0} {22}Rat{0} {23}$r{0} {18}={0} {16}3.142{18};{0}
{20}my{0} {22}Str{0} {23}$s{0} {18}={0} {8}"Hello, world! \$i == {12}$i{8} and \$r == {12}$r{8}"{18};{0}
{20}say{0} {23}$s{18};{0}
{2}#`{3}{{
*** This is a multi-line comment ***
}}{0}
{20}my{0} {24}@array{0} {18}={0} {2}#`{3}[[ inline comment ]]{0} {9}<f fo foo food>{18};{0}
{20}my{0} {25}%hash{0} {18}={0} {18}({0} {21}AAA{0} {18}=>{0} {16}1{18},{0} {21}BBB{0} {18}=>{0} {16}2{0} {18});{0}
{20}say{0} {9}q[This back\slash stays]{18};{0}
{20}say{0} {9}q[This back\\slash stays]{18};{0} {2}# Identical output{0}
{20}say{0} {11}Q{15}:q{11}!Just a literal "\n" here!{18};{0}
{4}=begin pod
POD Documentation...
=end pod{0}
{20}say{0} {10}qq{15}:to{10}/END/{18};{0}
{7}A multi-line
string with interpolated vars: {12}$i{7}, {12}$r{7}
END{0}
{20}sub{0} {21}function{0} {18}{{0}
{20}return{0} {9}q{15}:to{9}/END/{18};{0}
{6}Here is
some multi-line
string
END{0}
{18}}{0}
{20}my{0} {23}$func{0} {18}={0} {26}&function{18};{0}
{20}say{0} {23}$func{18}();{0}
{19}grammar{0} {27}Calculator{0} {18}{{0}
{19}token{0} {21}TOP{0} {13}{ <calc-op> }{0}
{19}proto{0} {19}rule{0} {21}calc-op{0} {13}{*}{0}
{19}rule{0} {21}calc-op{15}:sym{18}<{21}add{18}>{0} {13}{ <num> '+' <num> }{0}
{19}rule{0} {21}calc-op{15}:sym{18}<{21}sub{18}>{0} {13}{ <num> '-' <num> }{0}
{19}token{0} {21}num{0} {13}{ \d+ }{0}
{18}}{0}
{19}class{0} {28}Calculations{0} {18}{{0}
{19}method{0} {21}TOP{0} {18}({23}$/{18}){0} {18}{{0} {19}make{0} {23}${18}<{23}calc-op{18}>.{21}made{18};{0} {18}}{0}
{19}method{0} {21}calc-op{15}:sym{18}<{21}add{18}>{0} {18}({23}$/{18}){0} {18}{{0} {21}make{0} {18}[+]{0} {23}${18}<{23}num{18}>;{0} {18}}{0}
{19}method{0} {21}calc-op{15}:sym{18}<{21}sub{18}>{0} {18}({23}$/{18}){0} {18}{{0} {21}make{0} {18}[-]{0} {23}${18}<{23}num{18}>;{0} {18}}{0}
{18}}{0}
{20}say{0} {21}Calculator{18}.{21}parse{18}({8}'2 + 3'{18},{0} {21}actions{0} {18}=>{0} {21}Calculations{18}).{21}made{18};{0}