X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginsh%2Fginsh_lexer.ll;h=c4beae09011eb8e30cfd84285271c759f23f2f6d;hp=d27d0fe275b8917ca06b32153e9e901716e6dd0b;hb=35287d4fef8dc61a10966091ff662eeb9444f87a;hpb=cfe6e9424d016b19fe09ad618b8713910a46c507 diff --git a/ginsh/ginsh_lexer.ll b/ginsh/ginsh_lexer.ll index d27d0fe2..c4beae09 100644 --- a/ginsh/ginsh_lexer.ll +++ b/ginsh/ginsh_lexer.ll @@ -4,7 +4,7 @@ * This file must be processed with flex. */ /* - * GiNaC Copyright (C) 1999-2000 Johannes Gutenberg University Mainz, Germany + * GiNaC Copyright (C) 1999-2002 Johannes Gutenberg University Mainz, Germany * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -56,6 +56,7 @@ AN [0-9a-zA-Z_] [ \t\n]+ /* skip whitespace */ \\$ /* skip line continuations */ "//".* /* skip comments starting with "//" */ +^"#".* /* skip lines starting with "#" */ ^"!".* system(yytext + 1); /* execute shell command */ /* special values */ @@ -87,10 +88,9 @@ score return T_SCORE; \" return T_QUOTE; \"\" return T_QUOTE2; \"\"\" return T_QUOTE3; - - /* matrix delimiters */ -\[\[ return T_MATRIX_BEGIN; -\]\] return T_MATRIX_END; +\% return T_QUOTE; +\%\% return T_QUOTE2; +\%\%\% return T_QUOTE3; /* numbers */ {D}+ | @@ -112,6 +112,9 @@ score return T_SCORE; return T_SYMBOL; } + /* wildcards */ +\${D}+ yylval = wild(atoi(yytext + 1)); return T_LITERAL; + /* everything else */ . return *yytext;