66 lines
2.3 KiB
Python
66 lines
2.3 KiB
Python
|
#!/usr/bin/env python
|
||
|
'''gets a latex2html file and returns the file with a css tag
|
||
|
and stuff'''
|
||
|
import string
|
||
|
import sys
|
||
|
import re
|
||
|
|
||
|
|
||
|
def writeFile(data, filename):
|
||
|
"""
|
||
|
write data to the given filename
|
||
|
@param filename String : name of file to write to
|
||
|
"""
|
||
|
try:
|
||
|
f = open(filename,"w")#oeffnen und schliessen =>
|
||
|
f.close() #datei ist jetzt genullt
|
||
|
f = open(filename,"a") #anhaengend oeffnen
|
||
|
f.write(data)
|
||
|
f.close()
|
||
|
return ""
|
||
|
except:
|
||
|
print "(WW)[%s]: \"%s\" is not writeable!"%(__name__, filename)
|
||
|
return filename
|
||
|
|
||
|
|
||
|
### start of code
|
||
|
try:
|
||
|
f=open(sys.argv[1],"r")
|
||
|
content=f.read()
|
||
|
f.close()
|
||
|
content=string.replace(content,'Table of Contents','Inhalt')
|
||
|
# now cut off the hevea footer:
|
||
|
footer="""<HR SIZE=2>
|
||
|
<BLOCKQUOTE><EM>This document was translated from L<sup>A</sup>T<sub>E</sub>X by
|
||
|
</EM><A HREF="http://pauillac.inria.fr/~maranget/hevea/index.html"><EM>H<FONT SIZE=2><sup>E</sup></FONT>V<FONT SIZE=2><sup>E</sup></FONT>A</EM></A><EM>.
|
||
|
</EM></BLOCKQUOTE>"""
|
||
|
content=string.replace(content,footer,"")
|
||
|
#hevea inserts font tags, and
|
||
|
#we don't want none fuken redneck messin wid our stylez!!@!#$!!1
|
||
|
content = string.replace(content,'<FONT SIZE=5>','')
|
||
|
content = string.replace(content,'</FONT>','')
|
||
|
#recently switched to latex2html, now cutting of headers
|
||
|
startoffset=string.find(content,"<HR>\n<ADDRESS>")
|
||
|
endoffset=string.find(content,"</ADDRESS>",startoffset)+len("</ADDRESS>")
|
||
|
if (startoffset >10) and (endoffset>startoffset):
|
||
|
footer=content[startoffset:endoffset]
|
||
|
content=string.replace(content,footer,"")
|
||
|
#rename footnotes into Fussnoten
|
||
|
content = string.replace(content,"Footnotes","Fu\xdfnoten")
|
||
|
#rename content into Inhalt
|
||
|
content = string.replace(content,"Contents","Inhalt")
|
||
|
#delete everything till <body> tag
|
||
|
content = content[string.find(content,"<BODY >"):]
|
||
|
#put whole content into div tags
|
||
|
content = string.replace(content,"<BODY >",'<!-- main starts here -->\n<div id="main">')
|
||
|
content = string.replace(content,"</BODY>",'</div>')
|
||
|
content = string.replace(content,"</HTML>",'<!-- end of main -->')
|
||
|
#all done, writing tuned files
|
||
|
writeFile(content,sys.argv[1])
|
||
|
except: #read/write/whatever failed,
|
||
|
# BOESE: unklare Fehlerbehandlung
|
||
|
print "an defined error occured - but i'm too lame to fix that"
|
||
|
print "usage:",sys.argv[0],"<file_to_modify>"
|
||
|
sys.exit(1)
|
||
|
sys.exit(0)
|