cryptocd-archiv/v1.0/doku/mod_html_files.py

68 lines
2.2 KiB
Python

#!/usr/bin/env python
'''gets a latex2html file and returns the file with a css tag
and stuff'''
import string
import sys
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()
if string.find(content,'''REL="stylesheet"''')<0:#if file is unmodified:
old='</TITLE>'
new='''</TITLE>\n<LINK REL="stylesheet" HREF="../gpg_main.css">\n'''
content=string.replace(content,old,new)#insert css tag
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")
#put whole content into div tags
content = string.replace(content,"<BODY >",'<BODY ><DIV ID="real_shit">')
content = string.replace(content,"</BODY>",'</DIV></BODY>')
#all done, writing tuned files
writeFile(content,sys.argv[1])
except: #read/write/whatever failed,
print "usage:",sys.argv[0],"<file_to_modify>"
sys.exit(1)
sys.exit(0)