📄 til2html.htm
字号:
<FONT color='gray'>137| </FONT> <FONT color='darkblue'><B>break</B></FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>138| </FONT> <FONT color='dimgray'>}</FONT><FONT color='gray'>139| </FONT> <FONT color='dimgray'>}</FONT><FONT color='gray'>140| </FONT> _out<FONT color='dimgray'>.</FONT><FONT color='purple'>printf</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"*/</FONT>"</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT> <FONT color='gray'>141| </FONT><FONT color='dimgray'>}</FONT><FONT color='gray'>142| </FONT><FONT color='darkblue'><B>function</B></FONT> <FONT color='purple'>emit_cpp_comment</FONT><FONT color='dimgray'>(</FONT><FONT color='dimgray'>)</FONT> <FONT color='dimgray'>{</FONT><FONT color='gray'>143| </FONT> <FONT color='darkblue'><B>var</B></FONT> tok <FONT color='dimgray'>=</FONT> _in<FONT color='dimgray'>.</FONT><FONT color='purple'>get</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>'\n'</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>144| </FONT> _out<FONT color='dimgray'>.</FONT><FONT color='purple'>printf</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"<FONT color='%s'>//%s</FONT>"</FONT><FONT color='dimgray'>,</FONT>COMMENT_COLOR<FONT color='dimgray'>,</FONT><FONT color='purple'>escape</FONT><FONT color='dimgray'>(</FONT>tok<FONT color='dimgray'>)</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT> <FONT color='gray'>145| </FONT> <FONT color='purple'>emit_line_no</FONT><FONT color='dimgray'>(</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>146| </FONT><FONT color='dimgray'>}</FONT><FONT color='gray'>147| </FONT><FONT color='gray'>148| </FONT><FONT color='darkblue'><B>function</B></FONT> <FONT color='purple'>parse</FONT><FONT color='dimgray'>(</FONT><FONT color='dimgray'>)</FONT> <FONT color='dimgray'>{</FONT><FONT color='gray'>149| </FONT> <FONT color='darkblue'><B>var</B></FONT> tok<FONT color='dimgray'>;</FONT><FONT color='gray'>150| </FONT> <FONT color='darkblue'><B>while</B></FONT><FONT color='dimgray'>(</FONT><FONT color='darkblue'><B>true</B></FONT><FONT color='dimgray'>)</FONT> <FONT color='dimgray'>{</FONT><FONT color='gray'>151| </FONT> tok <FONT color='dimgray'>=</FONT> _in<FONT color='dimgray'>.</FONT><FONT color='purple'>get</FONT><FONT color='dimgray'>(</FONT>_r_delimeters<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT> <FONT color='gray'>152| </FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT> <FONT color='purple'>is_null</FONT><FONT color='dimgray'>(</FONT>tok<FONT color='dimgray'>)</FONT> <FONT color='dimgray'>)</FONT> <FONT color='darkblue'><B>break</B></FONT><FONT color='dimgray'>;</FONT> <FONT color='green'>//eof
</FONT><FONT color='gray'>153| </FONT> <FONT color='gray'>154| </FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT> tok<FONT color='dimgray'>.</FONT><FONT color='purple'>like</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"[0-9]*"</FONT><FONT color='dimgray'>)</FONT> <FONT color='dimgray'>)</FONT> <FONT color='purple'>emit_number</FONT><FONT color='dimgray'>(</FONT>tok<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>155| </FONT> <FONT color='darkblue'><B>else</B></FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT> _r_words<FONT color='dimgray'>.</FONT><FONT color='purple'>exist</FONT><FONT color='dimgray'>(</FONT>tok<FONT color='dimgray'>)</FONT> <FONT color='dimgray'>)</FONT> <FONT color='purple'>emit_keyword</FONT><FONT color='dimgray'>(</FONT>tok<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>156| </FONT> <FONT color='darkblue'><B>else</B></FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT> _in<FONT color='dimgray'>.</FONT>get_match <FONT color='dimgray'>==</FONT> <FONT color='red'>7</FONT> <FONT color='green'>/* '(' */</FONT> <FONT color='dimgray'>)</FONT> <FONT color='purple'>emit_call</FONT><FONT color='dimgray'>(</FONT>tok<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>157| </FONT> <FONT color='darkblue'><B>else</B></FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT> tok <FONT color='dimgray'>)</FONT> <FONT color='purple'>emit_plain_id</FONT><FONT color='dimgray'>(</FONT>tok<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>158| </FONT> <FONT color='gray'>159| </FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT> _in<FONT color='dimgray'>.</FONT>get_match <FONT color='dimgray'>==</FONT> <FONT color='red'>0</FONT><FONT color='dimgray'>)</FONT> <FONT color='darkblue'><B>break</B></FONT><FONT color='dimgray'>;</FONT> <FONT color='green'>//this was last tok before eof
</FONT><FONT color='gray'>160| </FONT> <FONT color='gray'>161| </FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT> _in<FONT color='dimgray'>.</FONT>get_match <FONT color='dimgray'><=</FONT> <FONT color='red'>4</FONT> <FONT color='dimgray'>)</FONT> <FONT color='purple'>emit_whitespace</FONT><FONT color='dimgray'>(</FONT>_in<FONT color='dimgray'>.</FONT>get_match<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>162| </FONT> <FONT color='darkblue'><B>else</B></FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT> _in<FONT color='dimgray'>.</FONT>get_match <FONT color='dimgray'>==</FONT> <FONT color='red'>5</FONT> <FONT color='green'>/*string lit*/</FONT> <FONT color='dimgray'>)</FONT> <FONT color='purple'>emit_string</FONT><FONT color='dimgray'>(</FONT> <FONT color='purple'>parse_sc_literal</FONT><FONT color='dimgray'>(</FONT><FONT color='dimgray'>[</FONT><FONT color='maroon'>"\\\""</FONT><FONT color='dimgray'>,</FONT><FONT color='maroon'>"\""</FONT><FONT color='dimgray'>]</FONT><FONT color='dimgray'>)</FONT> <FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>163| </FONT> <FONT color='darkblue'><B>else</B></FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT> _in<FONT color='dimgray'>.</FONT>get_match <FONT color='dimgray'>==</FONT> <FONT color='red'>6</FONT> <FONT color='green'>/*char lit*/</FONT> <FONT color='dimgray'>)</FONT> <FONT color='purple'>emit_char</FONT><FONT color='dimgray'>(</FONT> <FONT color='purple'>parse_sc_literal</FONT><FONT color='dimgray'>(</FONT><FONT color='dimgray'>[</FONT><FONT color='maroon'>"\\\'"</FONT><FONT color='dimgray'>,</FONT><FONT color='maroon'>"\'"</FONT><FONT color='dimgray'>]</FONT><FONT color='dimgray'>)</FONT> <FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>164| </FONT> <FONT color='darkblue'><B>else</B></FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT> _in<FONT color='dimgray'>.</FONT>get_match <FONT color='dimgray'>==</FONT> <FONT color='red'>9</FONT> <FONT color='green'>/* C comment */</FONT> <FONT color='dimgray'>)</FONT> <FONT color='purple'>emit_c_comment</FONT><FONT color='dimgray'>(</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT> <FONT color='gray'>165| </FONT> <FONT color='darkblue'><B>else</B></FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT> _in<FONT color='dimgray'>.</FONT>get_match <FONT color='dimgray'>==</FONT> <FONT color='red'>10</FONT><FONT color='green'>/* C++ comment */</FONT> <FONT color='dimgray'>)</FONT> <FONT color='purple'>emit_cpp_comment</FONT><FONT color='dimgray'>(</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>166| </FONT> <FONT color='darkblue'><B>else</B></FONT> <FONT color='purple'>emit_operator</FONT><FONT color='dimgray'>(</FONT>_in<FONT color='dimgray'>.</FONT>get_match<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>167| </FONT> <FONT color='dimgray'>}</FONT><FONT color='gray'>168| </FONT><FONT color='dimgray'>}</FONT><FONT color='gray'>169| </FONT><FONT color='gray'>170| </FONT><FONT color='darkblue'><B>function</B></FONT> <FONT color='purple'>do_parse</FONT><FONT color='dimgray'>(</FONT>nin<FONT color='dimgray'>)</FONT><FONT color='gray'>171| </FONT><FONT color='dimgray'>{</FONT><FONT color='gray'>172| </FONT> _line_no <FONT color='dimgray'>=</FONT> <FONT color='red'>0</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>173| </FONT> out<FONT color='dimgray'>.</FONT><FONT color='purple'>printf</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"parsing '%s' ..."</FONT><FONT color='dimgray'>,</FONT>nin<FONT color='dimgray'>.</FONT>name_extension<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>174| </FONT> _in <FONT color='dimgray'>=</FONT> nin<FONT color='dimgray'>.</FONT><FONT color='purple'>stream</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"r"</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>175| </FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT><FONT color='dimgray'>!</FONT>_in<FONT color='dimgray'>)</FONT> out<FONT color='dimgray'>.</FONT><FONT color='purple'>printf</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"ERROR: cannot open '%s'\n"</FONT><FONT color='dimgray'>,</FONT>nin<FONT color='dimgray'>.</FONT>path<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>176| </FONT> <FONT color='gray'>177| </FONT> <FONT color='darkblue'><B>var</B></FONT> nout <FONT color='dimgray'>=</FONT> <FONT color='darkblue'><B>new</B></FONT> <FONT color='purple'>node</FONT><FONT color='dimgray'>(</FONT>nin<FONT color='dimgray'>.</FONT>path<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>178| </FONT> nout<FONT color='dimgray'>.</FONT>extension <FONT color='dimgray'>=</FONT> <FONT color='maroon'>"htm"</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>179| </FONT> _out <FONT color='dimgray'>=</FONT> nout<FONT color='dimgray'>.</FONT><FONT color='purple'>stream</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"w"</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>180| </FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT><FONT color='dimgray'>!</FONT>_out<FONT color='dimgray'>)</FONT> out<FONT color='dimgray'>.</FONT><FONT color='purple'>printf</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"ERROR: cannot create '%s'\n"</FONT><FONT color='dimgray'>,</FONT>nout<FONT color='dimgray'>.</FONT>path<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>181| </FONT> <FONT color='gray'>182| </FONT> _out<FONT color='dimgray'>.</FONT><FONT color='purple'>put</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"<HTML>\n"</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>183| </FONT> _out<FONT color='dimgray'>.</FONT><FONT color='purple'>put</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"<HEAD>\n"</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>184| </FONT> _out<FONT color='dimgray'>.</FONT><FONT color='purple'>put</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"<META NAME='GENERATOR' Content='TIL:til2html'>\n"</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT> <FONT color='gray'>185| </FONT> _out<FONT color='dimgray'>.</FONT><FONT color='purple'>put</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"<LINK rel='stylesheet' type='text/css' href='codestyle.css'>\n"</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>186| </FONT> _out<FONT color='dimgray'>.</FONT><FONT color='purple'>put</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"</HEAD>\n"</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>187| </FONT> _out<FONT color='dimgray'>.</FONT><FONT color='purple'>put</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"<BODY>\n"</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>188| </FONT> _out<FONT color='dimgray'>.</FONT><FONT color='purple'>printf</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"<P>plain text version:<A href=\'%s\'>%s</A></P>\n"</FONT><FONT color='dimgray'>,</FONT>nin<FONT color='dimgray'>.</FONT>name_extension<FONT color='dimgray'>,</FONT>nin<FONT color='dimgray'>.</FONT>name_extension<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>189| </FONT> _out<FONT color='dimgray'>.</FONT><FONT color='purple'>put</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"<HR>\n<PRE>\n"</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>190| </FONT> <FONT color='purple'>emit_line_no</FONT><FONT color='dimgray'>(</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>191| </FONT> <FONT color='purple'>parse</FONT><FONT color='dimgray'>(</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>192| </FONT> _out<FONT color='dimgray'>.</FONT><FONT color='purple'>put</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"</PRE></BODY></HTML>\n"</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>193| </FONT> out<FONT color='dimgray'>.</FONT><FONT color='purple'>put</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"done\n"</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>194| </FONT><FONT color='dimgray'>}</FONT><FONT color='gray'>195| </FONT><FONT color='gray'>196| </FONT><FONT color='darkblue'><B>function</B></FONT> <FONT color='purple'>main</FONT><FONT color='dimgray'>(</FONT>file_name_in<FONT color='dimgray'>)</FONT> <FONT color='dimgray'>{</FONT><FONT color='gray'>197| </FONT> <FONT color='darkblue'><B>var</B></FONT> nin <FONT color='dimgray'>=</FONT> <FONT color='darkblue'><B>new</B></FONT> <FONT color='purple'>node</FONT><FONT color='dimgray'>(</FONT>file_name_in<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>198| </FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT> nin<FONT color='dimgray'>.</FONT>is_folder <FONT color='dimgray'>)</FONT> <FONT color='gray'>199| </FONT> <FONT color='dimgray'>{</FONT><FONT color='gray'>200| </FONT> <FONT color='darkblue'><B>var</B></FONT> i<FONT color='dimgray'>,</FONT> narray <FONT color='dimgray'>=</FONT> nin<FONT color='dimgray'>.</FONT><FONT color='purple'>nodes</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"*.csp"</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>201| </FONT> <FONT color='darkblue'><B>for</B></FONT><FONT color='dimgray'>(</FONT>i <FONT color='dimgray'>=</FONT> <FONT color='red'>0</FONT><FONT color='dimgray'>;</FONT> i <FONT color='dimgray'><</FONT> narray<FONT color='dimgray'>.</FONT>length<FONT color='dimgray'>;</FONT> i<FONT color='dimgray'>++</FONT><FONT color='dimgray'>)</FONT><FONT color='gray'>202| </FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT> narray<FONT color='dimgray'>[</FONT>i<FONT color='dimgray'>]</FONT><FONT color='dimgray'>.</FONT>is_file <FONT color='dimgray'>)</FONT> <FONT color='purple'>do_parse</FONT><FONT color='dimgray'>(</FONT>narray<FONT color='dimgray'>[</FONT>i<FONT color='dimgray'>]</FONT><FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>203| </FONT> <FONT color='dimgray'>}</FONT> <FONT color='gray'>204| </FONT> <FONT color='darkblue'><B>else</B></FONT> <FONT color='darkblue'><B>if</B></FONT><FONT color='dimgray'>(</FONT>nin<FONT color='dimgray'>.</FONT>is_file<FONT color='dimgray'>)</FONT> <FONT color='purple'>do_parse</FONT><FONT color='dimgray'>(</FONT>nin<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>205| </FONT> <FONT color='darkblue'><B>else</B></FONT> out<FONT color='dimgray'>.</FONT><FONT color='purple'>printf</FONT><FONT color='dimgray'>(</FONT><FONT color='maroon'>"ERROR: cannot find '%s'\n"</FONT><FONT color='dimgray'>,</FONT>file_name_in<FONT color='dimgray'>)</FONT><FONT color='dimgray'>;</FONT><FONT color='gray'>206| </FONT> <FONT color='gray'>207| </FONT><FONT color='dimgray'>}</FONT>
</PRE></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -