summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES3
-rw-r--r--sphinx/htmlhelp.py7
2 files changed, 6 insertions, 4 deletions
diff --git a/CHANGES b/CHANGES
index 63ba8d14..b2834df7 100644
--- a/CHANGES
+++ b/CHANGES
@@ -14,7 +14,8 @@ Bugs fixed
----------
* sphinx.htmlwriter: Correctly write the TOC file for any structure of the
- master document.
+ master document. Also encode non-ASCII characters as entities in TOC
+ and index file.
Release 0.2 (Apr 27, 2008)
diff --git a/sphinx/htmlhelp.py b/sphinx/htmlhelp.py
index 7ad6b2e7..dfdba9c6 100644
--- a/sphinx/htmlhelp.py
+++ b/sphinx/htmlhelp.py
@@ -158,8 +158,8 @@ def build_hhx(builder, outdir, outname):
for subnode in node:
write_toc(subnode, ullevel)
elif isinstance(node, nodes.reference):
- f.write(object_sitemap % (cgi.escape(node.astext()),
- node['refuri']))
+ item = object_sitemap % (cgi.escape(node.astext()), node['refuri'])
+ f.write(item.encode('ascii', 'xmlcharrefreplace'))
elif isinstance(node, nodes.bullet_list):
if ullevel != 0:
f.write('<UL>\n')
@@ -185,7 +185,8 @@ def build_hhx(builder, outdir, outname):
def write_index(title, refs, subitems):
if refs:
f.write('<LI> ')
- f.write(object_sitemap % (cgi.escape(title), refs[0]))
+ item = object_sitemap % (cgi.escape(title), refs[0])
+ f.write(item.encode('ascii', 'xmlcharrefreplace'))
for ref in refs[1:]:
f.write(object_sitemap % ('[Link]', ref))
if subitems: