/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to tools/rst2prettyhtml.py

  • Committer: Aaron Bentley
  • Date: 2006-11-10 01:55:55 UTC
  • mto: This revision was merged to the branch mainline in revision 2127.
  • Revision ID: aaron.bentley@utoronto.ca-20061110015555-f48202744b630209
Ignore html docs (both kinds)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/usr/bin/env python
2
 
 
 
1
#!/usr/bin/env python2.4
3
2
import errno
4
3
import os
5
4
from StringIO import StringIO
6
5
import sys
7
6
 
8
 
try:
9
 
    from docutils.core import publish_file
10
 
    from docutils.parsers import rst
11
 
except ImportError:
12
 
    print "Missing dependency.  Please install docutils."
13
 
    sys.exit(1)
14
 
try:
15
 
    from elementtree.ElementTree import XML
16
 
    from elementtree import HTMLTreeBuilder
17
 
except ImportError:
18
 
    print "Missing dependency.  Please install ElementTree."
19
 
    sys.exit(1)
20
 
try:
21
 
    import kid
22
 
except ImportError:
23
 
    print "Missing dependency.  Please install Kid."
24
 
    sys.exit(1)
25
 
 
 
7
from docutils.core import publish_file
 
8
from docutils.parsers import rst
 
9
from elementtree.ElementTree import XML
 
10
from elementtree import HTMLTreeBuilder
 
11
import kid
26
12
 
27
13
def kidified_rest(rest_file, template_name):
28
14
    xhtml_file = StringIO()
42
28
                          head=head, body=body)
43
29
    return (template.serialize(output="html"))
44
30
 
45
 
 
46
31
def safe_open(filename, mode):
47
32
    try:
48
33
        return open(filename, mode + 'b')
51
36
            raise
52
37
        sys.stderr.write('file not found: %s\n' % sys.argv[2])
53
38
        sys.exit(3)
54
 
 
55
 
 
56
 
def main(template, source=None, target=None):
57
 
    if source is not None:
58
 
        rest_file = safe_open(source, 'r')
59
 
    else:
60
 
        rest_file = sys.stdin
61
 
    if target is not None:
62
 
        out_file = safe_open(target, 'w')
63
 
    else:
64
 
        out_file = sys.stdout
65
 
    out_file.write(kidified_rest(rest_file, template))
66
 
 
67
 
assert len(sys.argv) > 1
68
 
 
69
 
# Strip options so only the arguments are passed
70
 
args = [x for x in sys.argv[1:] if not x.startswith('-')]
71
 
main(*args)
 
39
args = sys.argv[1:]
 
40
 
 
41
assert len(args) > 0
 
42
 
 
43
if len(args) > 1:
 
44
    rest_file = safe_open(args[1], 'r')
 
45
else:
 
46
    rest_file = sys.stdin
 
47
 
 
48
if len(args) > 2:
 
49
    out_file = safe_open(args[2], 'w')
 
50
else:
 
51
    out_file = sys.stdout
 
52
 
 
53
out_file.write(kidified_rest(rest_file, args[0]))