Warning, /frameworks/syntax-highlighting/autotests/folding/highlight.lex.fold is written in an unsupported language. File is not indexed.
0001 <beginfold id='1'></beginfold id='1'><beginfold id='2'>/*</beginfold id='2'> This test file tests kates Lex/Flex highlighting <endfold id='2'>*/</endfold id='2'> 0002 0003 %option c++ 0004 %option yyclass="KateTester" 0005 %option yylineno 0006 0007 <beginfold id='3'>/*</beginfold id='3'> This is a C(++) comment <endfold id='3'>*/</endfold id='3'> 0008 0009 <beginfold id='2'>/*</beginfold id='2'> This one is a lex comment ! <endfold id='2'>*/</endfold id='2'> 0010 0011 <beginfold id='4'>%{</beginfold id='4'> 0012 #include <iostream> 0013 #include "realparser.hpp" 0014 using namespace std; 0015 <endfold id='4'>%}</endfold id='4'> 0016 0017 <beginfold id='2'>/*</beginfold id='2'> Some definitions <endfold id='2'>*/</endfold id='2'> 0018 DIGIT [0-9] 0019 LETTER [_a-zA-Z] 0020 0021 <endfold id='1'></endfold id='1'><beginfold id='5'>%%</beginfold id='5'> 0022 0023 <beginfold id='3'>/*</beginfold id='3'> Comment *shall be indented here* <endfold id='3'>*/</endfold id='3'> 0024 [ \t\n\r]+ 0025 0026 <beginfold id='3'>/*</beginfold id='3'> Note: there is a bad } just here vvv <endfold id='3'>*/</endfold id='3'> 0027 \/\*([^\*]|\*[^/])*\*\/ <beginfold id='6'>{</beginfold id='6'> foo(a, b, c); <endfold id='6'>}</endfold id='6'> } 0028 0029 <beginfold id='3'>/*</beginfold id='3'> A start condition scope... <endfold id='3'>*/</endfold id='3'> 0030 <ESC><beginfold id='7'>{</beginfold id='7'> 0031 "a" <beginfold id='6'>{</beginfold id='6'> 0032 0033 <beginfold id='3'>/*</beginfold id='3'> C mode ! <endfold id='3'>*/</endfold id='3'> 0034 return 0; 0035 <endfold id='6'>}</endfold id='6'> 0036 0037 "b" <beginfold id='4'>%{</beginfold id='4'> 0038 0039 <beginfold id='3'>/*</beginfold id='3'> C mode, too ! <endfold id='3'>*/</endfold id='3'> 0040 return 0; 0041 <endfold id='4'>%}</endfold id='4'> 0042 0043 "c" return 0; // C++ comment 0044 <endfold id='7'>}</endfold id='7'> 0045 0046 <beginfold id='3'>/*</beginfold id='3'> Big rule <endfold id='3'>*/</endfold id='3'> 0047 \"([^"\\]|\\.)*\" <beginfold id='6'>{</beginfold id='6'> 0048 0049 yylval.string_val = new char[strlen(yytext) + 1]; 0050 int j = 0, i = 1; 0051 0052 while (yytext[i] != '"') 0053 if (yytext[i] != '\\') 0054 yylval.string_val[j++] = yytext[i++]; 0055 else 0056 switch (yytext[i + 1]) 0057 <beginfold id='6'>{</beginfold id='6'> 0058 case 'n': 0059 yylval.string_val[j++] = '\n'; i += 2; 0060 break; 0061 default: 0062 yylval.string_val[j++] << yytext[i + 1], i += 2; 0063 <endfold id='6'>}</endfold id='6'> 0064 0065 yylval.string_val[j] = 0; 0066 return TOK_STRING; 0067 0068 <endfold id='6'>}</endfold id='6'> 0069 0070 <beginfold id='3'>/*</beginfold id='3'> Dot (match all) <endfold id='3'>*/</endfold id='3'> 0071 . <beginfold id='6'>{</beginfold id='6'>return yylval.int_val = yytext[0];<endfold id='6'>}</endfold id='6'> 0072 0073 <endfold id='5'></endfold id='5'><beginfold id='8'>%%</beginfold id='8'> 0074 0075 // Here is pure C(++) 0076 #include <iostream> 0077 0078 int main(void) 0079 <beginfold id='9'>{</beginfold id='9'> 0080 std::cout << "Hello, World\n"; 0081 return 0; 0082 <endfold id='9'>}</endfold id='9'>