summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakeshi KOMIYA <i.tkomiya@gmail.com>2016-01-14 10:58:57 +0900
committerTakeshi KOMIYA <i.tkomiya@gmail.com>2016-01-14 10:58:57 +0900
commit53cd2d4f3f386a8dfea28b314112b1a9a882b7c9 (patch)
tree0a955850f2f223d7b99a3f2c084a9e3f5a5e7593
parent3f998a0096021d1e99e99fc01a9222d075ae6b3f (diff)
downloadsphinx-git-53cd2d4f3f386a8dfea28b314112b1a9a882b7c9.tar.gz
Fix #2026: LaTeX builder rais error if parsed-literal includes links
-rw-r--r--CHANGES1
-rw-r--r--sphinx/writers/latex.py5
2 files changed, 5 insertions, 1 deletions
diff --git a/CHANGES b/CHANGES
index 794caa1ac..b6e8a953f 100644
--- a/CHANGES
+++ b/CHANGES
@@ -8,6 +8,7 @@ Bugs fixed
* Fix filenames were not shown on warnings of citations
* Fix line numbers was not shown on warnings in LaTeX and texinfo builders
* Fix line numbers was not shown on warnings of indecies
+* #2026: Fix LaTeX builder rais error if parsed-literal includes links
Release 1.3.4 (released Jan 12, 2016)
=====================================
diff --git a/sphinx/writers/latex.py b/sphinx/writers/latex.py
index 9d94f28a6..35ceffee4 100644
--- a/sphinx/writers/latex.py
+++ b/sphinx/writers/latex.py
@@ -459,7 +459,7 @@ class LaTeXTranslator(nodes.NodeVisitor):
'\\label{%s}' % self.idescape(id)
def hyperlink(self, id):
- return '{\\hyperref[%s]{' % self.idescape(id)
+ return '{\\hyperref[%s]{' % self.hyperrefescape(id)
def hyperpageref(self, id):
return '\\autopageref*{%s}' % self.idescape(id)
@@ -469,6 +469,9 @@ class LaTeXTranslator(nodes.NodeVisitor):
encode('ascii', 'backslashreplace').decode('ascii').\
replace('\\', '_')
+ def hyperrefescape(self, ref):
+ return self.idescape(ref).replace('-', '\\string-')
+
def babel_renewcommand(self, builder, command, definition):
if builder.config.language == 'ja':
babel_prefix = ''