@@ -12,25 +12,63 @@ static void initializeManParser (const langType language)
1212{
1313
1414 addLanguageRegexTable (language , "main" );
15+ addLanguageRegexTable (language , "section" );
16+ addLanguageRegexTable (language , "EOF" );
17+ addLanguageRegexTable (language , "SKIP" );
18+ addLanguageRegexTable (language , "REST" );
19+ addLanguageRegexTable (language , "GUARD" );
1520
1621 addLanguageTagMultiTableRegex (language , "main" ,
1722 "^([^\n.]|\\.[^\nst])[^\n]*\n" ,
1823 "" , "" , "{icase}" , NULL );
1924 addLanguageTagMultiTableRegex (language , "main" ,
2025 "^\\.TH[\t ]+\"([^\"]+)\"[^\n]*\n" ,
21- "\\1" , "t" , "{icase}{scope=push }" , NULL );
26+ "\\1" , "t" , "{icase}{scope=set }" , NULL );
2227 addLanguageTagMultiTableRegex (language , "main" ,
2328 "^\\.TH[\t ]+([^\t \n]+)[^\n]*\n" ,
24- "\\1" , "t" , "{icase}{scope=push }" , NULL );
29+ "\\1" , "t" , "{icase}{scope=set }" , NULL );
2530 addLanguageTagMultiTableRegex (language , "main" ,
2631 "^\\.SH[\t ]+\"([^\"\n]+)\"[^\n]*\n" ,
27- "\\1" , "s" , "{icase}{scope=ref }" , NULL );
32+ "\\1" , "s" , "{icase}{scope=push}{tenter=section }" , NULL );
2833 addLanguageTagMultiTableRegex (language , "main" ,
2934 "^\\.SH[\t ]+([^\n]+)\n" ,
30- "\\1" , "s" , "{icase}{scope=ref }" , NULL );
35+ "\\1" , "s" , "{icase}{scope=push}{tenter=section }" , NULL );
3136 addLanguageTagMultiTableRegex (language , "main" ,
3237 "^[^\n]*\n|[^\n]+" ,
3338 "" , "" , "" , NULL );
39+ addLanguageTagMultiTableRegex (language , "main" ,
40+ "^" ,
41+ "" , "" , "{scope=clear}{tquit}" , NULL );
42+ addLanguageTagMultiTableRegex (language , "section" ,
43+ "^([^\n.]|\\.[^\nst])[^\n]*\n" ,
44+ "" , "" , "{icase}" , NULL );
45+ addLanguageTagMultiTableRegex (language , "section" ,
46+ "^\\.SH[\t ]+\"([^\"\n]+)\"[^\n]*\n" ,
47+ "\\1" , "s" , "{icase}{scope=replace}" , NULL );
48+ addLanguageTagMultiTableRegex (language , "section" ,
49+ "^\\.SH[\t ]+([^\n]+)\n" ,
50+ "\\1" , "s" , "{icase}{scope=replace}" , NULL );
51+ addLanguageTagMultiTableRegex (language , "section" ,
52+ "^[^\n]*\n|[^\n]+" ,
53+ "" , "" , "" , NULL );
54+ addLanguageTagMultiTableRegex (language , "section" ,
55+ "^" ,
56+ "" , "" , "{scope=clear}{tquit}" , NULL );
57+ addLanguageTagMultiTableRegex (language , "EOF" ,
58+ "^" ,
59+ "" , "" , "{scope=clear}{tquit}" , NULL );
60+ addLanguageTagMultiTableRegex (language , "SKIP" ,
61+ "^[^\n]*\n|[^\n]+" ,
62+ "" , "" , "" , NULL );
63+ addLanguageTagMultiTableRegex (language , "REST" ,
64+ "^[^\n]*\n|[^\n]+" ,
65+ "" , "" , "" , NULL );
66+ addLanguageTagMultiTableRegex (language , "REST" ,
67+ "^" ,
68+ "" , "" , "{scope=clear}{tquit}" , NULL );
69+ addLanguageTagMultiTableRegex (language , "GUARD" ,
70+ "^([^\n.]|\\.[^\nst])[^\n]*\n" ,
71+ "" , "" , "{icase}" , NULL );
3472}
3573
3674extern parserDefinition * ManParser (void )
0 commit comments