diff options
Diffstat (limited to 'src/symbols-extract.tes')
-rwxr-xr-x | src/symbols-extract.tes | 53 |
1 files changed, 29 insertions, 24 deletions
diff --git a/src/symbols-extract.tes b/src/symbols-extract.tes index ec3a76a..9f2c61a 100755 --- a/src/symbols-extract.tes +++ b/src/symbols-extract.tes @@ -1,57 +1,62 @@ #!./sciteco-minimal -m ! ./symbols-extract.tes <input file> <output file> <prefix pattern list> <array name> ! -! <pos1,pos2>Mc - Compare string at pos1 with string at pos2 ! -@^Uc{ - U.2U.1 -.%.1^[ -.%.2^[ - <Q.1A-(Q.2A)U.c Q.1A"C|Q.2A"C|;'' Q.c"N;' %.1^[%.2> +! <pos1,pos2>M{symcasecmp} - Compare symbol at pos1 with symbol at pos2 (caseless) ! +@{symcasecmp}{ + U.2U.1 -.%.1 -.%.2 + @.#lo{ + U.v Q.v"W a-A%.v | Q.v"CQ.v|0' ' + } + <Q.1A:M.#loU.a Q.2A:M.#loU.b + Q.a-Q.bU.c Q.c"N;' -Q.a; + %.1%.2> Q.c } -! <i,j>Mx - Exchange line at I with line at J (I < J), returning new J ! -@^Ux{ +! <i,j>M{exchange} - Exchange line at I with line at J (I < J), returning new J ! +@{exchange}{ U.jU.i Q.jJ X.xK - Q.iJ G.x .-Q.i%.j^[ .-(X.xL.)%.j^[ -K + Q.iJ G.x .-Q.i%.j .-(X.xL.)%.j -K Q.jJ G.x Q.j } -! <i,j>Mq - Sort lines beginning at I until J using Quicksort algorithm ! -@^Uq{ +! <i,j>M{qsort} - Sort lines beginning at I until J using Quicksort algorithm ! +@{qsort}{ U.rU.l Q.l-Q.r"< Q.lU.i Q.rJB .U.j < - Q.iJ <.,Q.rMc-1; .-Q.r; L> .U.i - Q.jJ <.,Q.rMc:; .-Q.l-1:; B> .U.j + Q.iJ <.,Q.rM{symcasecmp}-1; .-Q.r; L> .U.i + Q.jJ <.,Q.rM{symcasecmp}:; .-Q.l-1:; B> .U.j Q.i-Q.j; - Q.i,Q.jMxU.j + Q.i,Q.jM{exchange}U.j > - Q.i,Q.rMc"> Q.i,Q.rMxU.r ' + Q.i,Q.rM{symcasecmp}"> Q.i,Q.rM{exchange}U.r ' - Q.l-Q.i"< Q.iJB Q.l,.Mq ' - Q.i-Q.r"< Q.iJL .,Q.rMq ' + Q.l-Q.i"< Q.iJB Q.l,.M{qsort} ' + Q.i-Q.r"< Q.iJL .,Q.rM{qsort} ' ' } ! read commandline arguments ! -LR 0Xi 2LR 0Xo 2LR 0Xp 2LR 0Xn HK +LR 0X#in 2LR 0X#ou 2LR 0X#pa 2LR 0X#na HK ! copy all defines in input file beginning with prefix ! -EBQi <S#defineS[Qp]; -SS :Xa> EF +EBQ#in <S#defineS[Q#pa]; -SS :Xa> EF ! sort all defines ! -Ga ZJB 0,.Mq J +Ga ZJB 0,.M{qsort} J ! format as C/C++ array ! I/* - * AUTOGENERATED FROM Qi + * AUTOGENERATED FROM Q#in * DO NOT EDIT */ #ifdef HAVE_CONFIG_H @@ -60,7 +65,7 @@ I/* #include <glib.h> -#include "Qi" +#include "Q#in" #include "sciteco.h" #include "symbols.h" @@ -69,7 +74,7 @@ static const SymbolList::Entry entries[] = { < .,W.Xa 0KK I#ifdef Qa - {"Qa", ^EQa}, + {"Qa", Qa}, #endif .-Z;> @@ -79,12 +84,12 @@ __attribute__((constructor(PRIO_SYMBOLS))) static void initialize(void) { - Symbols::Qn.entries = entries; - Symbols::Qn.size = G_N_ELEMENTS(entries); + Symbols::Q#na.entries = entries; + Symbols::Q#na.size = G_N_ELEMENTS(entries); } ! write output file ! -EWQo +EWQ#ou EX |