📄 doc2html.ll
字号:
<DXXisTeX>"\\begin{center}" { Output("<CENTER>"); }<DXXisTeX>"\\end{center}" { Output("</CENTER>"); }<DXXisTeX>"\\begin{flushleft}" { Output(" "); }<DXXisTeX>"\\end{flushleft}" { Output(" "); }<DXXisTeX>"\\begin{flushright}" { Output(" "); }<DXXisTeX>"\\end{flushright}" { Output(" "); }<DXXisTeX>"\\begin{itemize}" { Output("<UL>"); }<DXXisTeX>"\\end{itemize}" { Output("</UL>"); }<DXXisTeX>"\\begin{enumerate}" { Output("<OL>"); }<DXXisTeX>"\\item" { Output("<LI>"); }<DXXisTeX>"\\end{enumerate}" { Output("</OL>"); }<DXXisTeX>"\\begin{description}" { Output("<DL>"); }<DXXisTeX>"\\item[" { Output("<DT><B>"); doItem = 1; }<DXXisTeX>"]" { if(doItem ) { Output("</B><DD>"); doItem = 0; } else Output("]"); }<DXXisTeX>"\\end{description}" { Output("</DL>"); }<Verbatim>"\\end{verbatim}" { Output("</PRE>"); BEGIN(initial); }<Verbatim>"\n" { Output(yytext); }<DXXisTeX>"\\hline" { if(tabFlag) Output("</TD></TR><TR><TD>"); else Output("<HR>"); }<DXXisTeX>"\\c{c}" { Output("ç"); }<DXXisTeX>"\\c{C}" { Output("Ç"); }<DXXisTeX>"\\`a" { Output("à"); }<DXXisTeX>"\\^a" { Output("â"); }<DXXisTeX>"\\\"a" { Output("ä"); }<DXXisTeX>"\\\"A" { Output("Ä"); }<DXXisTeX>"{\\\"a}" { Output("ä"); }<DXXisTeX>"{\\\"A}" { Output("Ä"); }<DXXisTeX>"\\'e" { Output("é"); }<DXXisTeX>"\\`e" { Output("è"); }<DXXisTeX>"\\^e" { Output("ê"); }<DXXisTeX>"\\\"e" { Output("ë"); }<DXXisTeX>"\\'E" { Output("É"); }<DXXisTeX>"\\`E" { Output("È"); }<DXXisTeX>"\\^E" { Output("Ê"); }<DXXisTeX>"\\\"E" { Output("Ë"); }<DXXisTeX>"\\^i" { Output("î"); }<DXXisTeX>"\\^I" { Output("Î"); }<DXXisTeX>"\\\"o" { Output("ö"); }<DXXisTeX>"\\\"O" { Output("Ö"); }<DXXisTeX>"{\\\"o}" { Output("ö"); }<DXXisTeX>"{\\\"O}" { Output("Ö"); }<DXXisTeX>"\\^o" { Output("ô"); }<DXXisTeX>"\\^O" { Output("Ô"); }<DXXisTeX>"\\\"u" { Output("ü"); }<DXXisTeX>"\\\"U" { Output("Ü"); }<DXXisTeX>"{\\\"u}" { Output("ü"); }<DXXisTeX>"{\\\"U}" { Output("Ü"); }<DXXisTeX>"\\^u" { Output("û"); }<DXXisTeX>"\\^U" { Output("Û"); }<DXXisTeX>"\\`u" { Output("ù"); }<DXXisTeX>"\\`U" { Output("Ù"); }<DXXisTeX>"\\ss" { Output("ß"); }<DXXisTeX>"{\\ss}" { Output("ß"); }<DXXisTeX>"\\3" { Output("ß"); }<DXXisTeX>"\\#" { Output("#"); }<DXXisTeX>"#define" { Output("#define"); }<DXXisTeX>"\\ " { Output(" "); }<DXXisTeX>"\\_" { Output("_"); }<DXXisTeX>"\\%" { Output("%"); }<DXXisTeX>"\\&" { Output("&"); }<DXXisCode,DXXisTeX>"<" { Output("<"); }<DXXisCode,DXXisTeX>">" { Output(">"); }<DXXisCode>"&" { Output("&"); }<DXXisTeX>"#" { Output("<TT>"); BEGIN(Fence); }<Fence>[#\n] { Output("</TT>"); BEGIN(initial); }<Fence,Verbatim>"&" { Output("&"); }<Fence,Verbatim>"<" { Output("<"); }<Fence,Verbatim>">" { Output(">"); }<Fence,Verbatim>"\"" { Output("""); }<Fence,Verbatim>"\ " { Output(" "); }<Fence,Verbatim>. { Output(yytext); }<DXXisTeX>{BeginTab} { Output("<TABLE BORDER>\n<TR><TD>"); tabFlag++; }<DXXisTeX>"&" { if(tabFlag) Output("</TD><TD>"); else Output("&"); }<DXXisTeX>"\\\\" { if(tabFlag) Output("</TD></TR><TR><TD>"); else Output("<BR>"); }<DXXisTeX,DXXisHTML>"\n"[ \t]*"\n" { Output("\n\n<P>"); }<DXXisTeX>"\\end{tabular}" { Output("</TR></TABLE>"); tabFlag--; }<DXXisCode,DXXisTeX,DXXisHTML,JAVA_SEE>[a-z_A-Z0-9:.]* { if(yyWithLinks) { Entry *ref = getRefEntry(yytext, context); if(ref) { McString tmp; entry2link(tmp, ref, (const char *)yytext); Output(tmp); } else Output(yytext); } else Output(yytext); }<JAVA_SEE>[A-Za-z_.0-9]*"#"[A-Za-z_.0-9]* { McString tmp(yytext); McString base(tmp, 0, tmp.index('#')); McString label(tmp, tmp.index('#') + 1, tmp.length() - tmp.index('#') - 1); if(base.length()) { if(context) context->makeFullName(base); base += htmlSuffix; } Output("<A HREF=\""); Output(base); Output("#"); Output(label); Output("\">"); Output(label); Output("</A>"); }<JAVA_SEE>. { Output(yytext); }<JAVA_SEE>\n { Output(yytext); } <DXXisCode,DXXisTeX,DXXisHTML>. { Output(yytext); }<DXXisCode,DXXisTeX,DXXisHTML>"\n" { Output(yytext); }<*>\n%%McDArray <char *> stack;extern "C" { int doc2htmlYYwrap() { return 1; }}void push(char *s){ stack.append(s);}char *pop(){ if(stack.size()) { char *s = stack.last(); stack.removeLast(); return s; } else return ("}");}static void Output(const char *o){ outStr += o;}static void Output(const McString& o){ outStr += o;}// This is really called lots, so add a quick exit if nothing to do!static char blank[] = "";char *strToHtml(McString &in, char *dest, Entry* ct, bool withLinks, bool pureCode){ if(in.length() == 0) // This really does save time. if(dest) { strcpy(dest, blank); return dest; } else return blank; context = ct ? ct : root; inStr = in.c_str(); outStr = ""; inLen = strlen(inStr); inputPosition = 0; stack.resize(0); yyWithLinks = withLinks; if(pureCode) initial = DXXisCode; else if(HTMLsyntax) initial = DXXisHTML; else initial = DXXisTeX; BEGIN(initial); doc2htmlYYlex(); if(dest) { strcpy(dest, outStr.c_str()); return dest; } else return strdup(outStr.c_str());}char *seeToHtml(McString &in, Entry *ct){ if(in.length() == 0) return blank; context = ct ? ct : root; inStr = in.c_str(); outStr = ""; inLen = strlen(inStr); inputPosition = 0; stack.resize(0); yyWithLinks = true; BEGIN(JAVA_SEE); doc2htmlYYlex(); return strdup(outStr.c_str());}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -