include lexi.e
integer fo
constant zoek={"<!-","</","<","-->",">"}
procedure color_comment()
while L_result[L_INDEX]!=4 do
puts(fo,L_result[L_SEARCH])
L_in(zoek)
puts(fo,L_result[L_SKIP])
if L_result[L_INDEX]=4
then L_result[L_SEARCH]=L_result[L_SEARCH][1..-2]&"></font>"
elsif L_result[L_INDEX]=5
then L_result[L_SEARCH]=">"
else L_result[L_SEARCH]="<"&L_result[L_SEARCH][2..]
end if
end while
end procedure
procedure color_HTML()
puts(fo,L_result[L_SKIP])
if L_result[L_INDEX]=1
then L_result[L_SEARCH]="<br><font color=red><"&L_result[L_SEARCH][2..]
color_comment()
elsif L_result[L_INDEX]=2
then L_result[L_SEARCH]="<font color=green><"&L_result[L_SEARCH][2..]
elsif L_result[L_INDEX]=3
then L_result[L_SEARCH]="<br><font color=blue><"&L_result[L_SEARCH][2..]
elsif L_result[L_INDEX]=4
then L_result[L_SEARCH]=L_result[L_SEARCH][1..-2]&"></font>"
elsif L_result[L_INDEX]=5
then L_result[L_SEARCH]="></font>"
end if
puts(fo,L_result[L_SEARCH])
end procedure
integer file=open("c:/mhtml/noord.htm","r")
fo =open("test.htm","w")
if not L_init(file)
then puts(1,"File not there\n") abort(1) end if
L_any({})
L_in(zoek)
color_HTML()
while L_result[L_INDEX]>0 do
L_in(zoek)
color_HTML()
end while
if L_end()
then puts(1,"End failed , stil work to do\n")
else puts(1,"End successfull\n")
end if
close(file)
close(fo)