sphinx/doc/extdev
jfbu 30b26dd6a1 LaTeX: avoid quotes and TeX ligature replacements in PDF output
Refs: #6890

The comma character is not TeX-escaped because it is frequent in general
text and escaping it would make the LaTeX output larger for only dealing
with the problem of the LaTeX-ligature of ,, into a single character.
And one there is problem with the commas in options to Verbatim from
PygmentsBridge.

The hyphen character is escaped (not in ids and URIs!) to
\sphinxhyphen{} for both Unicode and non-Unicode engines. This is needed
to work around hyperref transforming -- and --- from section titles into
EN DASH resp. EM DASH in PDF bookmarks.

https://github.com/latex3/hyperref/issues/112

Note to expert LaTeX users: if Sphinx latex user with xelatex has

- turned off Smart Quotes for some reason,

- but does want TeX ligatures and thus overrode Sphinx
latex_elements['fontenc'] default (since #6888) to this effect,

then this should be added to LaTeX preamble:

    \def\sphinxhyphen#1{-}% (\protected is now not needed)
    \let\sphinxhyphenforbookmarks\sphinxhyphen
2019-12-15 14:19:50 +01:00
..
appapi.rst doclinter: restrict by 90 columns 2019-05-26 10:53:53 +09:00
builderapi.rst Make EventManager portable 2019-04-16 14:06:36 +09:00
collectorapi.rst Update docs for collectors API 2017-01-28 20:44:40 +09:00
deprecated.rst LaTeX: avoid quotes and TeX ligature replacements in PDF output 2019-12-15 14:19:50 +01:00
domainapi.rst Doc: move API docs in their own chapter and add more of it. 2014-01-20 17:21:44 +01:00
envapi.rst Make EventManager portable 2019-04-16 14:06:36 +09:00
i18n.rst doc: Fold lines by 80 columns 2019-05-30 01:07:05 +09:00
index.rst doc: Fold lines by 80 columns 2019-05-30 01:07:05 +09:00
logging.rst doclinter: restrict by 90 columns 2019-05-26 10:53:53 +09:00
markupapi.rst doclinter: restrict by 90 columns 2019-05-26 10:53:53 +09:00
nodes.rst Drop deprecated termsep node 2017-01-05 13:44:04 +09:00
parserapi.rst DOC: Fix typo: add_source_parsers() -> add_source_parser() 2018-07-17 10:00:05 +02:00
projectapi.rst Add sphinx.project; a manipulator for project and documents 2018-10-16 10:34:58 +09:00
utils.rst Make EventManager portable 2019-04-16 14:06:36 +09:00