doc: Disable SmartyPants in generated manual pages
authorVladimir Panteleev <git@thecybershadow.net>
Mon, 14 Aug 2017 06:36:54 +0000 (06:36 +0000)
committerDavid Bremner <david@tethera.net>
Sun, 20 Aug 2017 11:32:29 +0000 (08:32 -0300)
By default, Sphinx tries to pre-process text through SmartyPants,
which attempts to convert ASCII quotes and dashes to Unicode
characters. Unfortunately, this mangles technical text such as command
lines. For instance, this excerpt from notmuch-tag.rst:

  **notmuch** **tag** **--batch** [--input=<*filename*>]

got turned into:

  notmuch tag –batch [–input=<filename>]

That's an en-dash and an em-dash respectively.

Not only are these characters visually confusing and could easily be
mistaken for a single dash, copying and pasting such command lines
into a terminal is doomed to result in incomprehensible error
messages.

* doc/conf.py: Disable SmartyPants.

doc/conf.py

index aa864b3c0eb635268b46d5a326c3a7ebca864a73..0e65413d917aec68b71c8314b280e7f729de661a 100644 (file)
@@ -47,6 +47,10 @@ html_static_path = []
 # Output file base name for HTML help builder.
 htmlhelp_basename = 'notmuchdoc'
 
+# Disable SmartyPants, as it mangles command lines.
+# Despite the name, this actually affects manual pages as well.
+html_use_smartypants = False
+
 # -- Options for manual page output ---------------------------------------
 
 # One entry per manual page. List of tuples