cryptocd/documents/mod_html_files.py

78 lines
2.5 KiB
Python
Raw Normal View History

2005-04-23 22:35:52 +02:00
#!/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()
# zu_manipulierende_variable=string.replace(zu_manipulierende_variable,alter_string,neuer_string)
# recently switched to latex2html, now cutting of headers
# dieser abschnitt muss ueberarbeitet werden!
2005-04-23 22:35:52 +02:00
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,"")
#put whole content into div tags
content = string.replace(content,"</BODY>",'</div>')
content = string.replace(content,"</HTML>",'<!-- end of main -->')
#remove empty image subtitles
content = string.replace(content,"<STRONG>Abbildung:</STRONG>","")
2005-04-23 22:35:52 +02:00
# replace "./filename.png" references with "filename.png"
# (this avoids validation warnings)
content = string.replace(content,'HREF="./','HREF="')
# Linie vor Fussnoten wird entfernt
# Fussnoten bekommen id, damit sie per css formatierbar sind
content = string.replace(content,'<HR><H4>Fu&szlig;noten</H4>\n<DL>','<H4>Fu&szlig;noten</H4>\n<DL id="footnotes">')
# Sonderzeichen in Fussnoten werden ersetzt (Hotfix fuer einen latex2html-Bug)
content = string.replace(content,'<EFBFBD>','&auml;')
content = string.replace(content,'<EFBFBD>','&Auml;')
content = string.replace(content,'<EFBFBD>','&ouml;')
content = string.replace(content,'<EFBFBD>','&Ouml;')
content = string.replace(content,'<EFBFBD>','&uuml;')
content = string.replace(content,'<EFBFBD>','&Uuml;')
content = string.replace(content,'<EFBFBD>','&szlig;')
2006-06-15 12:45:42 +02:00
# Links innerhalb von div="main" die zu externen Seiten verweisen, bekommen ein tag
content = string.replace(content,'HREF="http:','class="externerLink" href="http:')
2005-04-23 22:35:52 +02:00
#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)