diff options
Diffstat (limited to 'lexilla/test/examples')
66 files changed, 0 insertions, 2313 deletions
diff --git a/lexilla/test/examples/batch/SciTE.properties b/lexilla/test/examples/batch/SciTE.properties deleted file mode 100644 index c3963bd1e..000000000 --- a/lexilla/test/examples/batch/SciTE.properties +++ /dev/null @@ -1,3 +0,0 @@ -lexer.*.bat=batch -keywords.*.bat=call defined do echo else errorlevel exist exit for goto if in not set - diff --git a/lexilla/test/examples/batch/x.bat b/lexilla/test/examples/batch/x.bat deleted file mode 100644 index 916efd36a..000000000 --- a/lexilla/test/examples/batch/x.bat +++ /dev/null @@ -1,39 +0,0 @@ -rem comment=1 -rem 'echo' is word=2, 'a' is default=0 -echo a -rem label=3 -:START -rem '@' is hide=4 -@echo b -rem 'gcc' is external command=5 -gcc --version -rem '%PATH%' is variable=6 -echo %PATH% -echo %ProgramFiles(x86)% -rem operator=7 '=' -@set Q=A - -::comment=1 - -:: Bug 1624: this construct produced inconsistent brackets in the past -if ERRORLEVEL 2 goto END -@if exist a ( -echo exists -) else ( -echo not -) - -FOR /L %%G IN (2,1,4) DO (echo %%G) - -:: Bug 1997: keywords not recognized when preceded by '(' -IF NOT DEFINED var (SET var=1) - -:: Bug 2065: keywords not recognized when followed by ')' -@if exist a ( exit) - -:: Bug: with \r or \n, 'command' is seen as continuation -echo word ^ -1 -command - -:END diff --git a/lexilla/test/examples/batch/x.bat.styled b/lexilla/test/examples/batch/x.bat.styled deleted file mode 100644 index 02d1ffcc8..000000000 --- a/lexilla/test/examples/batch/x.bat.styled +++ /dev/null @@ -1,39 +0,0 @@ -{1}rem comment=1 -rem 'echo' is word=2, 'a' is default=0 -{2}echo{0} a -{1}rem label=3 -{3}:START -{1}rem '@' is hide=4 -{4}@{2}echo{0} b -{1}rem 'gcc' is external command=5 -{5}gcc{0} --version -{1}rem '%PATH%' is variable=6 -{2}echo{0} {6}%PATH%{0} -{2}echo{0} {6}%ProgramFiles(x86)%{0} -{1}rem operator=7 '=' -{4}@{2}set{0} Q{7}={0}A - -{1}::comment=1 -{0} -{1}:: Bug 1624: this construct produced inconsistent brackets in the past -{2}if ERRORLEVEL{0} 2{2} goto{0} END -{4}@{2}if exist{0} a ( -{2}echo{0} exists -){2} else{0} ( -{2}echo{0} not -) - -{2}FOR{0} /L {6}%%G{2} IN{0} (2,1,4){2} DO{0} ({2}echo{0} {6}%%G{0}) - -{1}:: Bug 1997: keywords not recognized when preceded by '(' -{2}IF NOT DEFINED{0} var ({2}SET{0} var{7}={0}1) - -{1}:: Bug 2065: keywords not recognized when followed by ')' -{4}@{2}if exist{0} a ({2} exit{0}) - -{1}:: Bug: with \r or \n, 'command' is seen as continuation -{2}echo{0} word ^ -1 -{5}command{0} - -{3}:END diff --git a/lexilla/test/examples/cpp/SciTE.properties b/lexilla/test/examples/cpp/SciTE.properties deleted file mode 100644 index ae3a6e95b..000000000 --- a/lexilla/test/examples/cpp/SciTE.properties +++ /dev/null @@ -1,5 +0,0 @@ -lexer.*.cxx=cpp -keywords.*.cxx=int let -keywords2.*.cxx= -lexer.cpp.track.preprocessor=1 -lexer.cpp.escape.sequence=1 diff --git a/lexilla/test/examples/cpp/x.cxx b/lexilla/test/examples/cpp/x.cxx deleted file mode 100644 index c1f052882..000000000 --- a/lexilla/test/examples/cpp/x.cxx +++ /dev/null @@ -1,27 +0,0 @@ -// A demonstration program -#include <stdio.h> -#if 0 /* */ -#define DUMMY() \ - if (1); -#endif - -#define M\ - -\ - -int main() { - double x[] = {3.14159,6.02e23,1.6e-19,1.0+1}; - int y[] = {75,0113,0x4b}; - printf("hello world %d %g\n", y[0], x[0]); - - // JavaScript regular expression (14) tests - let a = /a/; - let b = /[a-z]+/gi; - - // Escape sequence (27) tests - printf("\'\"\?\\\a\b\f\n\r\t\v \P"); - printf("\0a \013a \019"); - printf("\x013ac \xdz"); - printf("\ua34df \uz"); - printf("\Ua34df7833 \Uz"); -} diff --git a/lexilla/test/examples/cpp/x.cxx.styled b/lexilla/test/examples/cpp/x.cxx.styled deleted file mode 100644 index e4241eba2..000000000 --- a/lexilla/test/examples/cpp/x.cxx.styled +++ /dev/null @@ -1,27 +0,0 @@ -{2}// A demonstration program -{9}#include <stdio.h> -#if 0 {23}/* */{9} -{73}#define DUMMY() \ - if (1); -{9}#endif -{0} -{9}#define M\ - -{0}\ - -{5}int{0} {11}main{10}(){0} {10}{{0} - {11}double{0} {11}x{10}[]{0} {10}={0} {10}{{4}3.14159{10},{4}6.02e23{10},{4}1.6e-19{10},{4}1.0{10}+{4}1{10}};{0} - {5}int{0} {11}y{10}[]{0} {10}={0} {10}{{4}75{10},{4}0113{10},{4}0x4b{10}};{0} - {11}printf{10}({6}"hello world %d %g{27}\n{6}"{10},{0} {11}y{10}[{4}0{10}],{0} {11}x{10}[{4}0{10}]);{0} - - {2}// JavaScript regular expression (14) tests -{0} {5}let{0} {11}a{0} {10}={0} {14}/a/{10};{0} - {5}let{0} {11}b{0} {10}={0} {14}/[a-z]+/gi{10};{0} - - {2}// Escape sequence (27) tests -{0} {11}printf{10}({6}"{27}\'\"\?\\\a\b\f\n\r\t\v{6} {27}\P{6}"{10});{0} - {11}printf{10}({6}"{27}\0{6}a {27}\013{6}a {27}\01{6}9"{10});{0} - {11}printf{10}({6}"{27}\x013a{6}c {27}\xd{6}z"{10});{0} - {11}printf{10}({6}"{27}\ua34d{6}f {27}\u{6}z"{10});{0} - {11}printf{10}({6}"{27}\Ua34df783{6}3 {27}\U{6}z"{10});{0} -{10}}{0} diff --git a/lexilla/test/examples/d/SciTE.properties b/lexilla/test/examples/d/SciTE.properties deleted file mode 100644 index 5db047ab5..000000000 --- a/lexilla/test/examples/d/SciTE.properties +++ /dev/null @@ -1,9 +0,0 @@ -lexer.*.d=d -keywords.*.d=keyword1 -keywords2.*.d=keyword2 -keywords3.*.d= -keywords4.*.d=keyword4 -keywords5.*.d=keyword5 -keywords6.*.d=keyword6 -keywords7.*.d=keyword7 - diff --git a/lexilla/test/examples/d/x.d b/lexilla/test/examples/d/x.d deleted file mode 100644 index 617aa38a1..000000000 --- a/lexilla/test/examples/d/x.d +++ /dev/null @@ -1,47 +0,0 @@ -$ -// /++ +/ doccomments are not yet supported -/* */ -/** */ -/// drdr -/+ /+ +/ +/ -//keyword test -keyword1 -keyword2 -keyword4 -keyword5 -keyword6 -keyword7 -//unicode identifier test -вапёasdÓΘΣαԷԸՑהכ拉麺とひシマイ단결을 -//strings test -'s -' -w's'w -"multiline - string"w -e"zz"e -r"asd\"e -r"multiline - string"c -r`asd\`e -`multiline - string`d -x"023 abc"e -x"023 - abc"w -//numbers test -a[3..4]=3 -2.stringof -2.0.stringof -2. -2.2e+2 -2.2e-2 -.2e+2 -.2 -2e+2 -0x2e+2 -0x2ep+10 -,.2.stringof, - -end - diff --git a/lexilla/test/examples/d/x.d.styled b/lexilla/test/examples/d/x.d.styled deleted file mode 100644 index 32e4556dd..000000000 --- a/lexilla/test/examples/d/x.d.styled +++ /dev/null @@ -1,47 +0,0 @@ -{14}${0} -{2}// /++ +/ doccomments are not yet supported -{1}/* */{0} -{3}/** */{0} -{15}/// drdr -{4}/+ /+ +/ +/{0} -{2}//keyword test -{6}keyword1{0} -{7}keyword2{0} -{9}keyword4{0} -{20}keyword5{0} -{21}keyword6{0} -{22}keyword7{0} -{2}//unicode identifier test -{14}вапёasdÓΘΣαԷԸՑהכ拉麺とひシマイ단결을{0} -{2}//strings test -{11}'s -' -{14}w{12}'s'{14}w{0} -{10}"multiline - string"w{0} -{14}e{10}"zz"{14}e{0} -{19}r"asd\"{14}e{0} -{19}r"multiline - string"c{0} -{14}r{18}`asd\`{14}e{0} -{18}`multiline - string`d{0} -{19}x"023 abc"{14}e{0} -{19}x"023 - abc"w{0} -{2}//numbers test -{14}a{13}[{5}3{13}..{5}4{13}]={5}3{0} -{5}2.stringof{0} -{5}2.0{13}.{14}stringof{0} -{5}2.{0} -{5}2.2e+2{0} -{5}2.2e-2{0} -{5}.2e+2{0} -{5}.2{0} -{5}2e+2{0} -{5}0x2e{13}+{5}2{0} -{5}0x2ep+10{0} -{13},{5}.2{13}.{14}stringof{13},{0} - -{14}end{0} - diff --git a/lexilla/test/examples/errorlist/AllStyles.err b/lexilla/test/examples/errorlist/AllStyles.err deleted file mode 100644 index b0c8046c2..000000000 --- a/lexilla/test/examples/errorlist/AllStyles.err +++ /dev/null @@ -1,107 +0,0 @@ -Default 0 -Some text in default - - -Python Error 1 - File "x.err", line 2 - - -Gcc Error 2, Find In Files Match 21 -ScintillaGTKAccessible.cxx:153:13: warning: Deprecated pre-processor symbol, replace with - - -Microsoft Error 3 -LexErrorList.cxx(15): fatal error C1083: Cannot open include file: 'ILexer.h': No such file or directory - - -Command 4 ->pwd - - -Borland Error 5 -Error E2378 oddEven.c 16: For statement missing ; in function main() - - -Perl Error 6 -Bareword found where operator expected at LexMMIXAL.cxx line 1, near "// Scintilla" - - -DotNET Traceback 7 - at ExceptionTrace.Program.f4() in C:\Ivan\dev\exp\ExceptionTrace\Program.cs:line 18 - - -Lua Error 8 -last token read: `result' at line 40 in file `Test.lua' - - -Ctags 9 -IsAWordChar LexMMIXAL.cxx /^static inline bool IsAWordChar(const int ch) {$/;" f file: - - -Diff Changed ! 10 -! GdkColor white = { 0, 0xFFFF, 0xFFFF, 0xFFFF}; - - -Diff Addition + 11 -+ <PlatformToolset>v142</PlatformToolset> - - -Diff Deletion - 12 -- <PlatformToolset>v141</PlatformToolset> - - -Diff Message --- 13 ---- a/win32/SciTE.vcxproj Fri Jan 31 12:23:51 2020 +1100 - - -PHP error 14 -Fatal error: Call to undefined function: foo() in example.php on line 11 - - -Essential Lahey Fortran 90 Error 15 -Line 11, file c:\fortran90\codigo\demo.f90 - - -Intel Fortran Compiler Error 16 -Error 71 at (17:teste.f90) : The program unit has no name - - -Intel Fortran Compiler v8.0 Error 17 -fortcom: Error: shf.f90, line 5602: This name does not have ... - - -Absoft Pro Fortran 90 Error 18 -cf90-113 f90fe: ERROR SHF3D, File = shf.f90, Line = 1101, Column = 19 - - -HTML Tidy 19 -line 8 column 1 - Error: unexpected </head> in <meta> - - -Java Runtime Stack Trace 20 - at MethodName>(FileName.java:33) - - -GCC Include Path 22 -In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37, - - -GCC Pointer 25 - 236 | void gtk_type_init (GTypeDebugFlags debug_flags); - | ^ - - -Escape Sequence 23 -[K - - -Escape Sequence Unknown 24 -[1n - - -Escape Sequence Colour 40 -[0mColour 0 is 40 - - -Escape Sequence Colour 41 -[31mColour 1 is 41 diff --git a/lexilla/test/examples/errorlist/AllStyles.err.styled b/lexilla/test/examples/errorlist/AllStyles.err.styled deleted file mode 100644 index fe89ef6bc..000000000 --- a/lexilla/test/examples/errorlist/AllStyles.err.styled +++ /dev/null @@ -1,107 +0,0 @@ -{0}Default 0 -Some text in default - - -Python Error 1 -{1} File "x.err", line 2 -{0} - -Gcc Error 2, Find In Files Match 21 -{2}ScintillaGTKAccessible.cxx:153:13:{21} warning: Deprecated pre-processor symbol, replace with -{0} - -Microsoft Error 3 -{3}LexErrorList.cxx(15): fatal error C1083: Cannot open include file: 'ILexer.h': No such file or directory -{0} - -Command 4 -{4}>pwd -{0} - -Borland Error 5 -{5}Error E2378 oddEven.c 16: For statement missing ; in function main() -{0} - -Perl Error 6 -{6}Bareword found where operator expected at LexMMIXAL.cxx line 1, near "// Scintilla" -{0} - -DotNET Traceback 7 -{7} at ExceptionTrace.Program.f4() in C:\Ivan\dev\exp\ExceptionTrace\Program.cs:line 18 -{0} - -Lua Error 8 -{8}last token read: `result' at line 40 in file `Test.lua' -{0} - -Ctags 9 -{9}IsAWordChar LexMMIXAL.cxx /^static inline bool IsAWordChar(const int ch) {$/;" f file: -{0} - -Diff Changed ! 10 -{10}! GdkColor white = { 0, 0xFFFF, 0xFFFF, 0xFFFF}; -{0} - -Diff Addition + 11 -{11}+ <PlatformToolset>v142</PlatformToolset> -{0} - -Diff Deletion - 12 -{12}- <PlatformToolset>v141</PlatformToolset> -{0} - -Diff Message --- 13 -{13}--- a/win32/SciTE.vcxproj Fri Jan 31 12:23:51 2020 +1100 -{0} - -PHP error 14 -{14}Fatal error: Call to undefined function: foo() in example.php on line 11 -{0} - -Essential Lahey Fortran 90 Error 15 -{15}Line 11, file c:\fortran90\codigo\demo.f90 -{0} - -Intel Fortran Compiler Error 16 -{16}Error 71 at (17:teste.f90) : The program unit has no name -{0} - -Intel Fortran Compiler v8.0 Error 17 -{17}fortcom: Error: shf.f90, line 5602: This name does not have ... -{0} - -Absoft Pro Fortran 90 Error 18 -{18}cf90-113 f90fe: ERROR SHF3D, File = shf.f90, Line = 1101, Column = 19 -{0} - -HTML Tidy 19 -{19}line 8 column 1 - Error: unexpected </head> in <meta> -{0} - -Java Runtime Stack Trace 20 -{20} at MethodName>(FileName.java:33) -{0} - -GCC Include Path 22 -{22}In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37, -{0} - -GCC Pointer 25 -{25} 236 | void gtk_type_init (GTypeDebugFlags debug_flags); - | ^ -{0} - -Escape Sequence 23 -{23}[K{0} - - -Escape Sequence Unknown 24 -{24}[1n{0} - - -Escape Sequence Colour 40 -{23}[0m{40}Colour 0 is 40 -{0} - -Escape Sequence Colour 41 -{23}[31m{41}Colour 1 is 41 diff --git a/lexilla/test/examples/errorlist/SciTE.properties b/lexilla/test/examples/errorlist/SciTE.properties deleted file mode 100644 index f9e4a20d3..000000000 --- a/lexilla/test/examples/errorlist/SciTE.properties +++ /dev/null @@ -1,5 +0,0 @@ -lexer.*.err=errorlist -lexer.errorlist.value.separate=1 -lexer.errorlist.escape.sequences=1 -style.errorlist.23=fore:#000000,back:#FFFFFF,$(error.background) -style.errorlist.25=fore:#CF008F,$(font.monospace.small) diff --git a/lexilla/test/examples/hypertext/SciTE.properties b/lexilla/test/examples/hypertext/SciTE.properties deleted file mode 100644 index 9d34ee95a..000000000 --- a/lexilla/test/examples/hypertext/SciTE.properties +++ /dev/null @@ -1,6 +0,0 @@ -lexer.*=hypertext -keywords.*=b body content head href html link meta \ -name rel script strong title type xmlns -keywords2.*=function -keywords3.*=sub - diff --git a/lexilla/test/examples/hypertext/apostophe.php b/lexilla/test/examples/hypertext/apostophe.php deleted file mode 100644 index ade729bfa..000000000 --- a/lexilla/test/examples/hypertext/apostophe.php +++ /dev/null @@ -1,11 +0,0 @@ -<?php -# Test that currently fails as comment style not started in a number. -# line-comment -// line-comment -/* comment */ -$foo = 0#comment -$foo = 0//comment -$foo = 0/*'*/; -?> - -<br /> diff --git a/lexilla/test/examples/hypertext/apostophe.php.styled b/lexilla/test/examples/hypertext/apostophe.php.styled deleted file mode 100644 index 0c27ab50c..000000000 --- a/lexilla/test/examples/hypertext/apostophe.php.styled +++ /dev/null @@ -1,11 +0,0 @@ -{18}<?php{118} -{125}# Test that currently fails as comment style not started in a number.{118} -{125}# line-comment{118} -{125}// line-comment{118} -{124}/* comment */{118} -{123}$foo{118} {127}={118} {122}0{118}#comment -{123}$foo{118} {127}={118} {122}0{127}//{118}comment -{123}$foo{118} {127}={118} {122}0{127}/*{120}'*/; -?> - -<br /> diff --git a/lexilla/test/examples/hypertext/x.asp b/lexilla/test/examples/hypertext/x.asp deleted file mode 100644 index a78acdc34..000000000 --- a/lexilla/test/examples/hypertext/x.asp +++ /dev/null @@ -1,12 +0,0 @@ -<%@language=javas%> -<% -#include -function x() { -} -%> -<%@language=vbscript%> -<% -sub x 'comment -%> -<head> -<body></body> diff --git a/lexilla/test/examples/hypertext/x.asp.styled b/lexilla/test/examples/hypertext/x.asp.styled deleted file mode 100644 index 920c6380d..000000000 --- a/lexilla/test/examples/hypertext/x.asp.styled +++ /dev/null @@ -1,12 +0,0 @@ -{15}<%@{16}language=javas{15}%>{0} -{15}<%{56} -#{61}include{56} -{62}function{56} {61}x{65}(){56} {65}{{56} -{65}}{56} -{15}%>{0} -{15}<%@{16}language=vbscript{15}%>{0} -{15}<%{81} -{84}sub{81} {86}x{81} {82}'comment {81} -{15}%>{0} -{1}<head>{0} -{1}<body></body>{0} diff --git a/lexilla/test/examples/hypertext/x.html b/lexilla/test/examples/hypertext/x.html deleted file mode 100644 index caebcf41a..000000000 --- a/lexilla/test/examples/hypertext/x.html +++ /dev/null @@ -1,12 +0,0 @@ -<html xmlns="http://www.w3.org/1999/xhtml"> -<script type="text/javascript"> -var b = /abc/i.test('abc'); -'x\ -</t>' -</script> -<head> - <meta name="Date.Modified" content="20010515" /> - <title>SinkWorld - Portability</title> - <unknown>SinkWorld - Portability</unknown> - <link rel="stylesheet" type="text/css" href="SW.css"> -</head> diff --git a/lexilla/test/examples/hypertext/x.html.styled b/lexilla/test/examples/hypertext/x.html.styled deleted file mode 100644 index 3e50a1147..000000000 --- a/lexilla/test/examples/hypertext/x.html.styled +++ /dev/null @@ -1,12 +0,0 @@ -{1}<html{8} {3}xmlns{8}={6}"http://www.w3.org/1999/xhtml"{1}>{0} -{1}<script{8} {3}type{8}={6}"text/javascript"{1}>{40} -{46}var{41} {46}b{41} {50}={41} {52}/abc/i{46}.test{50}({49}'abc'{50});{41} -{49}'x\ -</t>'{41} -{1}</script>{0} -{1}<head>{0} - {1}<meta{8} {3}name{8}={6}"Date.Modified"{8} {3}content{8}={6}"20010515"{8} {11}/>{0} - {1}<title>{0}SinkWorld - Portability{1}</title>{0} - {2}<unknown>{0}SinkWorld - Portability{2}</unknown>{0} - {1}<link{8} {3}rel{8}={6}"stylesheet"{8} {3}type{8}={6}"text/css"{8} {3}href{8}={6}"SW.css"{1}>{0} -{1}</head>{0} diff --git a/lexilla/test/examples/hypertext/x.php b/lexilla/test/examples/hypertext/x.php deleted file mode 100644 index bc7302d85..000000000 --- a/lexilla/test/examples/hypertext/x.php +++ /dev/null @@ -1,6 +0,0 @@ -<head> <!-- About to script --> -<?php -echo "<!-- -->\n"; -/* ?> */ -?> -<strong>for</strong><b>if</b> diff --git a/lexilla/test/examples/hypertext/x.php.styled b/lexilla/test/examples/hypertext/x.php.styled deleted file mode 100644 index fb90ba06e..000000000 --- a/lexilla/test/examples/hypertext/x.php.styled +++ /dev/null @@ -1,6 +0,0 @@ -{1}<head>{0} {9}<!-- About to script -->{0} -{18}<?php{118} -echo {119}"<!-- -->\n"{127};{118} -{124}/* ?> */{118} -{18}?>{0} -{1}<strong>{0}for{1}</strong><b>{0}if{1}</b>{0} diff --git a/lexilla/test/examples/latex/AllStyles.tex b/lexilla/test/examples/latex/AllStyles.tex deleted file mode 100644 index 066a308e5..000000000 --- a/lexilla/test/examples/latex/AllStyles.tex +++ /dev/null @@ -1,47 +0,0 @@ -% Enumerate all styles: 0 to 12 -% Not a valid laTeX file as entities are unbalanced and not semantically correct -% comment=4 - -% whitespace=0 -text % - -% command=1 -\documentclass - -% tag=2 -\begin{document} - -% tag closing=5 -\end{document} - -% math=3 -\begin{math} -E &= mc^2 -\end{math} - -% math block=6 -\begin{align} -E &= mc^2 -\end{align} - -% comment block=7 -\begin{comment} -A block comment -\end{comment} - -% verbatim=8 -\begin{verbatim} -puts $foo -\end{verbatim} - -% short command=9 -\(\) - -% special=10 -\# - -% command optional argument=11 -\x[12pt] - -% error=12 -\ diff --git a/lexilla/test/examples/latex/AllStyles.tex.styled b/lexilla/test/examples/latex/AllStyles.tex.styled deleted file mode 100644 index bed7ff5df..000000000 --- a/lexilla/test/examples/latex/AllStyles.tex.styled +++ /dev/null @@ -1,47 +0,0 @@ -{4}% Enumerate all styles: 0 to 12{0} -{4}% Not a valid laTeX file as entities are unbalanced and not semantically correct{0} -{4}% comment=4{0} - -{4}% whitespace=0{0} -text {4}%{0} - -{4}% command=1{0} -{1}\documentclass{0} - -{4}% tag=2{0} -{1}\begin{2}{document}{0} - -{4}% tag closing=5{0} -{1}\end{5}{document}{0} - -{4}% math=3{0} -{1}\begin{2}{math}{3} -E &= mc^2 -{1}\end{5}{math}{0} - -{4}% math block=6{0} -{1}\begin{2}{align}{6} -E &= mc^2 -{1}\end{5}{align}{0} - -{4}% comment block=7{0} -{1}\begin{2}{comment}{7} -A block comment -{1}\end{5}{comment}{0} - -{4}% verbatim=8{0} -{1}\begin{2}{verbatim}{8} -puts $foo -{1}\end{5}{verbatim}{0} - -{4}% short command=9{0} -{9}\(\){0} - -{4}% special=10{0} -{10}\#{0} - -{4}% command optional argument=11{0} -{1}\x{11}[12pt]{0} - -{4}% error=12{0} -{12}\{0} diff --git a/lexilla/test/examples/latex/Feature1358.tex b/lexilla/test/examples/latex/Feature1358.tex deleted file mode 100644 index 73f27b83c..000000000 --- a/lexilla/test/examples/latex/Feature1358.tex +++ /dev/null @@ -1,10 +0,0 @@ -\begin{lstlisting}[language=make] -# If no BOARD is found in the environment, use this default: -BOARD ?= bluepill - -# To use chinese st-link v2 and ch340 dongle with bluepill -ifeq ($(BOARD),bluepill) -STLINK_VERSION=2 -PORT_LINUX=/dev/ttyUSB0 -endif -\end{lstlisting} diff --git a/lexilla/test/examples/latex/Feature1358.tex.styled b/lexilla/test/examples/latex/Feature1358.tex.styled deleted file mode 100644 index e753ea14d..000000000 --- a/lexilla/test/examples/latex/Feature1358.tex.styled +++ /dev/null @@ -1,10 +0,0 @@ -{1}\begin{2}{lstlisting}{8}[language=make] -# If no BOARD is found in the environment, use this default: -BOARD ?= bluepill - -# To use chinese st-link v2 and ch340 dongle with bluepill -ifeq ($(BOARD),bluepill) -STLINK_VERSION=2 -PORT_LINUX=/dev/ttyUSB0 -endif -{1}\end{5}{lstlisting}{0} diff --git a/lexilla/test/examples/latex/SciTE.properties b/lexilla/test/examples/latex/SciTE.properties deleted file mode 100644 index 0b81c1199..000000000 --- a/lexilla/test/examples/latex/SciTE.properties +++ /dev/null @@ -1 +0,0 @@ -lexer.*.tex=latex diff --git a/lexilla/test/examples/lua/SciTE.properties b/lexilla/test/examples/lua/SciTE.properties deleted file mode 100644 index ae8c7ab91..000000000 --- a/lexilla/test/examples/lua/SciTE.properties +++ /dev/null @@ -1,2 +0,0 @@ -lexer.*.lua=lua -keywords.*.lua=function end diff --git a/lexilla/test/examples/lua/x.lua b/lexilla/test/examples/lua/x.lua deleted file mode 100644 index cfa3537b5..000000000 --- a/lexilla/test/examples/lua/x.lua +++ /dev/null @@ -1,7 +0,0 @@ ---[[ coding:UTF-8 -comment ]] -function first() -::開:: - -- Comment - func(SCI_ANNOTATIONSETTEXT, 'a', 0, "LINE1") -end diff --git a/lexilla/test/examples/lua/x.lua.styled b/lexilla/test/examples/lua/x.lua.styled deleted file mode 100644 index 0c8f76fa4..000000000 --- a/lexilla/test/examples/lua/x.lua.styled +++ /dev/null @@ -1,7 +0,0 @@ -{1}--[[ coding:UTF-8 -comment ]]{0} -{5}function{0} {11}first{10}(){0} -{20}::開::{0} - {2}-- Comment -{0} {11}func{10}({11}SCI_ANNOTATIONSETTEXT{10},{0} {7}'a'{10},{0} {4}0{10},{0} {6}"LINE1"{10}){0} -{5}end{0} diff --git a/lexilla/test/examples/makefile/SciTE.properties b/lexilla/test/examples/makefile/SciTE.properties deleted file mode 100644 index ddc87920e..000000000 --- a/lexilla/test/examples/makefile/SciTE.properties +++ /dev/null @@ -1 +0,0 @@ -lexer.*.mak=makefile diff --git a/lexilla/test/examples/makefile/x.mak b/lexilla/test/examples/makefile/x.mak deleted file mode 100644 index d5bdb83e9..000000000 --- a/lexilla/test/examples/makefile/x.mak +++ /dev/null @@ -1,16 +0,0 @@ -# '# comment' comment=1 -# comment - -# '.SUFFIXES' target=5, ':' operator=4 -.SUFFIXES: - -# 'LD' identifier=3, '=' operator=4, 'link' default=0 -LD=link - -# '!IFDEF DEBUG' preprocessor=2 -!IFDEF DEBUG - -# '$(' ID EOL=9 -X=$( - -# End of file diff --git a/lexilla/test/examples/makefile/x.mak.styled b/lexilla/test/examples/makefile/x.mak.styled deleted file mode 100644 index 752ed5884..000000000 --- a/lexilla/test/examples/makefile/x.mak.styled +++ /dev/null @@ -1,16 +0,0 @@ -{1}# '# comment' comment=1 -# comment -{0} -{1}# '.SUFFIXES' target=5, ':' operator=4 -{5}.SUFFIXES{4}:{0} - -{1}# 'LD' identifier=3, '=' operator=4, 'link' default=0 -{3}LD{4}={0}link - -{1}# '!IFDEF DEBUG' preprocessor=2 -{2}!IFDEF DEBUG -{0} -{1}# '$(' ID EOL=9 -{3}X{4}={9}$( -{0} -{1}# End of file diff --git a/lexilla/test/examples/mmixal/AllStyles.mms b/lexilla/test/examples/mmixal/AllStyles.mms deleted file mode 100644 index 54de34be4..000000000 --- a/lexilla/test/examples/mmixal/AllStyles.mms +++ /dev/null @@ -1,74 +0,0 @@ -% Demonstrate each possible style. Does not make sense as code. - -% A comment 1 -% Comment - - -% Whitespace 0 - - - -% Label 2 -label - - -% Not Validated Opcode 3 appears to always validate to either 5 or 6 -% so is never seen on screen. - - -% Division between Label and Opcode 4 -la - - -% Valid Opcode 5 - TRAP - - -% Invalid Opcode 6 - UNKNOWN - - -% Division between Opcode and Operands 7 - LOC - - -% Division of Operands 8 - LOC 0. - - -% Number 9 - BYTE 0 - - -% Reference 10 - JMP @label - - -% Char 11 - BYTE 'a' - - -% String 12 - BYTE "Hello, world!" - - -% Register 13 - BYTE rA - - -% Hexadecimal Number 14 - BYTE #FF - - -% Operator 15 - BYTE + - - -% Symbol 16 - TRAP Fputs - - -% Preprocessor 17 -@include a.mms - - diff --git a/lexilla/test/examples/mmixal/AllStyles.mms.styled b/lexilla/test/examples/mmixal/AllStyles.mms.styled deleted file mode 100644 index b3f64d4f7..000000000 --- a/lexilla/test/examples/mmixal/AllStyles.mms.styled +++ /dev/null @@ -1,74 +0,0 @@ -{1}% Demonstrate each possible style. Does not make sense as code. -{0} -{1}% A comment 1 -% Comment -{0} - -{1}% Whitespace 0 -{0} - - -{1}% Label 2 -{2}label{4} -{0} - -{1}% Not Validated Opcode 3 appears to always validate to either 5 or 6 -% so is never seen on screen. -{0} - -{1}% Division between Label and Opcode 4 -{2}la{4} -{0} - -{1}% Valid Opcode 5 -{0} {5}TRAP{7} -{0} - -{1}% Invalid Opcode 6 -{0} {6}UNKNOWN{7} -{0} - -{1}% Division between Opcode and Operands 7 -{0} {5}LOC{7} -{0} - -{1}% Division of Operands 8 -{0} {5}LOC{7} {9}0{8}.{1} -{0} - -{1}% Number 9 -{0} {5}BYTE{7} {9}0{1} -{0} - -{1}% Reference 10 -{0} {5}JMP{7} {10}@label{1} -{0} - -{1}% Char 11 -{0} {5}BYTE{7} {11}'a'{1} -{0} - -{1}% String 12 -{0} {5}BYTE{7} {12}"Hello, world!"{1} -{0} - -{1}% Register 13 -{0} {5}BYTE{7} {13}rA{1} -{0} - -{1}% Hexadecimal Number 14 -{0} {5}BYTE{7} {14}#FF{1} -{0} - -{1}% Operator 15 -{0} {5}BYTE{7} {15}+{1} -{0} - -{1}% Symbol 16 -{0} {5}TRAP{7} {16}Fputs{1} -{0} - -{1}% Preprocessor 17 -{17}@include a.mms -{0} - diff --git a/lexilla/test/examples/mmixal/SciTE.properties b/lexilla/test/examples/mmixal/SciTE.properties deleted file mode 100644 index d458a19fd..000000000 --- a/lexilla/test/examples/mmixal/SciTE.properties +++ /dev/null @@ -1,4 +0,0 @@ -lexer.*.mms=mmixal -keywords.*.mms=BYTE GETA JMP LOC PREFIX TRAP -keywords2.*.mms=rA -keywords3.*.mms=Fputs StdOut diff --git a/lexilla/test/examples/mmixal/references.mms b/lexilla/test/examples/mmixal/references.mms deleted file mode 100644 index 82be6e8c9..000000000 --- a/lexilla/test/examples/mmixal/references.mms +++ /dev/null @@ -1,16 +0,0 @@ -# Bug #2019 Buffer over-read in MMIXAL lexer -label - PREFIX Foo: -% Relative reference (uses PREFIX) - JMP label -% - JMP @label -% Absolute reference (does not use PREFIX) - JMP :label -% In register list so treated as register - JMP :rA -% Too long for buffer so truncated - JMP l1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 -% Too long for buffer so truncated then treated as absolute - JMP :l1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 -% diff --git a/lexilla/test/examples/mmixal/references.mms.styled b/lexilla/test/examples/mmixal/references.mms.styled deleted file mode 100644 index 78ae29a3a..000000000 --- a/lexilla/test/examples/mmixal/references.mms.styled +++ /dev/null @@ -1,16 +0,0 @@ -{1}# Bug #2019 Buffer over-read in MMIXAL lexer -{2}label{4} -{0} {5}PREFIX{7} {10}Foo:{1} -% Relative reference (uses PREFIX) -{0} {5}JMP{7} {10}label{1} -% -{0} {5}JMP{7} {10}@label{1} -% Absolute reference (does not use PREFIX) -{0} {5}JMP{7} {10}:label{1} -% In register list so treated as register -{0} {5}JMP{7} {13}:rA{1} -% Too long for buffer so truncated -{0} {5}JMP{7} {10}l1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890{1} -% Too long for buffer so truncated then treated as absolute -{0} {5}JMP{7} {10}:l1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890{1} -% diff --git a/lexilla/test/examples/mmixal/x.mms b/lexilla/test/examples/mmixal/x.mms deleted file mode 100644 index 538d22163..000000000 --- a/lexilla/test/examples/mmixal/x.mms +++ /dev/null @@ -1,12 +0,0 @@ -% Some example code - - % Set the address of the program initially to 0x100. - LOC #100 - -Main GETA $255,string - - TRAP 0,Fputs,StdOut - - TRAP 0,Halt,0 - -string BYTE "Hello, world!",#a,0 diff --git a/lexilla/test/examples/mmixal/x.mms.styled b/lexilla/test/examples/mmixal/x.mms.styled deleted file mode 100644 index 7221e37f9..000000000 --- a/lexilla/test/examples/mmixal/x.mms.styled +++ /dev/null @@ -1,12 +0,0 @@ -{1}% Some example code -{0} - {1}% Set the address of the program initially to 0x100. -{0} {5}LOC{7} {14}#100{1} -{0} -{2}Main{4} {5}GETA{7} {13}$255{15},{10}string{1} -{0} - {5}TRAP{7} {9}0{15},{16}Fputs{15},{16}StdOut{1} -{0} - {5}TRAP{7} {9}0{15},{10}Halt{15},{9}0{1} -{0} -{2}string{4} {5}BYTE{7} {12}"Hello, world!"{15},{14}#a{15},{9}0{1} diff --git a/lexilla/test/examples/nim/SciTE.properties b/lexilla/test/examples/nim/SciTE.properties deleted file mode 100644 index 3a0214952..000000000 --- a/lexilla/test/examples/nim/SciTE.properties +++ /dev/null @@ -1,2 +0,0 @@ -lexer.*.nim=nim -keywords.*.nim=else end if let proc diff --git a/lexilla/test/examples/nim/x.nim b/lexilla/test/examples/nim/x.nim deleted file mode 100644 index 874940d47..000000000 --- a/lexilla/test/examples/nim/x.nim +++ /dev/null @@ -1,28 +0,0 @@ -# Tests for Nim -let s = "foobar" - -# Feature #1260 -{.ident.} -stdin.readLine.split.map(parseInt).max.`$`.echo(" is the maximum!") - -# Feature #1261 -# IsFuncName("proc") so style ticks as SCE_NIM_FUNCNAME: -proc `$` (x: myDataType): string = ... -# Style ticks as SCE_NIM_BACKTICKS: -if `==`( `+`(3,4),7): echo "True" - -# Feature #1262 -# Standard raw string identifier: -let standardDoubleLitRawStr = R"A raw string\" -let standardTripleLitRawStr = R"""A triple-double raw string\"""" -# Style of 'customIdent' is determined by lexer.nim.raw.strings.highlight.ident. 16 if false, 6 or 10 if true -let customDoubleLitRawStr = customIdent"A string\" -let customTripleLitRawStr = customIdent"""A triple-double raw string\"""" - -# Feature #1268 -10_000 -10__000 -10_ -1....5 -1.ident -1._ident diff --git a/lexilla/test/examples/nim/x.nim.styled b/lexilla/test/examples/nim/x.nim.styled deleted file mode 100644 index 3a05c04b8..000000000 --- a/lexilla/test/examples/nim/x.nim.styled +++ /dev/null @@ -1,28 +0,0 @@ -{3}# Tests for Nim -{8}let{0} {16}s{0} {15}={0} {6}"foobar"{0} - -{3}# Feature #1260 -{15}{.{16}ident{15}.}{0} -{16}stdin{15}.{16}readLine{15}.{16}split{15}.{16}map{15}({16}parseInt{15}).{16}max{15}.{11}`$`{15}.{16}echo{15}({6}" is the maximum!"{15}){0} - -{3}# Feature #1261 -# IsFuncName("proc") so style ticks as SCE_NIM_FUNCNAME: -{8}proc{0} {12}`$`{0} {15}({16}x{15}:{0} {16}myDataType{15}):{0} {16}string{0} {15}={0} {15}...{0} -{3}# Style ticks as SCE_NIM_BACKTICKS: -{8}if{0} {11}`==`{15}({0} {11}`+`{15}({5}3{15},{5}4{15}),{5}7{15}):{0} {16}echo{0} {6}"True"{0} - -{3}# Feature #1262 -# Standard raw string identifier: -{8}let{0} {16}standardDoubleLitRawStr{0} {15}={0} {6}R"A raw string\"{0} -{8}let{0} {16}standardTripleLitRawStr{0} {15}={0} {10}R"""A triple-double raw string\""""{0} -{3}# Style of 'customIdent' is determined by lexer.nim.raw.strings.highlight.ident. 16 if false, 6 or 10 if true -{8}let{0} {16}customDoubleLitRawStr{0} {15}={0} {16}customIdent{6}"A string\"{0} -{8}let{0} {16}customTripleLitRawStr{0} {15}={0} {16}customIdent{10}"""A triple-double raw string\""""{0} - -{3}# Feature #1268 -{5}10_000{0} -{5}10{16}__000{0} -{5}10{16}_{0} -{5}1{15}....{5}5{0} -{5}1{15}.{16}ident{0} -{5}1{15}.{16}_ident{0} diff --git a/lexilla/test/examples/perl/SciTE.properties b/lexilla/test/examples/perl/SciTE.properties deleted file mode 100644 index 0aefae2c9..000000000 --- a/lexilla/test/examples/perl/SciTE.properties +++ /dev/null @@ -1,31 +0,0 @@ -lexer.*.pl=perl -keywords.*.pl=\ -NULL __FILE__ __LINE__ __PACKAGE__ __DATA__ __END__ AUTOLOAD \ -BEGIN CORE DESTROY END EQ GE GT INIT LE LT NE CHECK abs accept \ -alarm and atan2 bind binmode bless caller chdir chmod chomp chop \ -chown chr chroot close closedir cmp connect continue cos crypt \ -dbmclose dbmopen defined delete die do dump each else elsif endgrent \ -endhostent endnetent endprotoent endpwent endservent eof eq eval \ -exec exists exit exp fcntl fileno flock for foreach fork format \ -formline ge getc getgrent getgrgid getgrnam gethostbyaddr gethostbyname \ -gethostent getlogin getnetbyaddr getnetbyname getnetent getpeername \ -getpgrp getppid getpriority getprotobyname getprotobynumber getprotoent \ -getpwent getpwnam getpwuid getservbyname getservbyport getservent \ -getsockname getsockopt glob gmtime goto grep gt hex if index \ -int ioctl join keys kill last lc lcfirst le length link listen \ -local localtime lock log lstat lt map mkdir msgctl msgget msgrcv \ -msgsnd my ne next no not oct open opendir or ord our pack package \ -pipe pop pos print printf prototype push quotemeta qu \ -rand read readdir readline readlink readpipe recv redo \ -ref rename require reset return reverse rewinddir rindex rmdir \ -scalar seek seekdir select semctl semget semop send setgrent \ -sethostent setnetent setpgrp setpriority setprotoent setpwent \ -setservent setsockopt shift shmctl shmget shmread shmwrite shutdown \ -sin sleep socket socketpair sort splice split sprintf sqrt srand \ -stat study sub substr symlink syscall sysopen sysread sysseek \ -system syswrite tell telldir tie tied time times truncate \ -uc ucfirst umask undef unless unlink unpack unshift untie until \ -use utime values vec wait waitpid wantarray warn while write \ -xor \ -given when default break say state UNITCHECK __SUB__ fc - diff --git a/lexilla/test/examples/perl/perl-test-5220delta.pl b/lexilla/test/examples/perl/perl-test-5220delta.pl deleted file mode 100644 index a9c80caa2..000000000 --- a/lexilla/test/examples/perl/perl-test-5220delta.pl +++ /dev/null @@ -1,178 +0,0 @@ -# -*- coding: utf-8 -*- -#-------------------------------------------------------------------------- -# perl-test-5220delta.pl -#-------------------------------------------------------------------------- -# REF: https://metacpan.org/pod/distribution/perl/pod/perldelta.pod -# maybe future ref: https://metacpan.org/pod/distribution/perl/pod/perl5220delta.pod -# also: http://perltricks.com/article/165/2015/4/10/A-preview-of-Perl-5-22 -# -#-------------------------------------------------------------------------- -# Kein-Hong Man <keinhong@gmail.com> Public Domain 20151217 -#-------------------------------------------------------------------------- -# 20151217 initial document -# 20151218 updated tests and comments -#-------------------------------------------------------------------------- - -use v5.22; # may be needed - -#-------------------------------------------------------------------------- -# New bitwise operators -#-------------------------------------------------------------------------- - -use feature 'bitwise' # enable feature, warning enabled -use experimental "bitwise"; # enable feature, warning disabled - -# numerical operands -10&20 10|20 10^20 ~10 -$a&"8" $a|"8" $a^"8" ~$a ~"8" - -# string operands -'0'&."8" '0'|."8" '0'^."8" ~.'0' ~."8" -# the following is AMBIGUOUS, perl sees 10 and not .10 only when bitwise feature is enabled -# so it's feature-setting-dependent, no plans to change current behaviour - $a&.10 $a|.10 $a^.10 ~.$a ~.10 - -# assignment variants -$a&=10; $a|=10; $a^=10; -$b&.='20'; $b|.='20'; $b^.='20'; -$c&="30"; $c|="30"; $c^="30"; -$d&.=$e; $d|.=$e; $d^.=$e; - -#-------------------------------------------------------------------------- -# New double-diamond operator -#-------------------------------------------------------------------------- -# <<>> is like <> but each element of @ARGV will be treated as an actual file name - -# example snippet from brian d foy's blog post -while( <<>> ) { # new, safe line input operator - ...; - } - -#-------------------------------------------------------------------------- -# New \b boundaries in regular expressions -#-------------------------------------------------------------------------- - -qr/\b{gcb}/ -qr/\b{wb}/ -qr/\b{sb}/ - -#-------------------------------------------------------------------------- -# Non-Capturing Regular Expression Flag -#-------------------------------------------------------------------------- -# disables capturing and filling in $1, $2, etc - -"hello" =~ /(hi|hello)/n; # $1 is not set - -#-------------------------------------------------------------------------- -# Aliasing via reference -#-------------------------------------------------------------------------- -# Variables and subroutines can now be aliased by assigning to a reference - -\$c = \$d; -\&x = \&y; - -# Aliasing can also be applied to foreach iterator variables - -foreach \%hash (@array_of_hash_refs) { ... } - -# example snippet from brian d foy's blog post - -use feature qw(refaliasing); - -\%other_hash = \%hash; - -use v5.22; -use feature qw(refaliasing); - -foreach \my %hash ( @array_of_hashes ) { # named hash control variable - foreach my $key ( keys %hash ) { # named hash now! - ...; - } - } - -#-------------------------------------------------------------------------- -# New :const subroutine attribute -#-------------------------------------------------------------------------- - -my $x = 54321; -*INLINED = sub : const { $x }; -$x++; - -# more examples of attributes -# (not 5.22 stuff, but some general examples for study, useful for -# handling subroutine signature and subroutine prototype highlighting) - -sub foo : lvalue ; - -package X; -sub Y::x : lvalue { 1 } - -package X; -sub foo { 1 } -package Y; -BEGIN { *bar = \&X::foo; } -package Z; -sub Y::bar : lvalue ; - -# built-in attributes for subroutines: -lvalue method prototype(..) locked const - -#-------------------------------------------------------------------------- -# Repetition in list assignment -#-------------------------------------------------------------------------- - -# example snippet from brian d foy's blog post -use v5.22; -my(undef, $card_num, (undef)x3, $count) = split /:/; - -(undef,undef,$foo) = that_function() -# is equivalent to -((undef)x2, $foo) = that_function() - -#-------------------------------------------------------------------------- -# Floating point parsing has been improved -#-------------------------------------------------------------------------- -# Hexadecimal floating point literals - -# some hex floats from a program by Rick Regan -# appropriated and extended from Lua 5.2.x test cases -# tested on perl 5.22/cygwin - -0x1p-1074; -0x3.3333333333334p-5; -0xcc.ccccccccccdp-11; -0x1p+1; -0x1p-6; -0x1.b7p-1; -0x1.fffffffffffffp+1023; -0x1p-1022; -0X1.921FB4D12D84AP+1; -0x1.999999999999ap-4; - -# additional test cases for characterization -0x1p-1074. # dot is a string operator -0x.ABCDEFp10 # legal, dot immediately after 0x -0x.p10 # perl allows 0x as a zero, then concat with p10 bareword -0x.p 0x0.p # dot then bareword -0x_0_.A_BC___DEF_p1_0 # legal hex float, underscores are mostly allowed -0x0._ABCDEFp10 # _ABCDEFp10 is a bareword, no underscore allowed after dot - -# illegal, but does not use error highlighting -0x0p1ABC # illegal, highlighted as 0x0p1 abut with bareword ABC - -# allowed to FAIL for now -0x0.ABCDEFp_10 # ABCDEFp_10 is a bareword, '_10' exponent not allowed -0xp 0xp1 0x0.0p # syntax errors -0x41.65.65 # hex dot number, but lexer now fails with 0x41.65 left as a partial hex float - -#-------------------------------------------------------------------------- -# Support for ?PATTERN? without explicit operator has been removed -#-------------------------------------------------------------------------- -# ?PATTERN? must now be written as m?PATTERN? - -?PATTERN? # does not work in current LexPerl anyway, NO ACTION NEEDED -m?PATTERN? - -#-------------------------------------------------------------------------- -# end of test file -#-------------------------------------------------------------------------- diff --git a/lexilla/test/examples/perl/perl-test-5220delta.pl.styled b/lexilla/test/examples/perl/perl-test-5220delta.pl.styled deleted file mode 100644 index 4a763a47a..000000000 --- a/lexilla/test/examples/perl/perl-test-5220delta.pl.styled +++ /dev/null @@ -1,178 +0,0 @@ -{2}# -*- coding: utf-8 -*- -#-------------------------------------------------------------------------- -# perl-test-5220delta.pl -#-------------------------------------------------------------------------- -# REF: https://metacpan.org/pod/distribution/perl/pod/perldelta.pod -# maybe future ref: https://metacpan.org/pod/distribution/perl/pod/perl5220delta.pod -# also: http://perltricks.com/article/165/2015/4/10/A-preview-of-Perl-5-22 -# -#-------------------------------------------------------------------------- -# Kein-Hong Man <keinhong@gmail.com> Public Domain 20151217 -#-------------------------------------------------------------------------- -# 20151217 initial document -# 20151218 updated tests and comments -#-------------------------------------------------------------------------- -{0} -{5}use{0} {6}v5.22{10};{0} {2}# may be needed -{0} -{2}#-------------------------------------------------------------------------- -# New bitwise operators -#-------------------------------------------------------------------------- -{0} -{5}use{0} {11}feature{0} {7}'bitwise'{0} {2}# enable feature, warning enabled -{5}use{0} {11}experimental{0} {6}"bitwise"{10};{0} {2}# enable feature, warning disabled -{0} -{2}# numerical operands -{4}10{10}&{4}20{0} {4}10{10}|{4}20{0} {4}10{10}^{4}20{0} {10}~{4}10{0} -{12}$a{10}&{6}"8"{0} {12}$a{10}|{6}"8"{0} {12}$a{10}^{6}"8"{0} {10}~{12}$a{0} {10}~{6}"8"{0} - -{2}# string operands -{7}'0'{10}&.{6}"8"{0} {7}'0'{10}|.{6}"8"{0} {7}'0'{10}^.{6}"8"{0} {10}~.{7}'0'{0} {10}~.{6}"8"{0} -{2}# the following is AMBIGUOUS, perl sees 10 and not .10 only when bitwise feature is enabled -# so it's feature-setting-dependent, no plans to change current behaviour -{0} {12}$a{10}&{4}.10{0} {12}$a{10}|{4}.10{0} {12}$a{10}^{4}.10{0} {10}~.{12}$a{0} {10}~{4}.10{0} - -{2}# assignment variants -{12}$a{10}&={4}10{10};{0} {12}$a{10}|={4}10{10};{0} {12}$a{10}^={4}10{10};{0} -{12}$b{10}&.={7}'20'{10};{0} {12}$b{10}|.={7}'20'{10};{0} {12}$b{10}^.={7}'20'{10};{0} -{12}$c{10}&={6}"30"{10};{0} {12}$c{10}|={6}"30"{10};{0} {12}$c{10}^={6}"30"{10};{0} -{12}$d{10}&.={12}$e{10};{0} {12}$d{10}|.={12}$e{10};{0} {12}$d{10}^.={12}$e{10};{0} - -{2}#-------------------------------------------------------------------------- -# New double-diamond operator -#-------------------------------------------------------------------------- -# <<>> is like <> but each element of @ARGV will be treated as an actual file name -{0} -{2}# example snippet from brian d foy's blog post -{5}while{10}({0} {10}<<>>{0} {10}){0} {10}{{0} {2}# new, safe line input operator -{0} {10}...;{0} - {10}}{0} - -{2}#-------------------------------------------------------------------------- -# New \b boundaries in regular expressions -#-------------------------------------------------------------------------- -{0} -{29}qr/\b{gcb}/{0} -{29}qr/\b{wb}/{0} -{29}qr/\b{sb}/{0} - -{2}#-------------------------------------------------------------------------- -# Non-Capturing Regular Expression Flag -#-------------------------------------------------------------------------- -# disables capturing and filling in $1, $2, etc -{0} -{6}"hello"{0} {10}=~{0} {17}/(hi|hello)/n{10};{0} {2}# $1 is not set -{0} -{2}#-------------------------------------------------------------------------- -# Aliasing via reference -#-------------------------------------------------------------------------- -# Variables and subroutines can now be aliased by assigning to a reference -{0} -{10}\{12}$c{0} {10}={0} {10}\{12}$d{10};{0} -{10}\&{11}x{0} {10}={0} {10}\&{11}y{10};{0} - -{2}# Aliasing can also be applied to foreach iterator variables -{0} -{5}foreach{0} {10}\{14}%hash{0} {10}({13}@array_of_hash_refs{10}){0} {10}{{0} {10}...{0} {10}}{0} - -{2}# example snippet from brian d foy's blog post -{0} -{5}use{0} {11}feature{0} {30}qw(refaliasing){10};{0} - -{10}\{14}%other_hash{0} {10}={0} {10}\{14}%hash{10};{0} - -{5}use{0} {6}v5.22{10};{0} -{5}use{0} {11}feature{0} {30}qw(refaliasing){10};{0} - -{5}foreach{0} {10}\{5}my{0} {14}%hash{0} {10}({0} {13}@array_of_hashes{0} {10}){0} {10}{{0} {2}# named hash control variable -{0} {5}foreach{0} {5}my{0} {12}$key{0} {10}({0} {5}keys{0} {14}%hash{0} {10}){0} {10}{{0} {2}# named hash now! -{0} {10}...;{0} - {10}}{0} - {10}}{0} - -{2}#-------------------------------------------------------------------------- -# New :const subroutine attribute -#-------------------------------------------------------------------------- -{0} -{5}my{0} {12}$x{0} {10}={0} {4}54321{10};{0} -{15}*INLINED{0} {10}={0} {5}sub{0} {10}:{0} {11}const{0} {10}{{0} {12}$x{0} {10}};{0} -{12}$x{10}++;{0} - -{2}# more examples of attributes -# (not 5.22 stuff, but some general examples for study, useful for -# handling subroutine signature and subroutine prototype highlighting) -{0} -{5}sub{0} {11}foo{0} {10}:{0} {11}lvalue{0} {10};{0} - -{5}package{0} {11}X{10};{0} -{5}sub{0} {11}Y{10}::{11}x{0} {10}:{0} {11}lvalue{0} {10}{{0} {4}1{0} {10}}{0} - -{5}package{0} {11}X{10};{0} -{5}sub{0} {11}foo{0} {10}{{0} {4}1{0} {10}}{0} -{5}package{0} {11}Y{10};{0} -{5}BEGIN{0} {10}{{0} {15}*bar{0} {10}={0} {10}\&{11}X{10}::{11}foo{10};{0} {10}}{0} -{5}package{0} {11}Z{10};{0} -{5}sub{0} {11}Y{10}::{11}bar{0} {10}:{0} {11}lvalue{0} {10};{0} - -{2}# built-in attributes for subroutines: -{11}lvalue{0} {11}method{0} {5}prototype{10}(..){0} {11}locked{0} {11}const{0} - -{2}#-------------------------------------------------------------------------- -# Repetition in list assignment -#-------------------------------------------------------------------------- -{0} -{2}# example snippet from brian d foy's blog post -{5}use{0} {6}v5.22{10};{0} -{5}my{10}({5}undef{10},{0} {12}$card_num{10},{0} {10}({5}undef{10})x{4}3{10},{0} {12}$count{10}){0} {10}={0} {5}split{0} {17}/:/{10};{0} - -{10}({5}undef{10},{5}undef{10},{12}$foo{10}){0} {10}={0} {11}that_function{10}(){0} -{2}# is equivalent to -{10}(({5}undef{10})x{4}2{10},{0} {12}$foo{10}){0} {10}={0} {11}that_function{10}(){0} - -{2}#-------------------------------------------------------------------------- -# Floating point parsing has been improved -#-------------------------------------------------------------------------- -# Hexadecimal floating point literals -{0} -{2}# some hex floats from a program by Rick Regan -# appropriated and extended from Lua 5.2.x test cases -# tested on perl 5.22/cygwin -{0} -{4}0x1p-1074{10};{0} -{4}0x3.3333333333334p-5{10};{0} -{4}0xcc.ccccccccccdp-11{10};{0} -{4}0x1p+1{10};{0} -{4}0x1p-6{10};{0} -{4}0x1.b7p-1{10};{0} -{4}0x1.fffffffffffffp+1023{10};{0} -{4}0x1p-1022{10};{0} -{4}0X1.921FB4D12D84AP+1{10};{0} -{4}0x1.999999999999ap-4{10};{0} - -{2}# additional test cases for characterization -{4}0x1p-1074{10}.{0} {2}# dot is a string operator -{4}0x.ABCDEFp10{0} {2}# legal, dot immediately after 0x -{4}0x{10}.{11}p10{0} {2}# perl allows 0x as a zero, then concat with p10 bareword -{4}0x{10}.{11}p{0} {4}0x0{10}.{11}p{0} {2}# dot then bareword -{4}0x_0_.A_BC___DEF_p1_0{0} {2}# legal hex float, underscores are mostly allowed -{4}0x0{10}.{11}_ABCDEFp10{0} {2}# _ABCDEFp10 is a bareword, no underscore allowed after dot -{0} -{2}# illegal, but does not use error highlighting -{4}0x0p1{11}ABC{0} {2}# illegal, highlighted as 0x0p1 abut with bareword ABC -{0} -{2}# allowed to FAIL for now -{4}0x0.ABCDEFp_10{0} {2}# ABCDEFp_10 is a bareword, '_10' exponent not allowed -{4}0xp{0} {4}0xp1{0} {4}0x0.0p{0} {2}# syntax errors -{4}0x41.65{10}.{4}65{0} {2}# hex dot number, but lexer now fails with 0x41.65 left as a partial hex float -{0} -{2}#-------------------------------------------------------------------------- -# Support for ?PATTERN? without explicit operator has been removed -#-------------------------------------------------------------------------- -# ?PATTERN? must now be written as m?PATTERN? -{0} -{10}?{11}PATTERN{10}?{0} {2}# does not work in current LexPerl anyway, NO ACTION NEEDED -{17}m?PATTERN?{0} - -{2}#-------------------------------------------------------------------------- -# end of test file -#-------------------------------------------------------------------------- diff --git a/lexilla/test/examples/perl/perl-test-sub-prototypes.pl b/lexilla/test/examples/perl/perl-test-sub-prototypes.pl deleted file mode 100644 index 9cfb488ba..000000000 --- a/lexilla/test/examples/perl/perl-test-sub-prototypes.pl +++ /dev/null @@ -1,239 +0,0 @@ -# -*- coding: utf-8 -*- -#-------------------------------------------------------------------------- -# perl-test-sub-prototypes.pl -#-------------------------------------------------------------------------- -# compiled all relevant subroutine prototype test cases -# -#-------------------------------------------------------------------------- -# Kein-Hong Man <keinhong@gmail.com> Public Domain -#-------------------------------------------------------------------------- -# 20151227 initial document -#-------------------------------------------------------------------------- - -#-------------------------------------------------------------------------- -# test cases for sub syntax scanner -#-------------------------------------------------------------------------- -# sub syntax: simple and with added module notation -#-------------------------------------------------------------------------- - -sub fish($) { 123; } -sub fish::chips($) { 123; } # module syntax -sub fish::chips::sauce($) { 123; } # multiple module syntax - -sub fish :: chips :: sauce ($) { 123; } # added whitespace - -sub fish :: # embedded comment -chips # embedded comment - :: sauce ($) { 123; } - -sub fish :: ($) { 123; } # incomplete or bad syntax examples -sub fish :: 123 ($) { 123; } -sub fish :: chips 123 ($) { 123; } -sub 123 ($) { 123; } - -#-------------------------------------------------------------------------- -# sub syntax: prototype attributes -#-------------------------------------------------------------------------- - -sub fish:prototype($) { 123; } -sub fish : prototype ($) { 123; } # added whitespace - -sub fish:salted($) { 123; } # wrong attribute example (must use 'prototype') -sub fish : 123($) { 123; } # illegal attribute -sub fish:prototype:salted($) { 123; } # wrong 'prototype' position -sub fish:salted salt:prototype($) { 123; } # wrong attribute syntax - -sub fish:const:prototype($) { 123; } # extra attributes -sub fish:const:lvalue:prototype($) { 123; } -sub fish:const:prototype($):lvalue{ 123; } # might be legal too -sub fish :const :prototype($) { 123; } # extra whitespace - -sub fish :const # embedded comment: a constant sub -:prototype # embedded comment -($) { 123; } - -#-------------------------------------------------------------------------- -# sub syntax: mixed -#-------------------------------------------------------------------------- - -sub fish::chips:prototype($) { 123; } -sub fish::chips::sauce:prototype($) { 123; } -sub fish ::chips ::sauce :prototype($) { 123; } # +whitespace - -sub fish::chips::sauce:const:prototype($) { 123; } -sub fish::chips::sauce :const :prototype($) { 123; } # +whitespace - -sub fish # embedded comment -::chips ::sauce # embedded comment - : const # embedded comment - : prototype ($) { 123; } - -# wrong syntax examples, parentheses must follow ':prototype' -sub fish :prototype :const ($) { 123;} -sub fish :prototype ::chips ($) { 123;} - -#-------------------------------------------------------------------------- -# perl-test-5200delta.pl -#-------------------------------------------------------------------------- -# More consistent prototype parsing -#-------------------------------------------------------------------------- -# - whitespace now allowed, lexer now allows spaces or tabs - -sub foo ( $ $ ) {} -sub foo ( ) {} # spaces/tabs empty -sub foo ( * ) {} -sub foo (@ ) {} -sub foo ( %) {} - -# untested, should probably be \[ but scanner does not check this for now -sub foo ( \ [ $ @ % & * ] ) {} - -#-------------------------------------------------------------------------- -# perl-test-5140delta.pl -#-------------------------------------------------------------------------- -# new + prototype character, acts like (\[@%]) -#-------------------------------------------------------------------------- - -# these samples work as before -sub mylink ($$) # mylink $old, $new -sub myvec ($$$) # myvec $var, $offset, 1 -sub myindex ($$;$) # myindex &getstring, "substr" -sub mysyswrite ($$$;$) # mysyswrite $buf, 0, length($buf) - $off, $off -sub myreverse (@) # myreverse $a, $b, $c -sub myjoin ($@) # myjoin ":", $a, $b, $c -sub myopen (*;$) # myopen HANDLE, $name -sub mypipe (**) # mypipe READHANDLE, WRITEHANDLE -sub mygrep (&@) # mygrep { /foo/ } $a, $b, $c -sub myrand (;$) # myrand 42 -sub mytime () # mytime - -# backslash group notation to specify more than one allowed argument type -sub myref (\[$@%&*]) {} - -sub mysub (_) # underscore can be optionally used FIXED 20151211 - -# these uses the new '+' prototype character -sub mypop (+) # mypop @array -sub mysplice (+$$@) # mysplice @array, 0, 2, @pushme -sub mykeys (+) # mykeys %{$hashref} - -#-------------------------------------------------------------------------- -# perl-test-5200delta.pl -#-------------------------------------------------------------------------- -# Experimental Subroutine signatures (mostly works) -#-------------------------------------------------------------------------- -# INCLUDED FOR COMPLETENESS ONLY -# IMPORTANT NOTE the subroutine prototypes lexing implementation has -# no effect on subroutine signature syntax highlighting - -# subroutine signatures mostly looks fine except for the @ and % slurpy -# notation which are highlighted as operators (all other parameters are -# highlighted as vars of some sort), a minor aesthetic issue - -use feature 'signatures'; - -sub foo ($left, $right) { # mandatory positional parameters - return $left + $right; -} -sub foo ($first, $, $third) { # ignore second argument - return "first=$first, third=$third"; -} -sub foo ($left, $right = 0) { # optional parameter with default value - return $left + $right; -} -my $auto_id = 0; # default value expression, evaluated if default used only -sub foo ($thing, $id = $auto_id++) { - print "$thing has ID $id"; -} -sub foo ($first_name, $surname, $nickname = $first_name) { # 3rd parm may depend on 1st parm - print "$first_name $surname is known as \"$nickname\""; -} -sub foo ($thing, $ = 1) { # nameless default parameter - print $thing; -} -sub foo ($thing, $=) { # (this does something, I'm not sure what...) - print $thing; -} -sub foo ($filter, @inputs) { # additional arguments (slurpy parameter) - print $filter->($_) foreach @inputs; -} -sub foo ($thing, @) { # nameless slurpy parameter FAILS for now - print $thing; -} -sub foo ($filter, %inputs) { # slurpy parameter, hash type - print $filter->($_, $inputs{$_}) foreach sort keys %inputs; -} -sub foo ($thing, %) { # nameless slurpy parm, hash type FAILS for now - print $thing; -} -sub foo () { # empty signature no arguments (styled as prototype) - return 123; -} - -#-------------------------------------------------------------------------- -# perl-test-5200delta.pl -#-------------------------------------------------------------------------- -# subs now take a prototype attribute -#-------------------------------------------------------------------------- - -sub foo :prototype($) { $_[0] } - -sub foo :prototype($$) ($left, $right) { - return $left + $right; -} - -sub foo : prototype($$){} # whitespace allowed - -# additional samples from perl-test-cases.pl with ':prototype' added: -sub mylink :prototype($$) {} sub myvec :prototype($$$) {} -sub myindex :prototype($$;$) {} sub mysyswrite :prototype($$$;$) {} -sub myreverse :prototype(@) {} sub myjoin :prototype($@) {} -sub mypop :prototype(\@) {} sub mysplice :prototype(\@$$@) {} -sub mykeys :prototype(\%) {} sub myopen :prototype(*;$) {} -sub mypipe :prototype(**) {} sub mygrep :prototype(&@) {} -sub myrand :prototype($) {} sub mytime :prototype() {} -# backslash group notation to specify more than one allowed argument type -sub myref :prototype(\[$@%&*]) {} - -# additional attributes may complicate scanning for prototype syntax, -# for example (from https://metacpan.org/pod/perlsub): -# Lvalue subroutines - -my $val; -sub canmod : lvalue { - $val; # or: return $val; -} -canmod() = 5; # assigns to $val - -#-------------------------------------------------------------------------- -# perl-test-5220delta.pl -#-------------------------------------------------------------------------- -# New :const subroutine attribute -#-------------------------------------------------------------------------- - -my $x = 54321; -*INLINED = sub : const { $x }; -$x++; - -# more examples of attributes -# (not 5.22 stuff, but some general examples for study, useful for -# handling subroutine signature and subroutine prototype highlighting) - -sub foo : lvalue ; - -package X; -sub Y::z : lvalue { 1 } - -package X; -sub foo { 1 } -package Y; -BEGIN { *bar = \&X::foo; } -package Z; -sub Y::bar : lvalue ; - -# built-in attributes for subroutines: -lvalue method prototype(..) locked const - -#-------------------------------------------------------------------------- -# end of test file -#-------------------------------------------------------------------------- diff --git a/lexilla/test/examples/perl/perl-test-sub-prototypes.pl.styled b/lexilla/test/examples/perl/perl-test-sub-prototypes.pl.styled deleted file mode 100644 index e7290803b..000000000 --- a/lexilla/test/examples/perl/perl-test-sub-prototypes.pl.styled +++ /dev/null @@ -1,239 +0,0 @@ -{2}# -*- coding: utf-8 -*- -#-------------------------------------------------------------------------- -# perl-test-sub-prototypes.pl -#-------------------------------------------------------------------------- -# compiled all relevant subroutine prototype test cases -# -#-------------------------------------------------------------------------- -# Kein-Hong Man <keinhong@gmail.com> Public Domain -#-------------------------------------------------------------------------- -# 20151227 initial document -#-------------------------------------------------------------------------- -{0} -{2}#-------------------------------------------------------------------------- -# test cases for sub syntax scanner -#-------------------------------------------------------------------------- -# sub syntax: simple and with added module notation -#-------------------------------------------------------------------------- -{0} -{5}sub{0} {11}fish{40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} -{5}sub{0} {11}fish{10}::{11}chips{40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} {2}# module syntax -{5}sub{0} {11}fish{10}::{11}chips{10}::{11}sauce{40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} {2}# multiple module syntax -{0} -{5}sub{0} {11}fish{0} {10}::{0} {11}chips{0} {10}::{0} {11}sauce{0} {40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} {2}# added whitespace -{0} -{5}sub{0} {11}fish{0} {10}::{0} {2}# embedded comment -{11}chips{0} {2}# embedded comment -{0} {10}::{0} {11}sauce{0} {40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} - -{5}sub{0} {11}fish{0} {10}::{0} {10}({12}$){0} {10}{{0} {4}123{10};{0} {10}}{0} {2}# incomplete or bad syntax examples -{5}sub{0} {11}fish{0} {10}::{0} {4}123{0} {10}({12}$){0} {10}{{0} {4}123{10};{0} {10}}{0} -{5}sub{0} {11}fish{0} {10}::{0} {11}chips{0} {4}123{0} {10}({12}$){0} {10}{{0} {4}123{10};{0} {10}}{0} -{5}sub{0} {4}123{0} {10}({12}$){0} {10}{{0} {4}123{10};{0} {10}}{0} - -{2}#-------------------------------------------------------------------------- -# sub syntax: prototype attributes -#-------------------------------------------------------------------------- -{0} -{5}sub{0} {11}fish{10}:{5}prototype{40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} -{5}sub{0} {11}fish{0} {10}:{0} {5}prototype{0} {40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} {2}# added whitespace -{0} -{5}sub{0} {11}fish{10}:{11}salted{10}({12}$){0} {10}{{0} {4}123{10};{0} {10}}{0} {2}# wrong attribute example (must use 'prototype') -{5}sub{0} {11}fish{0} {10}:{0} {4}123{10}({12}$){0} {10}{{0} {4}123{10};{0} {10}}{0} {2}# illegal attribute -{5}sub{0} {11}fish{10}:{5}prototype{10}:{11}salted{10}({12}$){0} {10}{{0} {4}123{10};{0} {10}}{0} {2}# wrong 'prototype' position -{5}sub{0} {11}fish{10}:{11}salted{0} {11}salt{10}:{5}prototype{10}({12}$){0} {10}{{0} {4}123{10};{0} {10}}{0} {2}# wrong attribute syntax -{0} -{5}sub{0} {11}fish{10}:{11}const{10}:{5}prototype{40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} {2}# extra attributes -{5}sub{0} {11}fish{10}:{11}const{10}:{11}lvalue{10}:{5}prototype{40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} -{5}sub{0} {11}fish{10}:{11}const{10}:{5}prototype{40}($){10}:{11}lvalue{10}{{0} {4}123{10};{0} {10}}{0} {2}# might be legal too -{5}sub{0} {11}fish{0} {10}:{11}const{0} {10}:{5}prototype{40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} {2}# extra whitespace -{0} -{5}sub{0} {11}fish{0} {10}:{11}const{0} {2}# embedded comment: a constant sub -{10}:{5}prototype{0} {2}# embedded comment -{40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} - -{2}#-------------------------------------------------------------------------- -# sub syntax: mixed -#-------------------------------------------------------------------------- -{0} -{5}sub{0} {11}fish{10}::{11}chips{10}:{5}prototype{40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} -{5}sub{0} {11}fish{10}::{11}chips{10}::{11}sauce{10}:{5}prototype{40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} -{5}sub{0} {11}fish{0} {10}::{11}chips{0} {10}::{11}sauce{0} {10}:{5}prototype{40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} {2}# +whitespace -{0} -{5}sub{0} {11}fish{10}::{11}chips{10}::{11}sauce{10}:{11}const{10}:{5}prototype{40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} -{5}sub{0} {11}fish{10}::{11}chips{10}::{11}sauce{0} {10}:{11}const{0} {10}:{5}prototype{40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} {2}# +whitespace -{0} -{5}sub{0} {11}fish{0} {2}# embedded comment -{10}::{11}chips{0} {10}::{11}sauce{0} {2}# embedded comment -{0} {10}:{0} {11}const{0} {2}# embedded comment -{0} {10}:{0} {5}prototype{0} {40}($){0} {10}{{0} {4}123{10};{0} {10}}{0} - -{2}# wrong syntax examples, parentheses must follow ':prototype' -{5}sub{0} {11}fish{0} {10}:{5}prototype{0} {10}:{11}const{0} {10}({12}$){0} {10}{{0} {4}123{10};}{0} -{5}sub{0} {11}fish{0} {10}:{5}prototype{0} {10}::{11}chips{0} {10}({12}$){0} {10}{{0} {4}123{10};}{0} - -{2}#-------------------------------------------------------------------------- -# perl-test-5200delta.pl -#-------------------------------------------------------------------------- -# More consistent prototype parsing -#-------------------------------------------------------------------------- -# - whitespace now allowed, lexer now allows spaces or tabs -{0} -{5}sub{0} {11}foo{0} {40}( $ $ ){0} {10}{}{0} -{5}sub{0} {11}foo{0} {40}( ){0} {10}{}{0} {2}# spaces/tabs empty -{5}sub{0} {11}foo{0} {40}( * ){0} {10}{}{0} -{5}sub{0} {11}foo{0} {40}(@ ){0} {10}{}{0} -{5}sub{0} {11}foo{0} {40}( %){0} {10}{}{0} - -{2}# untested, should probably be \[ but scanner does not check this for now -{5}sub{0} {11}foo{0} {40}( \ [ $ @ % & * ] ){0} {10}{}{0} - -{2}#-------------------------------------------------------------------------- -# perl-test-5140delta.pl -#-------------------------------------------------------------------------- -# new + prototype character, acts like (\[@%]) -#-------------------------------------------------------------------------- -{0} -{2}# these samples work as before -{5}sub{0} {11}mylink{0} {40}($$){0} {2}# mylink $old, $new -{5}sub{0} {11}myvec{0} {40}($$$){0} {2}# myvec $var, $offset, 1 -{5}sub{0} {11}myindex{0} {40}($$;$){0} {2}# myindex &getstring, "substr" -{5}sub{0} {11}mysyswrite{0} {40}($$$;$){0} {2}# mysyswrite $buf, 0, length($buf) - $off, $off -{5}sub{0} {11}myreverse{0} {40}(@){0} {2}# myreverse $a, $b, $c -{5}sub{0} {11}myjoin{0} {40}($@){0} {2}# myjoin ":", $a, $b, $c -{5}sub{0} {11}myopen{0} {40}(*;$){0} {2}# myopen HANDLE, $name -{5}sub{0} {11}mypipe{0} {40}(**){0} {2}# mypipe READHANDLE, WRITEHANDLE -{5}sub{0} {11}mygrep{0} {40}(&@){0} {2}# mygrep { /foo/ } $a, $b, $c -{5}sub{0} {11}myrand{0} {40}(;$){0} {2}# myrand 42 -{5}sub{0} {11}mytime{0} {40}(){0} {2}# mytime -{0} -{2}# backslash group notation to specify more than one allowed argument type -{5}sub{0} {11}myref{0} {40}(\[$@%&*]){0} {10}{}{0} - -{5}sub{0} {11}mysub{0} {40}(_){0} {2}# underscore can be optionally used FIXED 20151211 -{0} -{2}# these uses the new '+' prototype character -{5}sub{0} {11}mypop{0} {40}(+){0} {2}# mypop @array -{5}sub{0} {11}mysplice{0} {40}(+$$@){0} {2}# mysplice @array, 0, 2, @pushme -{5}sub{0} {11}mykeys{0} {40}(+){0} {2}# mykeys %{$hashref} -{0} -{2}#-------------------------------------------------------------------------- -# perl-test-5200delta.pl -#-------------------------------------------------------------------------- -# Experimental Subroutine signatures (mostly works) -#-------------------------------------------------------------------------- -# INCLUDED FOR COMPLETENESS ONLY -# IMPORTANT NOTE the subroutine prototypes lexing implementation has -# no effect on subroutine signature syntax highlighting -{0} -{2}# subroutine signatures mostly looks fine except for the @ and % slurpy -# notation which are highlighted as operators (all other parameters are -# highlighted as vars of some sort), a minor aesthetic issue -{0} -{5}use{0} {11}feature{0} {7}'signatures'{10};{0} - -{5}sub{0} {11}foo{0} {10}({12}$left{10},{0} {12}$right{10}){0} {10}{{0} {2}# mandatory positional parameters -{0} {5}return{0} {12}$left{0} {10}+{0} {12}$right{10};{0} -{10}}{0} -{5}sub{0} {11}foo{0} {10}({12}$first{10},{0} {12}$,{0} {12}$third{10}){0} {10}{{0} {2}# ignore second argument -{0} {5}return{0} {6}"first={43}$first{6}, third={43}$third{6}"{10};{0} -{10}}{0} -{5}sub{0} {11}foo{0} {10}({12}$left{10},{0} {12}$right{0} {10}={0} {4}0{10}){0} {10}{{0} {2}# optional parameter with default value -{0} {5}return{0} {12}$left{0} {10}+{0} {12}$right{10};{0} -{10}}{0} -{5}my{0} {12}$auto_id{0} {10}={0} {4}0{10};{0} {2}# default value expression, evaluated if default used only -{5}sub{0} {11}foo{0} {10}({12}$thing{10},{0} {12}$id{0} {10}={0} {12}$auto_id{10}++){0} {10}{{0} - {5}print{0} {6}"{43}$thing{6} has ID {43}$id{6}"{10};{0} -{10}}{0} -{5}sub{0} {11}foo{0} {10}({12}$first_name{10},{0} {12}$surname{10},{0} {12}$nickname{0} {10}={0} {12}$first_name{10}){0} {10}{{0} {2}# 3rd parm may depend on 1st parm -{0} {5}print{0} {6}"{43}$first_name{6} {43}$surname{6} is known as \"{43}$nickname{6}\""{10};{0} -{10}}{0} -{5}sub{0} {11}foo{0} {10}({12}$thing{10},{0} {12}${0} {10}={0} {4}1{10}){0} {10}{{0} {2}# nameless default parameter -{0} {5}print{0} {12}$thing{10};{0} -{10}}{0} -{5}sub{0} {11}foo{0} {10}({12}$thing{10},{0} {12}$={10}){0} {10}{{0} {2}# (this does something, I'm not sure what...) -{0} {5}print{0} {12}$thing{10};{0} -{10}}{0} -{5}sub{0} {11}foo{0} {10}({12}$filter{10},{0} {13}@inputs{10}){0} {10}{{0} {2}# additional arguments (slurpy parameter) -{0} {5}print{0} {12}$filter{10}->({12}$_{10}){0} {5}foreach{0} {13}@inputs{10};{0} -{10}}{0} -{5}sub{0} {11}foo{0} {10}({12}$thing{10},{0} {10}@){0} {10}{{0} {2}# nameless slurpy parameter FAILS for now -{0} {5}print{0} {12}$thing{10};{0} -{10}}{0} -{5}sub{0} {11}foo{0} {10}({12}$filter{10},{0} {14}%inputs{10}){0} {10}{{0} {2}# slurpy parameter, hash type -{0} {5}print{0} {12}$filter{10}->({12}$_{10},{0} {12}$inputs{10}{{12}$_{10}}){0} {5}foreach{0} {5}sort{0} {5}keys{0} {14}%inputs{10};{0} -{10}}{0} -{5}sub{0} {11}foo{0} {10}({12}$thing{10},{0} {10}%){0} {10}{{0} {2}# nameless slurpy parm, hash type FAILS for now -{0} {5}print{0} {12}$thing{10};{0} -{10}}{0} -{5}sub{0} {11}foo{0} {40}(){0} {10}{{0} {2}# empty signature no arguments (styled as prototype) -{0} {5}return{0} {4}123{10};{0} -{10}}{0} - -{2}#-------------------------------------------------------------------------- -# perl-test-5200delta.pl -#-------------------------------------------------------------------------- -# subs now take a prototype attribute -#-------------------------------------------------------------------------- -{0} -{5}sub{0} {11}foo{0} {10}:{5}prototype{40}($){0} {10}{{0} {12}$_{10}[{4}0{10}]{0} {10}}{0} - -{5}sub{0} {11}foo{0} {10}:{5}prototype{40}($$){0} {10}({12}$left{10},{0} {12}$right{10}){0} {10}{{0} - {5}return{0} {12}$left{0} {10}+{0} {12}$right{10};{0} -{10}}{0} - -{5}sub{0} {11}foo{0} {10}:{0} {5}prototype{40}($$){10}{}{0} {2}# whitespace allowed -{0} -{2}# additional samples from perl-test-cases.pl with ':prototype' added: -{5}sub{0} {11}mylink{0} {10}:{5}prototype{40}($$){0} {10}{}{0} {5}sub{0} {11}myvec{0} {10}:{5}prototype{40}($$$){0} {10}{}{0} -{5}sub{0} {11}myindex{0} {10}:{5}prototype{40}($$;$){0} {10}{}{0} {5}sub{0} {11}mysyswrite{0} {10}:{5}prototype{40}($$$;$){0} {10}{}{0} -{5}sub{0} {11}myreverse{0} {10}:{5}prototype{40}(@){0} {10}{}{0} {5}sub{0} {11}myjoin{0} {10}:{5}prototype{40}($@){0} {10}{}{0} -{5}sub{0} {11}mypop{0} {10}:{5}prototype{40}(\@){0} {10}{}{0} {5}sub{0} {11}mysplice{0} {10}:{5}prototype{40}(\@$$@){0} {10}{}{0} -{5}sub{0} {11}mykeys{0} {10}:{5}prototype{40}(\%){0} {10}{}{0} {5}sub{0} {11}myopen{0} {10}:{5}prototype{40}(*;$){0} {10}{}{0} -{5}sub{0} {11}mypipe{0} {10}:{5}prototype{40}(**){0} {10}{}{0} {5}sub{0} {11}mygrep{0} {10}:{5}prototype{40}(&@){0} {10}{}{0} -{5}sub{0} {11}myrand{0} {10}:{5}prototype{40}($){0} {10}{}{0} {5}sub{0} {11}mytime{0} {10}:{5}prototype{40}(){0} {10}{}{0} -{2}# backslash group notation to specify more than one allowed argument type -{5}sub{0} {11}myref{0} {10}:{5}prototype{40}(\[$@%&*]){0} {10}{}{0} - -{2}# additional attributes may complicate scanning for prototype syntax, -# for example (from https://metacpan.org/pod/perlsub): -# Lvalue subroutines -{0} -{5}my{0} {12}$val{10};{0} -{5}sub{0} {11}canmod{0} {10}:{0} {11}lvalue{0} {10}{{0} - {12}$val{10};{0} {2}# or: return $val; -{10}}{0} -{11}canmod{10}(){0} {10}={0} {4}5{10};{0} {2}# assigns to $val -{0} -{2}#-------------------------------------------------------------------------- -# perl-test-5220delta.pl -#-------------------------------------------------------------------------- -# New :const subroutine attribute -#-------------------------------------------------------------------------- -{0} -{5}my{0} {12}$x{0} {10}={0} {4}54321{10};{0} -{15}*INLINED{0} {10}={0} {5}sub{0} {10}:{0} {11}const{0} {10}{{0} {12}$x{0} {10}};{0} -{12}$x{10}++;{0} - -{2}# more examples of attributes -# (not 5.22 stuff, but some general examples for study, useful for -# handling subroutine signature and subroutine prototype highlighting) -{0} -{5}sub{0} {11}foo{0} {10}:{0} {11}lvalue{0} {10};{0} - -{5}package{0} {11}X{10};{0} -{5}sub{0} {11}Y{10}::{11}z{0} {10}:{0} {11}lvalue{0} {10}{{0} {4}1{0} {10}}{0} - -{5}package{0} {11}X{10};{0} -{5}sub{0} {11}foo{0} {10}{{0} {4}1{0} {10}}{0} -{5}package{0} {11}Y{10};{0} -{5}BEGIN{0} {10}{{0} {15}*bar{0} {10}={0} {10}\&{11}X{10}::{11}foo{10};{0} {10}}{0} -{5}package{0} {11}Z{10};{0} -{5}sub{0} {11}Y{10}::{11}bar{0} {10}:{0} {11}lvalue{0} {10};{0} - -{2}# built-in attributes for subroutines: -{11}lvalue{0} {11}method{0} {5}prototype{10}(..){0} {11}locked{0} {11}const{0} - -{2}#-------------------------------------------------------------------------- -# end of test file -#-------------------------------------------------------------------------- diff --git a/lexilla/test/examples/perl/x.pl b/lexilla/test/examples/perl/x.pl deleted file mode 100644 index 19288f2c9..000000000 --- a/lexilla/test/examples/perl/x.pl +++ /dev/null @@ -1,5 +0,0 @@ -use strict; -while ( $r ) { - printf ( "Example text \n" ); - sleep 1; -}
\ No newline at end of file diff --git a/lexilla/test/examples/perl/x.pl.styled b/lexilla/test/examples/perl/x.pl.styled deleted file mode 100644 index 74da4e911..000000000 --- a/lexilla/test/examples/perl/x.pl.styled +++ /dev/null @@ -1,5 +0,0 @@ -{5}use{0} {11}strict{10};{0} -{5}while{0} {10}({0} {12}$r{0} {10}){0} {10}{{0} - {5}printf{0} {10}({0} {6}"Example text \n"{0} {10});{0} - {5}sleep{0} {4}1{10};{0} -{10}}
\ No newline at end of file diff --git a/lexilla/test/examples/python/AllStyles.py b/lexilla/test/examples/python/AllStyles.py deleted file mode 100644 index a93df7500..000000000 --- a/lexilla/test/examples/python/AllStyles.py +++ /dev/null @@ -1,63 +0,0 @@ -# Enumerate all styles: 0 to 19 -# comment=1 - -# whitespace=0 - # w - -# number=2 -37 - -# double-quoted-string=3 -"str" - -# single-quoted-string=4 -'str' - -# keyword=5 -pass - -# triple-quoted-string=6 -'''str''' - -# triple-double-quoted-string=7 -"""str""" - -# class-name=8 -class ClassName: - pass - -# function-name=9 -def function_name(): - pass - -# operator=10 -1 + 3 - -# identifier=11 -identifier = 2 - -# comment-block=12 -## block - -# unclosed-string=13 -" unclosed - -# highlighted-identifier=14 -hilight = 2 - -# decorator=15 -@staticmethod -def fn(): pass - -a = 1 -# double-quoted-f-string=16 -f"{a}" - -# single-quoted-f-string=17 -f'{a}' - -# triple-quoted-f-string=18 -f'''{a}''' - -# double-triple-quoted-f-string=19 -f"""{a}""" diff --git a/lexilla/test/examples/python/AllStyles.py.styled b/lexilla/test/examples/python/AllStyles.py.styled deleted file mode 100644 index e824e9e4c..000000000 --- a/lexilla/test/examples/python/AllStyles.py.styled +++ /dev/null @@ -1,63 +0,0 @@ -{1}# Enumerate all styles: 0 to 19{0} -{1}# comment=1{0} - -{1}# whitespace=0{0} - {1}# w{0} - -{1}# number=2{0} -{2}37{0} - -{1}# double-quoted-string=3{0} -{3}"str"{0} - -{1}# single-quoted-string=4{0} -{4}'str'{0} - -{1}# keyword=5{0} -{5}pass{0} - -{1}# triple-quoted-string=6{0} -{6}'''str'''{0} - -{1}# triple-double-quoted-string=7{0} -{7}"""str"""{0} - -{1}# class-name=8{0} -{5}class{0} {8}ClassName{10}:{0} - {5}pass{0} - -{1}# function-name=9{0} -{5}def{0} {9}function_name{10}():{0} - {5}pass{0} - -{1}# operator=10{0} -{2}1{0} {10}+{0} {2}3{0} - -{1}# identifier=11{0} -{11}identifier{0} {10}={0} {2}2{0} - -{1}# comment-block=12{0} -{12}## block{0} - -{1}# unclosed-string=13{0} -{13}" unclosed -{0} -{1}# highlighted-identifier=14{0} -{14}hilight{0} {10}={0} {2}2{0} - -{1}# decorator=15{0} -{15}@staticmethod{0} -{5}def{0} {9}fn{10}():{0} {5}pass{0} - -{11}a{0} {10}={0} {2}1{0} -{1}# double-quoted-f-string=16{0} -{16}f"{{11}a{16}}"{0} - -{1}# single-quoted-f-string=17{0} -{17}f'{{11}a{17}}'{0} - -{1}# triple-quoted-f-string=18{0} -{18}f'''{{11}a{18}}'''{0} - -{1}# double-triple-quoted-f-string=19{0} -{19}f"""{{11}a{19}}"""{0} diff --git a/lexilla/test/examples/python/SciTE.properties b/lexilla/test/examples/python/SciTE.properties deleted file mode 100644 index 7618b0731..000000000 --- a/lexilla/test/examples/python/SciTE.properties +++ /dev/null @@ -1,3 +0,0 @@ -lexer.*.py=python -keywords.*.py=class def else for if import in pass print return while with yield -keywords2.*.py=hilight diff --git a/lexilla/test/examples/python/x.py b/lexilla/test/examples/python/x.py deleted file mode 100644 index 57833c059..000000000 --- a/lexilla/test/examples/python/x.py +++ /dev/null @@ -1,19 +0,0 @@ -# Convert all punctuation characters except '_', '*', and '.' into spaces. -def depunctuate(s): - '''A docstring''' - """Docstring 2""" - d = "" - for ch in s: - if ch in 'abcde': - d = d + ch - else: - d = d + " " - return d - -import contextlib - -@contextlib.contextmanager -def singleuse(): - print("Before") - yield -with singleuse(): pass diff --git a/lexilla/test/examples/python/x.py.styled b/lexilla/test/examples/python/x.py.styled deleted file mode 100644 index 8ba7513c8..000000000 --- a/lexilla/test/examples/python/x.py.styled +++ /dev/null @@ -1,19 +0,0 @@ -{1}# Convert all punctuation characters except '_', '*', and '.' into spaces.{0} -{5}def{0} {9}depunctuate{10}({11}s{10}):{0} - {6}'''A docstring'''{0} - {7}"""Docstring 2"""{0} - {11}d{0} {10}={0} {3}""{0} - {5}for{0} {11}ch{0} {5}in{0} {11}s{10}:{0} - {5}if{0} {11}ch{0} {5}in{0} {4}'abcde'{10}:{0} - {11}d{0} {10}={0} {11}d{0} {10}+{0} {11}ch{0} - {5}else{10}:{0} - {11}d{0} {10}={0} {11}d{0} {10}+{0} {3}" "{0} - {5}return{0} {11}d{0} - -{5}import{0} {11}contextlib{0} - -{15}@contextlib{10}.{11}contextmanager{0} -{5}def{0} {9}singleuse{10}():{0} - {5}print{10}({3}"Before"{10}){0} - {5}yield{0} -{5}with{0} {11}singleuse{10}():{0} {5}pass{0} diff --git a/lexilla/test/examples/raku/SciTE.properties b/lexilla/test/examples/raku/SciTE.properties deleted file mode 100644 index 065af1363..000000000 --- a/lexilla/test/examples/raku/SciTE.properties +++ /dev/null @@ -1,113 +0,0 @@ -lexer.*.p6=raku -# Keywords (base) -keywords.$(file.patterns.raku)=BEGIN CATCH CHECK CONTROL END ENTER EVAL FIRST \ - INIT KEEP LAST LEAVE NEXT POST PRE START TEMP UNDO after also andthen as \ - async augment bag before but category circumfix class cmp complex constant \ - contend default defer div does dynamic else elsif enum eq eqv extra fail \ - fatal ff fff for gather gcd ge given grammar gt handles has if infix is lcm \ - le leave leg let lift loop lt macro make maybe method mix mod module multi \ - ne not o only oo or orelse orwith postcircumfix postfix prefix proto regex \ - repeat require return-rw returns role rule size_t slang start str submethod \ - subset supersede take temp term token trusts try unit unless until when \ - where while with without x xor xx -# Keywords (functions) -keywords2.$(file.patterns.raku)=ACCEPTS AT-KEY EVALFILE EXISTS-KEY Filetests \ - IO STORE abs accept acos acosec acosech acosh acotan acotanh alarm and \ - antipairs asec asech asin asinh atan atan2 atanh base bind binmode bless \ - break caller ceiling chars chdir chmod chomp chop chr chroot chrs cis close \ - closedir codes comb conj connect contains continue cos cosec cosech cosh \ - cotan cotanh crypt dbm defined die do dump each elems eof exec exists exit \ - exp expmod fc fcntl fileno flat flip flock floor fmt fork formats functions \ - get getc getpeername getpgrp getppid getpriority getsock gist glob gmtime \ - goto grep hyper import index int invert ioctl is-prime iterator join keyof \ - keys kill kv last lazy lc lcfirst lines link list listen local localtime \ - lock log log10 lsb lstat map match mkdir msb msg my narrow new next no of \ - open ord ords our pack package pairs path pick pipe polymod pop pos pred \ - print printf prototype push quoting race rand read readdir readline readlink \ - readpipe recv redo ref rename requires reset return reverse rewinddir rindex \ - rmdir roots round samecase say scalar sec sech seek seekdir select semctl \ - semget semop send set setpgrp setpriority setsockopt shift shm shutdown sign \ - sin sinh sleep sockets sort splice split sprintf sqrt srand stat state study \ - sub subst substr substr-rw succ symlink sys syscall system syswrite tan tanh \ - tc tclc tell telldir tie time times trans trim trim-leading trim-trailing \ - truncate uc ucfirst unimatch uniname uninames uniprop uniprops unival unlink \ - unpack unpolar unshift untie use utime values wait waitpid wantarray warn \ - wordcase words write -# Keywords (types) -keywords3.$(file.patterns.raku)=AST Any Block Bool CallFrame Callable Code \ - Collation Compiler Complex ComplexStr Cool CurrentThreadScheduler Date \ - DateTime Dateish Distribution Distribution::Hash Distribution::Locally \ - Distribution::Path Duration Encoding Encoding::Registry Endian FatRat \ - ForeignCode HyperSeq HyperWhatever Instant Int IntStr Junction Label \ - Lock::Async Macro Method Mu Nil Num NumStr Numeric ObjAt Parameter Perl \ - PredictiveIterator Proxy RaceSeq Rat RatStr Rational Real Routine \ - Routine::WrapHandle Scalar Sequence Signature Str StrDistance Stringy Sub \ - Submethod Telemetry Telemetry::Instrument::Thread \ - Telemetry::Instrument::ThreadPool Telemetry::Instrument::Usage \ - Telemetry::Period Telemetry::Sampler UInt ValueObjAt Variable Version \ - Whatever WhateverCode atomicint bit bool buf buf1 buf16 buf2 buf32 buf4 \ - buf64 buf8 int int1 int16 int2 int32 int4 int64 int8 long longlong num \ - num32 num64 rat rat1 rat16 rat2 rat32 rat4 rat64 rat8 uint uint1 uint16 \ - uint2 uint32 uint4 uint64 uint8 utf16 utf32 utf8 -# Keywords (types composite) -keywords4.$(file.patterns.raku)=Array Associative Bag BagHash Baggy Blob Buf \ - Capture Enumeration Hash Iterable Iterator List Map Mix MixHash Mixy NFC NFD \ - NFKC NFKD Pair Positional PositionalBindFailover PseudoStash QuantHash Range \ - Seq Set SetHash Setty Slip Stash Uni utf8 -# Keywords (types domain specific) -keywords5.$(file.patterns.raku)=Attribute Cancellation Channel CompUnit \ - CompUnit::Repository CompUnit::Repository::FileSystem \ - CompUnit::Repository::Installation Distro Grammar IO IO::ArgFiles \ - IO::CatHandle IO::Handle IO::Notification IO::Path IO::Path::Cygwin \ - IO::Path::QNX IO::Path::Unix IO::Path::Win32 IO::Pipe IO::Socket \ - IO::Socket::Async IO::Socket::INET IO::Spec IO::Spec::Cygwin \ - IO::Spec::QNX IO::Spec::Unix IO::Spec::Win32 IO::Special Kernel Lock \ - Match Order Pod::Block Pod::Block::Code Pod::Block::Comment \ - Pod::Block::Declarator Pod::Block::Named Pod::Block::Para Pod::Block::Table \ - Pod::Defn Pod::FormattingCode Pod::Heading Pod::Item Proc Proc::Async \ - Promise Regex Scheduler Semaphore Supplier Supplier::Preserving Supply \ - Systemic Tap Thread ThreadPoolScheduler VM -# Keywords (types domain exceptions) -keywords6.$(file.patterns.raku)=Backtrace Backtrace::Frame CX::Done CX::Emit \ - CX::Last CX::Next CX::Proceed CX::Redo CX::Return CX::Succeed CX::Take \ - CX::Warn Exception Failure X::AdHoc X::Anon::Augment X::Anon::Multi \ - X::Assignment::RO X::Attribute::NoPackage X::Attribute::Package \ - X::Attribute::Required X::Attribute::Undeclared X::Augment::NoSuchType \ - X::Bind X::Bind::NativeType X::Bind::Slice X::Caller::NotDynamic \ - X::Channel::ReceiveOnClosed X::Channel::SendOnClosed X::Comp \ - X::Composition::NotComposable X::Constructor::Positional X::Control \ - X::ControlFlow X::ControlFlow::Return X::DateTime::TimezoneClash \ - X::Declaration::Scope X::Declaration::Scope::Multi X::Does::TypeObject \ - X::Dynamic::NotFound X::Eval::NoSuchLang X::Export::NameClash X::IO \ - X::IO::Chdir X::IO::Chmod X::IO::Copy X::IO::Cwd X::IO::Dir X::IO::DoesNotExist \ - X::IO::Link X::IO::Mkdir X::IO::Move X::IO::Rename X::IO::Rmdir \ - X::IO::Symlink X::IO::Unlink X::Inheritance::NotComposed \ - X::Inheritance::Unsupported X::Method::InvalidQualifier X::Method::NotFound \ - X::Method::Private::Permission X::Method::Private::Unqualified \ - X::Mixin::NotComposable X::NYI X::NoDispatcher X::Numeric::Real \ - X::OS X::Obsolete X::OutOfRange X::Package::Stubbed X::Parameter::Default \ - X::Parameter::MultipleTypeConstraints X::Parameter::Placeholder \ - X::Parameter::Twigil X::Parameter::WrongOrder X::Phaser::Multiple \ - X::Phaser::PrePost X::Placeholder::Block X::Placeholder::Mainline \ - X::Pod X::Proc::Async X::Proc::Async::AlreadyStarted X::Proc::Async::BindOrUse \ - X::Proc::Async::CharsOrBytes X::Proc::Async::MustBeStarted \ - X::Proc::Async::OpenForWriting X::Proc::Async::TapBeforeSpawn \ - X::Proc::Unsuccessful X::Promise::CauseOnlyValidOnBroken X::Promise::Vowed \ - X::Redeclaration X::Role::Initialization X::Scheduler::CueInNaNSeconds \ - X::Seq::Consumed X::Sequence::Deduction X::Signature::NameClash \ - X::Signature::Placeholder X::Str::Numeric X::StubCode X::Syntax \ - X::Syntax::Augment::WithoutMonkeyTyping X::Syntax::Comment::Embedded \ - X::Syntax::Confused X::Syntax::InfixInTermPosition X::Syntax::Malformed \ - X::Syntax::Missing X::Syntax::NegatedPair X::Syntax::NoSelf \ - X::Syntax::Number::RadixOutOfRange X::Syntax::P5 X::Syntax::Perl5Var \ - X::Syntax::Regex::Adverb X::Syntax::Regex::SolitaryQuantifier \ - X::Syntax::Reserved X::Syntax::Self::WithoutObject \ - X::Syntax::Signature::InvocantMarker X::Syntax::Term::MissingInitializer \ - X::Syntax::UnlessElse X::Syntax::Variable::Match X::Syntax::Variable::Numeric \ - X::Syntax::Variable::Twigil X::Temporal X::Temporal::InvalidFormat \ - X::TypeCheck X::TypeCheck::Assignment X::TypeCheck::Binding \ - X::TypeCheck::Return X::TypeCheck::Splice X::Undeclared -# Keywords (adverbs) -keywords7.$(file.patterns.raku)=D a array b backslash c closure delete double \ - exec exists f function h hash heredoc k kv p q qq quotewords s scalar single \ - sym to v val w words ww x diff --git a/lexilla/test/examples/raku/x.p6 b/lexilla/test/examples/raku/x.p6 deleted file mode 100644 index 0cbdb6a57..000000000 --- a/lexilla/test/examples/raku/x.p6 +++ /dev/null @@ -1,54 +0,0 @@ -use v6; - -# Normal single line comment -my Int $i = 0; -my Rat $r = 3.142; -my Str $s = "Hello, world! \$i == $i and \$r == $r"; -say $s; - -#`{{ -*** This is a multi-line comment *** -}} - -my @array = #`[[ inline comment ]] <f fo foo food>; -my %hash = ( AAA => 1, BBB => 2 ); - -say q[This back\slash stays]; -say q[This back\\slash stays]; # Identical output -say Q:q!Just a literal "\n" here!; - -=begin pod -POD Documentation... -=end pod - -say qq:to/END/; -A multi-line -string with interpolated vars: $i, $r -END - -sub function { - return q:to/END/; -Here is -some multi-line -string -END -} - -my $func = &function; -say $func(); - -grammar Calculator { - token TOP { <calc-op> } - proto rule calc-op {*} - rule calc-op:sym<add> { <num> '+' <num> } - rule calc-op:sym<sub> { <num> '-' <num> } - token num { \d+ } -} - -class Calculations { - method TOP ($/) { make $<calc-op>.made; } - method calc-op:sym<add> ($/) { make [+] $<num>; } - method calc-op:sym<sub> ($/) { make [-] $<num>; } -} - -say Calculator.parse('2 + 3', actions => Calculations).made; diff --git a/lexilla/test/examples/raku/x.p6.styled b/lexilla/test/examples/raku/x.p6.styled deleted file mode 100644 index f23902104..000000000 --- a/lexilla/test/examples/raku/x.p6.styled +++ /dev/null @@ -1,54 +0,0 @@ -{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} diff --git a/lexilla/test/examples/ruby/SciTE.properties b/lexilla/test/examples/ruby/SciTE.properties deleted file mode 100644 index a4be7e9c6..000000000 --- a/lexilla/test/examples/ruby/SciTE.properties +++ /dev/null @@ -1,2 +0,0 @@ -lexer.*.rb=ruby -keywords.*.rb=class def end diff --git a/lexilla/test/examples/ruby/x.rb b/lexilla/test/examples/ruby/x.rb deleted file mode 100644 index d1bb0f0a8..000000000 --- a/lexilla/test/examples/ruby/x.rb +++ /dev/null @@ -1,6 +0,0 @@ -class Demo - def test # A test - i = 1 - puts "Example" - end -end
\ No newline at end of file diff --git a/lexilla/test/examples/ruby/x.rb.styled b/lexilla/test/examples/ruby/x.rb.styled deleted file mode 100644 index 904d07dd3..000000000 --- a/lexilla/test/examples/ruby/x.rb.styled +++ /dev/null @@ -1,6 +0,0 @@ -{5}class{0} {8}Demo{0} - {5}def{0} {9}test{0} {2}# A test{0} - {11}i{0} {10}={0} {4}1{0} - {11}puts{0} {6}"Example"{0} - {5}end{0} -{5}end
\ No newline at end of file diff --git a/lexilla/test/examples/tcl/SciTE.properties b/lexilla/test/examples/tcl/SciTE.properties deleted file mode 100644 index 8cecd97b4..000000000 --- a/lexilla/test/examples/tcl/SciTE.properties +++ /dev/null @@ -1,2 +0,0 @@ -lexer.*.tcl=tcl -keywords.*.tcl=proc set socket vwait diff --git a/lexilla/test/examples/tcl/x.tcl b/lexilla/test/examples/tcl/x.tcl deleted file mode 100644 index d1260fc82..000000000 --- a/lexilla/test/examples/tcl/x.tcl +++ /dev/null @@ -1,13 +0,0 @@ -# tcl tests - -#simple example - -proc Echo_Server {port} { - set s [socket -server EchoAccept $port] - vwait forever; -} - -# Bug #1947 - -$s($i,"n") -set n $showArray($i,"neighbor") diff --git a/lexilla/test/examples/tcl/x.tcl.styled b/lexilla/test/examples/tcl/x.tcl.styled deleted file mode 100644 index 66af41327..000000000 --- a/lexilla/test/examples/tcl/x.tcl.styled +++ /dev/null @@ -1,13 +0,0 @@ -{2}# tcl tests -{0} -{2}#simple example -{0} -{12}proc{0} {7}Echo_Server{0} {6}{{7}port{6}}{0} {6}{ -{0} {12}set{0} {7}s{0} {6}[{12}socket{0} {10}-server{0} {7}EchoAccept{0} {8}$port{6}] -{0} {12}vwait{0} {7}forever{0}; -{6}} -{0} -{2}# Bug #1947 -{0} -{8}$s{6}({8}$i{6},{5}"n"{6}) -{12}set{0} {7}n{0} {8}$showArray{6}({8}$i{6},{5}"neighbor"{6}) diff --git a/lexilla/test/examples/vb/SciTE.properties b/lexilla/test/examples/vb/SciTE.properties deleted file mode 100644 index 54fead3f1..000000000 --- a/lexilla/test/examples/vb/SciTE.properties +++ /dev/null @@ -1,2 +0,0 @@ -lexer.*.vb=vb -keywords.*.vb=as dim or string diff --git a/lexilla/test/examples/vb/x.vb b/lexilla/test/examples/vb/x.vb deleted file mode 100644 index a672831a0..000000000 --- a/lexilla/test/examples/vb/x.vb +++ /dev/null @@ -1,13 +0,0 @@ -' String" -Dim a As String = "hello, world" -Dim b As String = "hello world" -Dim c As String = "Joe said ""Hello"" to me" -Dim d As String = "\\\\server\\share\\file.txt" -' Character -""C "c"C "cc"C -' Date -d = #5/31/1993# or # 01/01/0001 12:00:00AM # -' Number -123_456___789 -123_ -&b10101_01010 diff --git a/lexilla/test/examples/vb/x.vb.styled b/lexilla/test/examples/vb/x.vb.styled deleted file mode 100644 index 1d19c8ae8..000000000 --- a/lexilla/test/examples/vb/x.vb.styled +++ /dev/null @@ -1,13 +0,0 @@ -{1}' String" -{3}Dim{0} {7}a{0} {3}As{0} {3}String{0} {6}={0} {4}"hello, world"{0} -{3}Dim{0} {7}b{0} {3}As{0} {3}String{0} {6}={0} {4}"hello world"{0} -{3}Dim{0} {7}c{0} {3}As{0} {3}String{0} {6}={0} {4}"Joe said ""Hello"" to me"{0} -{3}Dim{0} {7}d{0} {3}As{0} {3}String{0} {6}={0} {4}"\\\\server\\share\\file.txt"{0} -{1}' Character -{4}""C{0} {4}"c"C{0} {4}"cc"C{0} -{1}' Date -{7}d{0} {6}={0} {8}#5/31/1993#{0} {3}or{0} {8}# 01/01/0001 12:00:00AM #{0} -{1}' Number -{2}123_456___789{0} -{2}123_{0} -{2}&b10101_01010{0} |