summaryrefslogtreecommitdiffstats
path: root/src/doctokenizer.l
diff options
context:
space:
mode:
Diffstat (limited to 'src/doctokenizer.l')
-rw-r--r--src/doctokenizer.l20
1 files changed, 18 insertions, 2 deletions
diff --git a/src/doctokenizer.l b/src/doctokenizer.l
index 7f11aca..d9f845a 100644
--- a/src/doctokenizer.l
+++ b/src/doctokenizer.l
@@ -395,6 +395,7 @@ REFWORD {LABELID}|{REFWORD2}|{REFWORD3}
%x St_HtmlOnly
%x St_ManOnly
%x St_LatexOnly
+%x St_RtfOnly
%x St_XmlOnly
%x St_Verbatim
%x St_Dot
@@ -708,9 +709,10 @@ REFWORD {LABELID}|{REFWORD2}|{REFWORD3}
return TK_NEWPARA;
}
}
-<St_CodeOpt>"{"{LABELID}"}" {
+<St_CodeOpt>{BLANK}*"{"(".")?{LABELID}"}" {
g_token->name = yytext;
- g_token->name = g_token->name.mid(1,g_token->name.length()-2);
+ int i=g_token->name.find('{');
+ g_token->name = g_token->name.mid(i+1,g_token->name.length()-i-2);
BEGIN(St_Code);
}
<St_CodeOpt>\n |
@@ -745,6 +747,14 @@ REFWORD {LABELID}|{REFWORD2}|{REFWORD3}
<St_ManOnly>. {
g_token->verb+=yytext;
}
+<St_RtfOnly>{CMD}"endrtfonly" {
+ return RetVal_OK;
+ }
+<St_RtfOnly>[^\\@\n$]+ |
+<St_RtfOnly>\n |
+<St_RtfOnly>. {
+ g_token->verb+=yytext;
+ }
<St_LatexOnly>{CMD}"endlatexonly" {
return RetVal_OK;
}
@@ -1199,6 +1209,12 @@ void doctokenizerYYsetStateManOnly()
BEGIN(St_ManOnly);
}
+void doctokenizerYYsetStateRtfOnly()
+{
+ g_token->verb="";
+ BEGIN(St_RtfOnly);
+}
+
void doctokenizerYYsetStateXmlOnly()
{
g_token->verb="";