diff options
author | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2015-05-25 22:02:31 +0200 |
---|---|---|
committer | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2015-05-25 22:02:31 +0200 |
commit | bae8cd712c167522a95a093296453a54dde4a524 (patch) | |
tree | 1523fcf738c9dbd0b6d96222ccd693faa2938060 /lib | |
parent | 83f18d2578288fe71fca409e4f03434346b0d5b7 (diff) | |
download | sciteco-bae8cd712c167522a95a093296453a54dde4a524.tar.gz |
extended <EN> command and used it to optimize "lexer.test..." macros
* EN may now be used for matching file names (similar to fnmatch(3)).
This is used to check the current buffers file extension in the
lexer configuration macros instead of using expensive Q-Register
manipulations.
This halves the overall startup time - it is now acceptable even
with the current amount of lexer configurations.
* EN may now be used for checking file types.
session.tes has been simplified.
* BREAKS macro portability (EN now has 2 string arguments).
* The Globber class has been extended to allow filtering of
glob results by file type.
Diffstat (limited to 'lib')
72 files changed, 333 insertions, 246 deletions
diff --git a/lib/lexer.tes b/lib/lexer.tes index bf6b475..309c752 100644 --- a/lib/lexer.tes +++ b/lib/lexer.tes @@ -7,20 +7,17 @@ [* EQ.h :SQ_ ]* } -! Match Q-Reg "_" against end of current doc's file name ! -@[lexer.checkname]{ - [* EQ* ZJ I H:SQ_ ]* -} - @[lexer.auto]{ ! Set up brace lightning ! :M[color.bracelight],34M[color.set] :M[color.error],35M[color.set] + [_ } ! Automatically mung all the lexers and add them to "lexer.auto" ! [* - EQ.[lexers] ENQ[$SCITECOPATH]/lexers/*.tes J + EQ.[lexers] + [_ 1ENQ[$SCITECOPATH]/lexers/*.tes ]_ J <:L;R 0X.[filename] 4R .U.p <-A-^^/"= 1; ':R;> .,Q.pX.[name] EMQ.[filename] @@ -31,4 +28,6 @@ ]* ! append "end" label to "lexer.auto" ! -:[lexer.auto]!end! +:@[lexer.auto]{ + !end! ]_ +} diff --git a/lib/lexers/abaqus.tes b/lib/lexers/abaqus.tes index a85a4fb..d3facee 100644 --- a/lib/lexers/abaqus.tes +++ b/lib/lexers/abaqus.tes @@ -1,8 +1,10 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.abaqus]{ [_ - _.[inp,dat,msg]M[lexer.checkname] -]_ } +@[lexer.test.abaqus]{ + :EN*.inpQ*U.r + Q.r"F :EN*.datQ*U.r ' + Q.r"F :EN*.msgQ*U.r ' +Q.r} @[lexer.set.abaqus]{ ESSETLEXER,SCLEX_ABAQUS diff --git a/lib/lexers/ada.tes b/lib/lexers/ada.tes index 2bdea8b..52f2673 100644 --- a/lib/lexers/ada.tes +++ b/lib/lexers/ada.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.ada]{ [_ - _.[ads,adb]M[lexer.checkname] -]_ } +@[lexer.test.ada]{ + :EN*.adsQ*U.r + Q.r"F :EN*.adbQ*U.r ' +Q.r} @[lexer.set.ada]{ ESSETLEXER,SCLEX_ADA diff --git a/lib/lexers/asl.tes b/lib/lexers/asl.tes index 96ccc23..e47b0cf 100644 --- a/lib/lexers/asl.tes +++ b/lib/lexers/asl.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.asl]{ [_ - _.[asl,dsl]M[lexer.checkname] -]_ } +@[lexer.test.asl]{ + :EN*.aslQ*U.r + Q.r"F :EN*.dslQ*U.r ' +Q.r} @[lexer.set.asl]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/asm.tes b/lib/lexers/asm.tes index e63f773..6bd5346 100644 --- a/lib/lexers/asm.tes +++ b/lib/lexers/asm.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.asm]{ [_ - _.asmM[lexer.checkname] -]_ } +@[lexer.test.asm]{ + :EN*.asmQ* +} @[lexer.set.asm]{ ESSETLEXER,SCLEX_ASM diff --git a/lib/lexers/ave.tes b/lib/lexers/ave.tes index 6ee8730..3b80236 100644 --- a/lib/lexers/ave.tes +++ b/lib/lexers/ave.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.ave]{ [_ - _.aveM[lexer.checkname] -]_ } +@[lexer.test.ave]{ + :EN*.aveQ* +} @[lexer.set.ave]{ ESSETLEXER,SCLEX_AVE diff --git a/lib/lexers/avs.tes b/lib/lexers/avs.tes index 11cf442..de4ec70 100644 --- a/lib/lexers/avs.tes +++ b/lib/lexers/avs.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.avs]{ [_ - _.[avs,avsi]M[lexer.checkname] -]_ } +@[lexer.test.avs]{ + :EN*.avsQ*U.r + Q.r"F :EN*.avsiQ*U.r ' +Q.r} @[lexer.set.avs]{ ESSETLEXER,SCLEX_AVS diff --git a/lib/lexers/awk.tes b/lib/lexers/awk.tes index e9b98a0..e069508 100644 --- a/lib/lexers/awk.tes +++ b/lib/lexers/awk.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.awk]{ [_ - _.awkM[lexer.checkname] -]_ } +@[lexer.test.awk]{ + :EN*.awkQ* +} @[lexer.set.awk]{ ESSETLEXER,SCLEX_PERL diff --git a/lib/lexers/baan.tes b/lib/lexers/baan.tes index 522d779..a005bfc 100644 --- a/lib/lexers/baan.tes +++ b/lib/lexers/baan.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.baan]{ [_ - _.[bc,cln]M[lexer.checkname] -]_ } +@[lexer.test.baan]{ + :EN*.bcQ*U.r + Q.r"F :EN*.clnQ*U.r ' +Q.r} @[lexer.set.baan]{ ESSETLEXER,SCLEX_BAAN diff --git a/lib/lexers/bash.tes b/lib/lexers/bash.tes index 80a3bbb..33cab3a 100644 --- a/lib/lexers/bash.tes +++ b/lib/lexers/bash.tes @@ -2,13 +2,13 @@ It's called bash.tes only because SciTE calls it this way internally ! -@[lexer.test.bash]{ [_ - _#!M[sh,bash,ksh]M[lexer.checkheader]"S - -1 - | - _[.sh,.bsh,configure,.ksh]M[lexer.checkname] - ' -]_ } +@[lexer.test.bash]{ + _#!M[sh,bash,ksh]M[lexer.checkheader]U.r + Q.r"F :EN*.shQ*U.r ' + Q.r"F :EN*.bshQ*U.r ' + Q.r"F :EN*/configureQ*U.r ' + Q.r"F :EN*.kshQ*U.r ' +Q.r} @[lexer.set.bash]{ ESSETLEXER,SCLEX_BASH diff --git a/lib/lexers/batch.tes b/lib/lexers/batch.tes index 09c8649..c8b8100 100644 --- a/lib/lexers/batch.tes +++ b/lib/lexers/batch.tes @@ -1,8 +1,10 @@ ! DOS, Windows, OS/2 Batch Files ! -@[lexer.test.batch]{ [_ - _.[bat,cmd,nt]M[lexer.checkname] -]_ } +@[lexer.test.batch]{ + :EN*.batQ*U.r + Q.r"F :EN*.cmdQ*U.r ' + Q.r"F :EN*.ntQ*U.r ' +Q.r} @[lexer.set.batch]{ ESSETLEXER,SCLEX_BATCH diff --git a/lib/lexers/blitzbasic.tes b/lib/lexers/blitzbasic.tes index 618661c..e815473 100644 --- a/lib/lexers/blitzbasic.tes +++ b/lib/lexers/blitzbasic.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.blitzbasic]{ [_ - _.bbM[lexer.checkname] -]_ } +@[lexer.test.blitzbasic]{ + :EN*.bbQ* +} @[lexer.set.blitzbasic]{ ESSETLEXER,SCLEX_BLITZBASIC diff --git a/lib/lexers/caml.tes b/lib/lexers/caml.tes index f9827e2..13026cb 100644 --- a/lib/lexers/caml.tes +++ b/lib/lexers/caml.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.caml]{ [_ - _.[ml,mli]M[lexer.checkname] -]_ } +@[lexer.test.caml]{ + :EN*.mlQ*U.r + Q.r"F :EN*.mliQ*U.r ' +Q.r} @[lexer.set.caml]{ ESSETLEXER,SCLEX_CAML diff --git a/lib/lexers/ch.tes b/lib/lexers/ch.tes index f7046c7..560c947 100644 --- a/lib/lexers/ch.tes +++ b/lib/lexers/ch.tes @@ -1,8 +1,10 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.ch]{ [_ - _.[ch,chf,chs]M[lexer.checkname] -]_ } +@[lexer.test.ch]{ + :EN*.chQ*U.r + Q.r"F :EN*.chfQ*U.r ' + Q.r"F :EN*.chsQ*U.r ' +Q.r} @[lexer.set.ch]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/cmake.tes b/lib/lexers/cmake.tes index b6028bc..feb32e8 100644 --- a/lib/lexers/cmake.tes +++ b/lib/lexers/cmake.tes @@ -1,8 +1,10 @@ ! CMake Lexing ! -@[lexer.test.cmake]{ [_ - _[CMakeLists.txt,.cmake,.cmake.in,.ctest,.ctest.in]M[lexer.checkname] -]_ } +@[lexer.test.cmake]{ + :EN*/CMakeLists.txtQ*U.r + Q.r"F :EN*.cmake*Q*U.r ' + Q.r"F :EN*.ctest*Q*U.r ' +Q.r} @[lexer.set.cmake]{ ESSETLEXER,SCLEX_CMAKE diff --git a/lib/lexers/cobol.tes b/lib/lexers/cobol.tes index f54ccc9..4be4a0a 100644 --- a/lib/lexers/cobol.tes +++ b/lib/lexers/cobol.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.cobol]{ [_ - _.cobM[lexer.checkname] -]_ } +@[lexer.test.cobol]{ + :EN*.cobQ* +} @[lexer.set.cobol]{ ESSETLEXER,SCLEX_COBOL diff --git a/lib/lexers/cpp.tes b/lib/lexers/cpp.tes index a080c7c..6a77c95 100644 --- a/lib/lexers/cpp.tes +++ b/lib/lexers/cpp.tes @@ -1,8 +1,19 @@ ! C/C++ Lexing ! -@[lexer.test.cpp]{ [_ - _.[c,cc,cpp,cxx,h,hh,hpp,hxx,ipp,m,mm,sma]M[lexer.checkname] -]_ } +@[lexer.test.cpp]{ + :EN*.cQ*U.r + Q.r"F :EN*.ccQ*U.r ' + Q.r"F :EN*.cppQ*U.r ' + Q.r"F :EN*.cxxQ*U.r ' + Q.r"F :EN*.hQ*U.r ' + Q.r"F :EN*.hhQ*U.r ' + Q.r"F :EN*.hppQ*U.r ' + Q.r"F :EN*.hxxQ*U.r ' + Q.r"F :EN*.ippQ*U.r ' + Q.r"F :EN*.mQ*U.r ' + Q.r"F :EN*.mmQ*U.r ' + Q.r"F :EN*.smaQ*U.r ' +Q.r} @[lexer.set.cpp]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/cs.tes b/lib/lexers/cs.tes index 8121c97..6b3ae4a 100644 --- a/lib/lexers/cs.tes +++ b/lib/lexers/cs.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.cs]{ [_ - _.csM[lexer.checkname] -]_ } +@[lexer.test.cs]{ + :EN*.csQ* +} @[lexer.set.cs]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/d.tes b/lib/lexers/d.tes index 5ca421d..1f102f0 100644 --- a/lib/lexers/d.tes +++ b/lib/lexers/d.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.d]{ [_ - _.dM[lexer.checkname] -]_ } +@[lexer.test.d]{ + :EN*.dQ* +} @[lexer.set.d]{ ESSETLEXER,SCLEX_D diff --git a/lib/lexers/diff.tes b/lib/lexers/diff.tes index fb1af2b..cd01708 100644 --- a/lib/lexers/diff.tes +++ b/lib/lexers/diff.tes @@ -1,8 +1,9 @@ ! Patch/Diff Files ! -@[lexer.test.diff]{ [_ - _.[diff,patch]M[lexer.checkname] -]_ } +@[lexer.test.diff]{ + :EN*.diffQ*U.r + Q.r"F :EN*.patchQ*U.r ' +Q.r} @[lexer.set.diff]{ ESSETLEXER,SCLEX_DIFF diff --git a/lib/lexers/docbook.tes b/lib/lexers/docbook.tes index 58e0988..6417f76 100644 --- a/lib/lexers/docbook.tes +++ b/lib/lexers/docbook.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.docbook]{ [_ - _.docbookM[lexer.checkname] -]_ } +@[lexer.test.docbook]{ + :EN*.docbookQ* +} @[lexer.set.docbook]{ ESSETLEXER,SCLEX_HYPERTEXT diff --git a/lib/lexers/eiffel.tes b/lib/lexers/eiffel.tes index aa53ae3..8277a10 100644 --- a/lib/lexers/eiffel.tes +++ b/lib/lexers/eiffel.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.eiffel]{ [_ - _.eM[lexer.checkname] -]_ } +@[lexer.test.eiffel]{ + :EN*.eQ* +} @[lexer.set.eiffel]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/f77.tes b/lib/lexers/f77.tes index 9599090..c0d2fca 100644 --- a/lib/lexers/f77.tes +++ b/lib/lexers/f77.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.f77]{ [_ - _.[f,for]M[lexer.checkname] -]_ } +@[lexer.test.f77]{ + :EN*.fQ*U.r + Q.r"F :EN*.forQ*U.r ' +Q.r} @[lexer.set.f77]{ ESSETLEXER,SCLEX_F77 diff --git a/lib/lexers/f95.tes b/lib/lexers/f95.tes index 0b4bba1..dbd60f9 100644 --- a/lib/lexers/f95.tes +++ b/lib/lexers/f95.tes @@ -1,8 +1,10 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.f95]{ [_ - _.[f90,f95,f2k]M[lexer.checkname] -]_ } +@[lexer.test.f95]{ + :EN*.f90Q*U.r + Q.r"F :EN*.f95Q*U.r ' + Q.r"F :EN*.f2kQ*U.r ' +Q.r} @[lexer.set.f95]{ ESSETLEXER,SCLEX_FORTRAN diff --git a/lib/lexers/flagship.tes b/lib/lexers/flagship.tes index bb79439..a3de658 100644 --- a/lib/lexers/flagship.tes +++ b/lib/lexers/flagship.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.flagship]{ [_ - _.prgM[lexer.checkname] -]_ } +@[lexer.test.flagship]{ + :EN*.prgQ* +} @[lexer.set.flagship]{ ESSETLEXER,SCLEX_FLAGSHIP diff --git a/lib/lexers/flash.tes b/lib/lexers/flash.tes index b039219..7924394 100644 --- a/lib/lexers/flash.tes +++ b/lib/lexers/flash.tes @@ -1,8 +1,10 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.flash]{ [_ - _.[as,asc,jsfl]M[lexer.checkname] -]_ } +@[lexer.test.flash]{ + :EN*.asQ*U.r + Q.r"F :EN*.ascQ*U.r ' + Q.r"F :EN*.jsflQ*U.r ' +Q.r} @[lexer.set.flash]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/freebasic.tes b/lib/lexers/freebasic.tes index 12e0263..471309a 100644 --- a/lib/lexers/freebasic.tes +++ b/lib/lexers/freebasic.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.freebasic]{ [_ - _.[bas,bi]M[lexer.checkname] -]_ } +@[lexer.test.freebasic]{ + :EN*.basQ*U.r + Q.r"F :EN*.biQ*U.r ' +Q.r} @[lexer.set.freebasic]{ ESSETLEXER,SCLEX_FREEBASIC diff --git a/lib/lexers/gap.tes b/lib/lexers/gap.tes index affa2ea..9e85e36 100644 --- a/lib/lexers/gap.tes +++ b/lib/lexers/gap.tes @@ -1,8 +1,10 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.gap]{ [_ - _.[g,gd,gi]M[lexer.checkname] -]_ } +@[lexer.test.gap]{ + :EN*.gQ*U.r + Q.r"F :EN*.gdQ*U.r ' + Q.r"F :EN*.giQ*U.r ' +Q.r} @[lexer.set.gap]{ ESSETLEXER,SCLEX_GAP diff --git a/lib/lexers/go.tes b/lib/lexers/go.tes index 8ae0826..2b2eaef 100644 --- a/lib/lexers/go.tes +++ b/lib/lexers/go.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.go]{ [_ - _.goM[lexer.checkname] -]_ } +@[lexer.test.go]{ + :EN*.goQ* +} @[lexer.set.go]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/html.tes b/lib/lexers/html.tes index e3bde6a..ddc6764 100644 --- a/lib/lexers/html.tes +++ b/lib/lexers/html.tes @@ -1,8 +1,22 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.html]{ [_ - _.[html,htm,asp,shtml,htd,jsp,xhtml,php3,phtml,php,htt,cfm,tpl,dtd,hta]M[lexer.checkname] -]_ } +@[lexer.test.html]{ + :EN*.htmlQ*U.r + Q.r"F :EN*.htmQ*U.r ' + Q.r"F :EN*.aspQ*U.r ' + Q.r"F :EN*.shtmlQ*U.r ' + Q.r"F :EN*.htdQ*U.r ' + Q.r"F :EN*.jspQ*U.r ' + Q.r"F :EN*.xhtmlQ*U.r ' + Q.r"F :EN*.php3Q*U.r ' + Q.r"F :EN*.phtmlQ*U.r ' + Q.r"F :EN*.phpQ*U.r ' + Q.r"F :EN*.httQ*U.r ' + Q.r"F :EN*.cfmQ*U.r ' + Q.r"F :EN*.tplQ*U.r ' + Q.r"F :EN*.dtdQ*U.r ' + Q.r"F :EN*.htaQ*U.r ' +Q.r} @[lexer.set.html]{ ESSETLEXER,SCLEX_HYPERTEXT diff --git a/lib/lexers/idl.tes b/lib/lexers/idl.tes index 9a469b5..3b7d25a 100644 --- a/lib/lexers/idl.tes +++ b/lib/lexers/idl.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.idl]{ [_ - _.[idl,odl]M[lexer.checkname] -]_ } +@[lexer.test.idl]{ + :EN*.idlQ*U.r + Q.r"F :EN*.odlQ*U.r ' +Q.r} @[lexer.set.idl]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/inno.tes b/lib/lexers/inno.tes index 313e78c..1ac95fb 100644 --- a/lib/lexers/inno.tes +++ b/lib/lexers/inno.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.inno]{ [_ - _.[iss,isl]M[lexer.checkname] -]_ } +@[lexer.test.inno]{ + :EN*.issQ*U.r + Q.r"F :EN*.islQ*U.r ' +Q.r} @[lexer.set.inno]{ ESSETLEXER,SCLEX_INNO diff --git a/lib/lexers/java.tes b/lib/lexers/java.tes index 188c5b6..968631a 100644 --- a/lib/lexers/java.tes +++ b/lib/lexers/java.tes @@ -1,8 +1,10 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.java]{ [_ - _.[java,jad,pde]M[lexer.checkname] -]_ } +@[lexer.test.java]{ + :EN*.javaQ*U.r + Q.r"F :EN*.jadQ*U.r ' + Q.r"F :EN*.pdeQ*U.r ' +Q.r} @[lexer.set.java]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/js.tes b/lib/lexers/js.tes index 50953af..650935c 100644 --- a/lib/lexers/js.tes +++ b/lib/lexers/js.tes @@ -1,8 +1,10 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.js]{ [_ - _.[js,es,json]M[lexer.checkname] -]_ } +@[lexer.test.js]{ + :EN*.jsQ*U.r + Q.r"F :EN*.esQ*U.r ' + Q.r"F :EN*.jsonQ*U.r ' +Q.r} @[lexer.set.js]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/kix.tes b/lib/lexers/kix.tes index 42f39c6..a605219 100644 --- a/lib/lexers/kix.tes +++ b/lib/lexers/kix.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.kix]{ [_ - _.kixM[lexer.checkname] -]_ } +@[lexer.test.kix]{ + :EN*.kixQ* +} @[lexer.set.kix]{ ESSETLEXER,SCLEX_KIX diff --git a/lib/lexers/lisp.tes b/lib/lexers/lisp.tes index ef66f18..1b4f1dd 100644 --- a/lib/lexers/lisp.tes +++ b/lib/lexers/lisp.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.lisp]{ [_ - _.[lsp,lisp]M[lexer.checkname] -]_ } +@[lexer.test.lisp]{ + :EN*.lspQ*U.r + Q.r"F :EN*.lispQ*U.r ' +Q.r} @[lexer.set.lisp]{ ESSETLEXER,SCLEX_LISP diff --git a/lib/lexers/lout.tes b/lib/lexers/lout.tes index 431e5ef..1121a10 100644 --- a/lib/lexers/lout.tes +++ b/lib/lexers/lout.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.lout]{ [_ - _.ltM[lexer.checkname] -]_ } +@[lexer.test.lout]{ + :EN*.ltQ* +} @[lexer.set.lout]{ ESSETLEXER,SCLEX_LOUT diff --git a/lib/lexers/lua.tes b/lib/lexers/lua.tes index 4e24315..9278557 100644 --- a/lib/lexers/lua.tes +++ b/lib/lexers/lua.tes @@ -1,12 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.lua]{ [_ - _#!M[lua,lua5.1,lua5.2]M[lexer.checkheader]"S - -1 - | - _.luaM[lexer.checkname] - ' -]_ } +@[lexer.test.lua]{ + _#!M[lua,lua5.1,lua5.2]M[lexer.checkheader]U.r + Q.r"F :EN*.luaQ*U.r ' +Q.r} @[lexer.set.lua]{ ESSETLEXER,SCLEX_LUA diff --git a/lib/lexers/make.tes b/lib/lexers/make.tes index bf7a973..aa5bbe6 100644 --- a/lib/lexers/make.tes +++ b/lib/lexers/make.tes @@ -1,8 +1,10 @@ ! Makefile Lexing ! @[lexer.test.make]{ - [_ _[makefile,.mak]M[lexer.checkname] ]_ -} + :EN*/MakefileQ*U.r + Q.r"F :EN*/makefileQ*U.r ' + Q.r"F :EN*.makQ*U.r ' +Q.r} @[lexer.set.make]{ ESSETLEXER,SCLEX_MAKEFILE diff --git a/lib/lexers/mako.tes b/lib/lexers/mako.tes index 30accbe..9ae9d25 100644 --- a/lib/lexers/mako.tes +++ b/lib/lexers/mako.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.mako]{ [_ - _.[mak,mako]M[lexer.checkname] -]_ } +@[lexer.test.mako]{ + :EN*.makQ*U.r + Q.r"F :EN*.makoQ*U.r ' +Q.r} @[lexer.set.mako]{ ESSETLEXER,SCLEX_HYPERTEXT diff --git a/lib/lexers/matlab.tes b/lib/lexers/matlab.tes index 8aafcc3..d2d8bcc 100644 --- a/lib/lexers/matlab.tes +++ b/lib/lexers/matlab.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.matlab]{ [_ - _.m.matlabM[lexer.checkname] -]_ } +@[lexer.test.matlab]{ + :EN*.m.matlabQ* +} @[lexer.set.matlab]{ ESSETLEXER,SCLEX_MATLAB diff --git a/lib/lexers/mmixal.tes b/lib/lexers/mmixal.tes index 1de8986..c801670 100644 --- a/lib/lexers/mmixal.tes +++ b/lib/lexers/mmixal.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.mmixal]{ [_ - _.mmsM[lexer.checkname] -]_ } +@[lexer.test.mmixal]{ + :EN*.mmsQ* +} @[lexer.set.mmixal]{ ESSETLEXER,SCLEX_MMIXAL diff --git a/lib/lexers/octave.tes b/lib/lexers/octave.tes index 9b0131f..0fa3569 100644 --- a/lib/lexers/octave.tes +++ b/lib/lexers/octave.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.octave]{ [_ - _.m.octaveM[lexer.checkname] -]_ } +@[lexer.test.octave]{ + :EN*.m.octaveQ* +} @[lexer.set.octave]{ ESSETLEXER,SCLEX_OCTAVE diff --git a/lib/lexers/oscript.tes b/lib/lexers/oscript.tes index e0839bd..3bbf8b7 100644 --- a/lib/lexers/oscript.tes +++ b/lib/lexers/oscript.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.oscript]{ [_ - _.osxM[lexer.checkname] -]_ } +@[lexer.test.oscript]{ + :EN*.osxQ* +} @[lexer.set.oscript]{ ESSETLEXER,SCLEX_OSCRIPT diff --git a/lib/lexers/pascal.tes b/lib/lexers/pascal.tes index 9373c73..e1323fa 100644 --- a/lib/lexers/pascal.tes +++ b/lib/lexers/pascal.tes @@ -1,8 +1,12 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.pascal]{ [_ - _.[dpr,pas,dfm,inc,pp]M[lexer.checkname] -]_ } +@[lexer.test.pascal]{ + :EN*.dprQ*U.r + Q.r"F :EN*.pasQ*U.r ' + Q.r"F :EN*.dfmQ*U.r ' + Q.r"F :EN*.incQ*U.r ' + Q.r"F :EN*.ppQ*U.r ' +Q.r} @[lexer.set.pascal]{ ESSETLEXER,SCLEX_PASCAL diff --git a/lib/lexers/perl.tes b/lib/lexers/perl.tes index ea11fbf..a7d04ee 100644 --- a/lib/lexers/perl.tes +++ b/lib/lexers/perl.tes @@ -1,12 +1,11 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.perl]{ [_ - _#!M[perl,pl]M[lexer.checkheader]"S - -1 - | - _.[pl,pm,pod]M[lexer.checkname] - ' -]_ } +@[lexer.test.perl]{ + _#!M[perl,pl]M[lexer.checkheader]U.r + Q.r"F :EN*.plQ*U.r ' + Q.r"F :EN*.pmQ*U.r ' + Q.r"F :EN*.podQ*U.r ' +Q.r} @[lexer.set.perl]{ ESSETLEXER,SCLEX_PERL diff --git a/lib/lexers/php.tes b/lib/lexers/php.tes index dde8119..f20efb7 100644 --- a/lib/lexers/php.tes +++ b/lib/lexers/php.tes @@ -1,8 +1,10 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.php]{ [_ - _.[php3,phtml,php]M[lexer.checkname] -]_ } +@[lexer.test.php]{ + :EN*.php3Q*U.r + Q.r"F :EN*.phtmlQ*U.r ' + Q.r"F :EN*.phpQ*U.r ' +Q.r} @[lexer.set.php]{ ESSETLEXER,SCLEX_HYPERTEXT diff --git a/lib/lexers/pike.tes b/lib/lexers/pike.tes index 29044f4..eee474f 100644 --- a/lib/lexers/pike.tes +++ b/lib/lexers/pike.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.pike]{ [_ - _.pikeM[lexer.checkname] -]_ } +@[lexer.test.pike]{ + :EN*.pikeQ* +} @[lexer.set.pike]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/pov.tes b/lib/lexers/pov.tes index f8b3d37..93d8bec 100644 --- a/lib/lexers/pov.tes +++ b/lib/lexers/pov.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.pov]{ [_ - _.[pov,inc]M[lexer.checkname] -]_ } +@[lexer.test.pov]{ + :EN*.povQ*U.r + Q.r"F :EN*.incQ*U.r ' +Q.r} @[lexer.set.pov]{ ESSETLEXER,SCLEX_POV diff --git a/lib/lexers/powerpro.tes b/lib/lexers/powerpro.tes index d0a7407..b4fa29f 100644 --- a/lib/lexers/powerpro.tes +++ b/lib/lexers/powerpro.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.powerpro]{ [_ - _.powerproM[lexer.checkname] -]_ } +@[lexer.test.powerpro]{ + :EN*.powerproQ* +} @[lexer.set.powerpro]{ ESSETLEXER,SCLEX_POWERPRO diff --git a/lib/lexers/purebasic.tes b/lib/lexers/purebasic.tes index c6ad766..6c220b9 100644 --- a/lib/lexers/purebasic.tes +++ b/lib/lexers/purebasic.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.purebasic]{ [_ - _.pbM[lexer.checkname] -]_ } +@[lexer.test.purebasic]{ + :EN*.pbQ* +} @[lexer.set.purebasic]{ ESSETLEXER,SCLEX_PUREBASIC diff --git a/lib/lexers/r.tes b/lib/lexers/r.tes index c90384c..0889d27 100644 --- a/lib/lexers/r.tes +++ b/lib/lexers/r.tes @@ -1,8 +1,10 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.r]{ [_ - _.[R,rsource,S]M[lexer.checkname] -]_ } +@[lexer.test.r]{ + :EN*.RQ*U.r + Q.r"F :EN*.rsourceQ*U.r ' + Q.r"F :EN*.SQ*U.r ' +Q.r} @[lexer.set.r]{ ESSETLEXER,SCLEX_R diff --git a/lib/lexers/rc.tes b/lib/lexers/rc.tes index bddb84f..077e3df 100644 --- a/lib/lexers/rc.tes +++ b/lib/lexers/rc.tes @@ -1,8 +1,10 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.rc]{ [_ - _.[rc,rc2,dlg]M[lexer.checkname] -]_ } +@[lexer.test.rc]{ + :EN*.rcQ*U.r + Q.r"F :EN*.rc2Q*U.r ' + Q.r"F :EN*.dlgQ*U.r ' +Q.r} @[lexer.set.rc]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/rebol.tes b/lib/lexers/rebol.tes index cf3105d..ac75d03 100644 --- a/lib/lexers/rebol.tes +++ b/lib/lexers/rebol.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.rebol]{ [_ - _.[r,reb]M[lexer.checkname] -]_ } +@[lexer.test.rebol]{ + :EN*.rQ*U.r + Q.r"F :EN*.rebQ*U.r ' +Q.r} @[lexer.set.rebol]{ ESSETLEXER,SCLEX_REBOL diff --git a/lib/lexers/rust.tes b/lib/lexers/rust.tes index c0d9497..ada1907 100644 --- a/lib/lexers/rust.tes +++ b/lib/lexers/rust.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.rust]{ [_ - _.rsM[lexer.checkname] -]_ } +@[lexer.test.rust]{ + :EN*.rsQ* +} @[lexer.set.rust]{ ESSETLEXER,SCLEX_RUST diff --git a/lib/lexers/scheme.tes b/lib/lexers/scheme.tes index 5ad6db6..d1c2b3e 100644 --- a/lib/lexers/scheme.tes +++ b/lib/lexers/scheme.tes @@ -1,8 +1,10 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.scheme]{ [_ - _.[scm,smd,ss]M[lexer.checkname] -]_ } +@[lexer.test.scheme]{ + :EN*.scmQ*U.r + Q.r"F :EN*.smdQ*U.r ' + Q.r"F :EN*.ssQ*U.r ' +Q.r} @[lexer.set.scheme]{ ESSETLEXER,SCLEX_LISP diff --git a/lib/lexers/specman.tes b/lib/lexers/specman.tes index 1ffcec1..c33acf0 100644 --- a/lib/lexers/specman.tes +++ b/lib/lexers/specman.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.specman]{ [_ - _.eM[lexer.checkname] -]_ } +@[lexer.test.specman]{ + :EN*.eQ* +} @[lexer.set.specman]{ ESSETLEXER,SCLEX_EIFFEL diff --git a/lib/lexers/spice.tes b/lib/lexers/spice.tes index 6a702af..ae909bf 100644 --- a/lib/lexers/spice.tes +++ b/lib/lexers/spice.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.spice]{ [_ - _.[scp,out]M[lexer.checkname] -]_ } +@[lexer.test.spice]{ + :EN*.scpQ*U.r + Q.r"F :EN*.outQ*U.r ' +Q.r} @[lexer.set.spice]{ ESSETLEXER,SCLEX_SPICE diff --git a/lib/lexers/swift.tes b/lib/lexers/swift.tes index cb6a42d..5abc8ca 100644 --- a/lib/lexers/swift.tes +++ b/lib/lexers/swift.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.swift]{ [_ - _.swiftM[lexer.checkname] -]_ } +@[lexer.test.swift]{ + :EN*.swiftQ* +} @[lexer.set.swift]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/systemverilog.tes b/lib/lexers/systemverilog.tes index 04a4a35..9e5c696 100644 --- a/lib/lexers/systemverilog.tes +++ b/lib/lexers/systemverilog.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.systemverilog]{ [_ - _.[sv,svh]M[lexer.checkname] -]_ } +@[lexer.test.systemverilog]{ + :EN*.svQ*U.r + Q.r"F :EN*.svhQ*U.r ' +Q.r} @[lexer.set.systemverilog]{ ESSETLEXER,SCLEX_VERILOG diff --git a/lib/lexers/tacl.tes b/lib/lexers/tacl.tes index d51edef..13c975a 100644 --- a/lib/lexers/tacl.tes +++ b/lib/lexers/tacl.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.tacl]{ [_ - _.taclM[lexer.checkname] -]_ } +@[lexer.test.tacl]{ + :EN*.taclQ* +} @[lexer.set.tacl]{ ESSETLEXER,SCLEX_TACL diff --git a/lib/lexers/tal.tes b/lib/lexers/tal.tes index d292556..93ad688 100644 --- a/lib/lexers/tal.tes +++ b/lib/lexers/tal.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.tal]{ [_ - _.TALM[lexer.checkname] -]_ } +@[lexer.test.tal]{ + :EN*.talQ* +} @[lexer.set.tal]{ ESSETLEXER,SCLEX_TAL diff --git a/lib/lexers/tcl.tes b/lib/lexers/tcl.tes index a45acf7..dddae89 100644 --- a/lib/lexers/tcl.tes +++ b/lib/lexers/tcl.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.tcl]{ [_ - _.[tcl,exp]M[lexer.checkname] -]_ } +@[lexer.test.tcl]{ + :EN*.tclQ*U.r + Q.r"F :EN*.expQ*U.r ' +Q.r} @[lexer.set.tcl]{ ESSETLEXER,SCLEX_TCL diff --git a/lib/lexers/test.tes b/lib/lexers/test.tes index a2062da..48eb396 100644 --- a/lib/lexers/test.tes +++ b/lib/lexers/test.tes @@ -1,8 +1,10 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.test]{ [_ - _.[pln,inc,t]M[lexer.checkname] -]_ } +@[lexer.test.test]{ + :EN*.plnQ*U.r + Q.r"F :EN*.incQ*U.r ' + Q.r"F :EN*.tQ*U.r ' +Q.r} @[lexer.set.test]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/vala.tes b/lib/lexers/vala.tes index 7fcefaa..c78d079 100644 --- a/lib/lexers/vala.tes +++ b/lib/lexers/vala.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.vala]{ [_ - _.valaM[lexer.checkname] -]_ } +@[lexer.test.vala]{ + :EN*.valaQ* +} @[lexer.set.vala]{ ESSETLEXER,SCLEX_CPP diff --git a/lib/lexers/vb.tes b/lib/lexers/vb.tes index 8d5d8ec..18ffbe2 100644 --- a/lib/lexers/vb.tes +++ b/lib/lexers/vb.tes @@ -1,8 +1,15 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.vb]{ [_ - _.[vb,bas,frm,cls,ctl,pag,dsr,dob]M[lexer.checkname] -]_ } +@[lexer.test.vb]{ + :EN*.vbQ*U.r + Q.r"F :EN*.basQ*U.r ' + Q.r"F :EN*.frmQ*U.r ' + Q.r"F :EN*.clsQ*U.r ' + Q.r"F :EN*.ctlQ*U.r ' + Q.r"F :EN*.pagQ*U.r ' + Q.r"F :EN*.dsrQ*U.r ' + Q.r"F :EN*.dobQ*U.r ' +Q.r} @[lexer.set.vb]{ ESSETLEXER,SCLEX_VB diff --git a/lib/lexers/verilog.tes b/lib/lexers/verilog.tes index b964d60..4c5d99a 100644 --- a/lib/lexers/verilog.tes +++ b/lib/lexers/verilog.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.verilog]{ [_ - _.[v,vh]M[lexer.checkname] -]_ } +@[lexer.test.verilog]{ + :EN*.vQ*U.r + Q.r"F :EN*.vhQ*U.r ' +Q.r} @[lexer.set.verilog]{ ESSETLEXER,SCLEX_VERILOG diff --git a/lib/lexers/vhdl.tes b/lib/lexers/vhdl.tes index 1c64082..f382640 100644 --- a/lib/lexers/vhdl.tes +++ b/lib/lexers/vhdl.tes @@ -1,8 +1,9 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.vhdl]{ [_ - _.[vhd,vhdl]M[lexer.checkname] -]_ } +@[lexer.test.vhdl]{ + :EN*.vhdQ*U.r + Q.r"F :EN*.vhdlQ*U.r ' +Q.r} @[lexer.set.vhdl]{ ESSETLEXER,SCLEX_VHDL diff --git a/lib/lexers/vxml.tes b/lib/lexers/vxml.tes index 81e4066..74197ba 100644 --- a/lib/lexers/vxml.tes +++ b/lib/lexers/vxml.tes @@ -1,8 +1,8 @@ ! AUTO-GENERATED FROM SCITE PROPERTY SET ! -@[lexer.test.vxml]{ [_ - _.vxmlM[lexer.checkname] -]_ } +@[lexer.test.vxml]{ + :EN*.vxmlQ* +} @[lexer.set.vxml]{ ESSETLEXER,SCLEX_HYPERTEXT diff --git a/lib/lexers/xml.tes b/lib/lexers/xml.tes index ddb97df..92c02da 100644 --- a/lib/lexers/xml.tes +++ b/lib/lexers/xml.tes @@ -1,8 +1,17 @@ ! Lexing for XML and its applications ! -@[lexer.test.xml]{ [_ - _.[xml,xsl,svg,xul,xsd,dtd,xslt,axl,xrc,rdf]M[lexer.checkname] -]_ } +@[lexer.test.xml]{ + :EN*.xmlQ*U.r + Q.r"F :EN*.xslQ*U.r ' + Q.r"F :EN*.svgQ*U.r ' + Q.r"F :EN*.xulQ*U.r ' + Q.r"F :EN*.xsdQ*U.r ' + Q.r"F :EN*.dtdQ*U.r ' + Q.r"F :EN*.xsltQ*U.r ' + Q.r"F :EN*.axlQ*U.r ' + Q.r"F :EN*.xrcQ*U.r ' + Q.r"F :EN*.rdfQ*U.r ' +Q.r} @[lexer.set.xml]{ ESSETLEXER,SCLEX_XML diff --git a/lib/scite2co.lua b/lib/scite2co.lua index 21d7c4d..c0e223a 100755 --- a/lib/scite2co.lua +++ b/lib/scite2co.lua @@ -90,22 +90,21 @@ io.write("! AUTO-GENERATED FROM SCITE PROPERTY SET !\n\n") -- print [lexer.test...] macro local shbang = expand(props["shbang."..language]) local file_patterns = expand(props["file.patterns."..language]) -local teco_patterns = file_patterns:gsub("%*%.", ""):gsub(";", ",") -if teco_patterns:find(",", 1, true) then - teco_patterns = "["..teco_patterns.."]" -end io.write([=[ -@[lexer.test.]=]..language:lower()..[=[]{ [_ -]=]) -if shbang then io.write([=[ _#!M]=]..shbang..[=[M[lexer.checkheader]"S - -1 - | - ]=]) end -io.write([=[ _.]=]..teco_patterns..[=[M[lexer.checkname] +@[lexer.test.]=]..language:lower()..[=[]{ ]=]) -if shbang then io.write([=[ ' +if shbang then io.write([=[ _#!M]=]..shbang..[=[M[lexer.checkheader]U.r ]=]) end -io.write([=[]_ } +local first_pattern = not shbang +for pattern in file_patterns:gmatch("[^;]+") do + io.write([=[ ]=]) + if not first_pattern then io.write([=[Q.r"F ]=]) end + io.write([=[:EN]=]..pattern..[=[Q*U.r]=]) + if not first_pattern then io.write([=[ ']=]) end + io.write("\n") + first_pattern = false +end +io.write([=[Q.r} ]=]) diff --git a/lib/session.tes b/lib/session.tes index 697c350..09bd647 100644 --- a/lib/session.tes +++ b/lib/session.tes @@ -26,12 +26,11 @@ EU[session.path]Q[$SCITECOCONFIG]/.teco_session @[session.load]{ EJ<-EF> ! now we have only one unnamed buffer ! - EQ.x ENQ[session.path] - Z"= - 1EB - | - :EMQ[session.path] - ' + [_ + 1:EN*Q[session.path]"S + :EMQ[session.path] + ' + ]_ } ! Call this to set up the session path unique to the @@ -59,12 +58,12 @@ EU[session.path]Q[$SCITECOCONFIG]/.teco_session Requires the SVN client v1.7 or later in $PATH. ! @[session.svn]{ ! if there is no SVN working copy, session.path is left as it is ! - :EG.isvn info --xml"S [* + :EG.isvn info --xml"S [*[_ EQ.i :S<wcroot-abspath>"S .(S</.-2)X[session.path] :[session.path]/.teco_session ' - ]* ' + ]_]* ' } ! Call to set up the session path unique to the |