diff --git a/doc/_static/custom.css b/doc/_static/custom.css
new file mode 100644
index 00000000000..281a146afe3
--- /dev/null
+++ b/doc/_static/custom.css
@@ -0,0 +1,9 @@
+/* The theme stops text in table cells from wrapping, except within inline
+ * literals. Instead, wrap the text and keep each literal on one line. */
+.wy-table-responsive table td {
+ white-space: normal;
+}
+
+.rst-content table.docutils code.literal {
+ white-space: nowrap;
+}
diff --git a/doc/conf.py b/doc/conf.py
index efd9cbc6a2a..f7469208715 100644
--- a/doc/conf.py
+++ b/doc/conf.py
@@ -69,7 +69,8 @@
html_title = "Cabal {} User's Guide".format(release)
html_short_title = "Cabal %s User's Guide" % release
html_logo = 'images/Cabal-dark.png'
-html_static_path = ['images']
+html_static_path = ['images', '_static']
+html_css_files = ['custom.css']
# Convert quotes and dashes to typographically correct entities
html_use_smartypants = True
html_show_copyright = True
diff --git a/doc/config.rst b/doc/config.rst
index 00032a459ca..f1ef23c3916 100644
--- a/doc/config.rst
+++ b/doc/config.rst
@@ -325,47 +325,52 @@ The list of known programs is:
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
| Program | Notes |
+=======================+====================================================================================================================================+
-| ``alex`` | ``_ |
+| ``alex`` | `Alex User Guide `_ |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
| ``ar`` | Usually provided by GHC's ``"ar command"`` entry in ``ghc --info``. Note this might refer to ``llvm-ar`` instead of GNU's ``ar``. |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``c2hs`` | ``_ |
+| ``c2hs`` | :hackage-pkg:`c2hs on Hackage ` |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``doctest`` | ``_ |
+| ``cpphs`` | :hackage-pkg:`cpphs on Hackage ` |
++-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
+| ``doctest`` | :hackage-pkg:`doctest on Hackage ` |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
| ``gcc`` | Usually provided by GHC's ``"C compiler command"`` entry in ``ghc --info``. Note this might refer to ``clang`` instead of ``gcc``. |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``ghc`` | |
+| ``ghc`` | `GHC User's Guide `_ |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``ghc-pkg`` | |
+| ``ghc-pkg`` | `GHC User's Guide: Package management |
+| | `_ |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``ghcjs`` | |
+| ``ghcjs`` | `GHCJS on GitHub `_ |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``ghcjs-pkg`` | |
+| ``ghcjs-pkg`` | The ``ghc-pkg`` of GHCJS, see `GHCJS on GitHub`_. |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``haddock`` | ``_ |
+| ``haddock`` | `Haddock User Guide `_ |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``happy`` | ``_ |
+| ``happy`` | `Happy User Guide `_ |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``hpc`` | ``_ |
+| ``hpc`` | :hackage-pkg:`hpc on Hackage ` |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``hsc2hs`` | ``_ |
+| ``hsc2hs`` | :hackage-pkg:`hsc2hs on Hackage ` |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``hscolour`` | ``_ |
+| ``hscolour`` | :hackage-pkg:`hscolour on Hackage ` |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``jhc`` | ``_ |
+| ``jhc`` | `jhc homepage `_ |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
| ``ld`` | Usually provided by GHC's ``"ld command"`` entry in ``ghc --info``. |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``pkg-config`` | |
+| ``pkg-config`` | Used to find the dependencies listed in :pkg-field:`pkgconfig-depends`, see the |
+| | `pkg-config homepage `_. |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``runghc`` | |
+| ``runghc`` | `GHC User's Guide: Using runghc `_ |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``strip`` | |
+| ``strip`` | Used when installing if :cfg-field:`executable-stripping` or :cfg-field:`library-stripping` is enabled, see |
+| | `GNU strip `_. |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``tar`` | |
+| ``tar`` | Used by :ref:`setup-sdist` to create the source tarball, see `GNU tar `_. |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
-| ``uhc`` | ``_ |
+| ``uhc`` | `UHC on GitHub `_ |
+-----------------------+------------------------------------------------------------------------------------------------------------------------------------+
.. warning::