docbook: Thread: Adding DTDs for HTML
Subject:
Adding DTDs for HTML
From:
Charles Curley ####@####.####
Date:
3 Jun 2004 23:09:37 -0000
Message-Id: <20040603230932.GE3174@charlescurley.com>
I know this is the docbook list, not the HTML list, but the process
should be similar so maybe someone has an answer.
I'd like to edit in emacs' psgml mode against the HML 4.01 DTDs.
Questions:
* Where do I get the DTDs? The w3 web page doesn't have any obvious
place to go.
* How do I integrate them into the catalog system for openjade so I
can validate against them?
* How do I integrate them into emacs' ecatalog system?
I would welcome any pointers to suitable documentation.
Thanks.
--
Charles Curley /"\ ASCII Ribbon Campaign
Looking for fine software \ / Respect for open standards
and/or writing? X No HTML/RTF in email
http://www.charlescurley.com / \ No M$ Word docs in email
Key fingerprint = CE5C 6645 A45A 64E4 94C0 809C FFF6 4C48 4ECD DFDB
--> -->
|
<type 'exceptions.IOError'> | Python 2.5.2: /usr/bin/python Fri Apr 26 23:04:20 2024 |
A problem occurred in a Python script. Here is the sequence of
function calls leading up to the error, in the order they occurred.
/opt/ezmlm-browse-0.20/main.py in main() |
424
|
425 if path is not None:
|
426 main_path(path)
|
427 else:
|
428 main_form()
|
global main_form = <function main_form at 0xa009c6c> |
/opt/ezmlm-browse-0.20/main.py in main_form() |
378 except ImportError:
|
379 die(ctxt, "Invalid command")
|
380 module.do(ctxt)
|
381
|
382 def main():
|
module = <module 'commands.showthread' from '/opt/ezmlm-browse-0.20/commands/showthread.pyc'>, module.do = <function do at 0xa0122cc>, global ctxt = {'row': 0, 'cmd': 'showthread', 'charset': 'utf-...g DTDs for HTML', 'HTTP_ACCEPT_ENCODING': 'gzip'} |
/opt/ezmlm-browse-0.20/commands/showthread.py in do(ctxt={'row': 0, 'cmd': 'showthread', 'charset': 'utf-...g DTDs for HTML', 'HTTP_ACCEPT_ENCODING': 'gzip'}) |
9 ctxt.update(ezmlm.thread(ctxt[THREADID]))
|
10 header(ctxt, 'Thread: ' + ctxt[SUBJECT], 'showthread')
|
11 do_list(ctxt, 'msgs', ctxt[MSGSPERPAGE], ctxt[MESSAGES],
|
12 lambda:sub_showmsg(ctxt, ctxt[MSGNUM]))
|
13 footer(ctxt)
|
global sub_showmsg = <function sub_showmsg at 0xa0091ec>, ctxt = {'row': 0, 'cmd': 'showthread', 'charset': 'utf-...g DTDs for HTML', 'HTTP_ACCEPT_ENCODING': 'gzip'}, global MSGNUM = 'msgnum' |
/opt/ezmlm-browse-0.20/globalfns.py in do_list(ctxt={'row': 0, 'cmd': 'showthread', 'charset': 'utf-...g DTDs for HTML', 'HTTP_ACCEPT_ENCODING': 'gzip'}, name='msgs', perpage=10, values=[{'author': u'Charles Curley', 'authorid': 'fbacfjfdkmpbdhgmbbhp', 'date': '3 Jun 2004 23:09:37 -0000', 'month': 200406, 'msgnum': 702, 'subject': u'Adding DTDs for HTML', 'threadid': 'hljijpjlncagjfkoogkn', 'timestamp': 1086304177.0}, {'author': u'Saqib Ali', 'authorid': 'icjmgahabpdlipbhobhb', 'date': '4 Jun 2004 07:12:25 -0000', 'month': 200406, 'msgnum': 703, 'subject': u'Re: Adding DTDs for HTML', 'threadid': 'hljijpjlncagjfkoogkn', 'timestamp': 1086333145.0}], peritem=<function <lambda> at 0xa012454>) |
128 write(template % ctxt)
|
129 if peritem:
|
130 peritem()
|
131 ctxt[ROW] += 1
|
132
|
peritem = <function <lambda> at 0xa012454> |
/opt/ezmlm-browse-0.20/commands/showthread.py in () |
9 ctxt.update(ezmlm.thread(ctxt[THREADID]))
|
10 header(ctxt, 'Thread: ' + ctxt[SUBJECT], 'showthread')
|
11 do_list(ctxt, 'msgs', ctxt[MSGSPERPAGE], ctxt[MESSAGES],
|
12 lambda:sub_showmsg(ctxt, ctxt[MSGNUM]))
|
13 footer(ctxt)
|
global sub_showmsg = <function sub_showmsg at 0xa0091ec>, ctxt = {'row': 0, 'cmd': 'showthread', 'charset': 'utf-...g DTDs for HTML', 'HTTP_ACCEPT_ENCODING': 'gzip'}, global MSGNUM = 'msgnum' |
/opt/ezmlm-browse-0.20/globalfns.py in sub_showmsg(ctxt={'row': 0, 'cmd': 'showthread', 'charset': 'utf-...g DTDs for HTML', 'HTTP_ACCEPT_ENCODING': 'gzip'}, msgnum=702) |
229 format_timestamp(ctxt, ctxt)
|
230 write(html('msg-header') % ctxt)
|
231 rec_showpart(ctxt, msg, 0)
|
232 write(html('msg-footer') % ctxt)
|
233 ctxt.pop()
|
global rec_showpart = <function rec_showpart at 0xa0091b4>, ctxt = {'row': 0, 'cmd': 'showthread', 'charset': 'utf-...g DTDs for HTML', 'HTTP_ACCEPT_ENCODING': 'gzip'}, msg = <email.message.Message instance at 0xa063d2c> |
/opt/ezmlm-browse-0.20/globalfns.py in rec_showpart(ctxt={'row': 0, 'cmd': 'showthread', 'charset': 'utf-...g DTDs for HTML', 'HTTP_ACCEPT_ENCODING': 'gzip'}, part=<email.message.Message instance at 0xa063d2c>, partnum=1) |
205 else:
|
206 for p in part.get_payload():
|
207 partnum = rec_showpart(ctxt, p, partnum+1)
|
208 else:
|
209 write(html('msg-sep') % ctxt)
|
partnum = 1, global rec_showpart = <function rec_showpart at 0xa0091b4>, ctxt = {'row': 0, 'cmd': 'showthread', 'charset': 'utf-...g DTDs for HTML', 'HTTP_ACCEPT_ENCODING': 'gzip'}, p = <email.message.Message instance at 0xa063ccc> |
/opt/ezmlm-browse-0.20/globalfns.py in rec_showpart(ctxt={'row': 0, 'cmd': 'showthread', 'charset': 'utf-...g DTDs for HTML', 'HTTP_ACCEPT_ENCODING': 'gzip'}, part=<email.message.Message instance at 0xa063ccc>, partnum=2) |
208 else:
|
209 write(html('msg-sep') % ctxt)
|
210 sub_showpart(ctxt, part)
|
211 return partnum
|
212
|
global sub_showpart = <function sub_showpart at 0xa009144>, ctxt = {'row': 0, 'cmd': 'showthread', 'charset': 'utf-...g DTDs for HTML', 'HTTP_ACCEPT_ENCODING': 'gzip'}, part = <email.message.Message instance at 0xa063ccc> |
/opt/ezmlm-browse-0.20/globalfns.py in sub_showpart(ctxt={'row': 0, 'cmd': 'showthread', 'charset': 'utf-...g DTDs for HTML', 'HTTP_ACCEPT_ENCODING': 'gzip'}, part=<email.message.Message instance at 0xa063ccc>) |
164 type = ctxt[TYPE] = part.get_content_type()
|
165 ctxt[FILENAME] = part.get_filename()
|
166 template = html('msg-' + type.replace('/', '-'))
|
167 if not template:
|
168 template = html('msg-' + type[:type.find('/')])
|
global template = <function template at 0xa001e9c>, global html = <function html at 0xa001ed4>, type = 'application/pgp-signature', type.replace = <built-in method replace of str object at 0xa067838> |
/opt/ezmlm-browse-0.20/globalfns.py in html(name='msg-application-pgp-signature') |
40
|
41 def html(name):
|
42 return template(name + '.html')
|
43
|
44 def xml(name):
|
global template = <function template at 0xa001e9c>, name = 'msg-application-pgp-signature' |
/opt/ezmlm-browse-0.20/globalfns.py in template(filename='msg-application-pgp-signature.html') |
31 except IOError:
|
32 if not _template_zipfile:
|
33 _template_zipfile = zipfile.ZipFile(sys.argv[0])
|
34 try:
|
35 f = _template_zipfile.open(n).read()
|
global _template_zipfile = None, global zipfile = <module 'zipfile' from '/usr/lib/python2.5/zipfile.pyc'>, zipfile.ZipFile = <class zipfile.ZipFile at 0x9f9aa4c>, global sys = <module 'sys' (built-in)>, sys.argv = ['-c', '/opt/ezmlm-browse-0.20'] |
/usr/lib/python2.5/zipfile.py in __init__(self=<zipfile.ZipFile instance at 0xa014a2c>, file='-c', mode='r', compression=0, allowZip64=False) |
337 self.filename = file
|
338 modeDict = {'r' : 'rb', 'w': 'wb', 'a' : 'r+b'}
|
339 self.fp = open(file, modeDict[mode])
|
340 else:
|
341 self._filePassed = 1
|
self = <zipfile.ZipFile instance at 0xa014a2c>, self.fp = None, builtin open = <built-in function open>, file = '-c', modeDict = {'a': 'r+b', 'r': 'rb', 'w': 'wb'}, mode = 'r' |
<type 'exceptions.IOError'>: [Errno 2] No such file or directory: '-c'
args =
(2, 'No such file or directory')
errno =
2
filename =
'-c'
message =
''
strerror =
'No such file or directory'