1 %{ 2 #include "quote_fmt_lex.h" 3 #include "quote_fmt_parse.h" 4 %} 5 6 %option prefix="quote_fmt" 7 %option outfile="lex.yy.c" 8 9 %% 10 11 "%d" /* date */ return SHOW_DATE; 12 "%f" /* from */ return SHOW_FROM; 13 "%N" /* full name */ return SHOW_FULLNAME; 14 "%F" /* first name */ return SHOW_FIRST_NAME; 15 "%I" /* initial of sender */ return SHOW_SENDER_INITIAL; 16 "%s" /* subject */ return SHOW_SUBJECT; 17 "%t" /* to */ return SHOW_TO; 18 "%c" /* cc */ return SHOW_CC; 19 "%n" /* newsgroups */ return SHOW_NEWSGROUPS; 20 "%i" /* message-id */ return SHOW_MESSAGEID; 21 "%r" /* references */ return SHOW_REFERENCES; 22 "%M" /* message */ return SHOW_MESSAGE; 23 "%Q" /* quoted message */ return SHOW_QUOTED_MESSAGE; 24 "%m" /* message with no signature */ return SHOW_MESSAGE_NO_SIGNATURE; 25 "%q" /* quoted message with no signature */ return SHOW_QUOTED_MESSAGE_NO_SIGNATURE; 26 "%%" /* % */ return SHOW_PERCENT; 27 "\\\\" /* \ */ return SHOW_BACKSLASH; 28 "\\t"|"\t" /* tab */ return SHOW_TAB; 29 "\\n"|"\n" /* return */ return SHOW_EOL; 30 "\\?" /* ? */ return SHOW_QUESTION_MARK; 31 "\\{" return SHOW_OPARENT; 32 "\\}" return SHOW_CPARENT; 33 "?d" /* query date */ return QUERY_DATE; 34 "?f" /* query from */ return QUERY_FROM; 35 "?N"|"?F"|"?I" /* query from name */ return QUERY_FULLNAME; 36 "?s" /* query subject */ return QUERY_SUBJECT; 37 "?t" /* query to */ return QUERY_TO; 38 "?c" /* query cc */ return QUERY_CC; 39 "?n" /* query newsgroups */ return QUERY_NEWSGROUPS; 40 "?i" /* query message-id */ return QUERY_MESSAGEID; 41 "?r" /* query references */ return QUERY_REFERENCES; 42 "{" return OPARENT; 43 "}" return CPARENT; 44 . { yylval.chr = yytext[0]; return CHARACTER; } 45 46 %% 47