aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwatashi <zejun.wu@gmail.com>2015-04-26 16:35:28 -0700
committerwatashi <zejun.wu@gmail.com>2015-04-26 16:35:35 -0700
commit5d04e313cc52ecf88b0fd0b3d0d39ce6a8dc7406 (patch)
tree9b03274f736ce33540b7f21b7051691070e8009c
parentd567a12b2d24bab610cd7e8f8014d40c7615e24d (diff)
Do not insert anchor for section headings in contents box
-rw-r--r--.gitignore3
-rw-r--r--haddock-api/src/Haddock/Backends/Xhtml/DocMarkup.hs5
-rw-r--r--html-test/ref/Bug387.html111
-rw-r--r--html-test/src/Bug387.hs12
4 files changed, 130 insertions, 1 deletions
diff --git a/.gitignore b/.gitignore
index 6b8d26e0..2d3f4516 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,3 +12,6 @@
/doc/configure
tags
TAGS
+
+.cabal-sandbox
+cabal.sandbox.config
diff --git a/haddock-api/src/Haddock/Backends/Xhtml/DocMarkup.hs b/haddock-api/src/Haddock/Backends/Xhtml/DocMarkup.hs
index e807eb94..c23f3f08 100644
--- a/haddock-api/src/Haddock/Backends/Xhtml/DocMarkup.hs
+++ b/haddock-api/src/Haddock/Backends/Xhtml/DocMarkup.hs
@@ -62,7 +62,10 @@ parHtmlMarkup qual insertAnchors ppId = Markup {
then anchor ! [href url]
<< fromMaybe url mLabel
else toHtml $ fromMaybe url mLabel,
- markupAName = \aname -> namedAnchor aname << "",
+ markupAName = \aname
+ -> if insertAnchors
+ then namedAnchor aname << ""
+ else noHtml,
markupPic = \(Picture uri t) -> image ! ([src uri] ++ fromMaybe [] (return . title <$> t)),
markupProperty = pre . toHtml,
markupExample = examplesToHtml,
diff --git a/html-test/ref/Bug387.html b/html-test/ref/Bug387.html
new file mode 100644
index 00000000..2d2009b1
--- /dev/null
+++ b/html-test/ref/Bug387.html
@@ -0,0 +1,111 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+><head
+ ><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"
+ /><title
+ >Bug387</title
+ ><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean"
+ /><script src="haddock-util.js" type="text/javascript"
+ ></script
+ ><script type="text/javascript"
+ >//<![CDATA[
+window.onload = function () {pageLoad();setSynopsis("mini_Bug387.html");};
+//]]>
+</script
+ ></head
+ ><body
+ ><div id="package-header"
+ ><ul class="links" id="page-menu"
+ ><li
+ ><a href=""
+ >Contents</a
+ ></li
+ ><li
+ ><a href=""
+ >Index</a
+ ></li
+ ></ul
+ ><p class="caption empty"
+ >&nbsp;</p
+ ></div
+ ><div id="content"
+ ><div id="module-header"
+ ><table class="info"
+ ><tr
+ ><th
+ >Safe Haskell</th
+ ><td
+ >Safe</td
+ ></tr
+ ></table
+ ><p class="caption"
+ >Bug387</p
+ ></div
+ ><div id="table-of-contents"
+ ><p class="caption"
+ >Contents</p
+ ><ul
+ ><li
+ ><a href=""
+ >Section1</a
+ ></li
+ ><li
+ ><a href=""
+ >Section2</a
+ ></li
+ ></ul
+ ></div
+ ><div id="synopsis"
+ ><p id="control.syn" class="caption expander" onclick="toggleSection('syn')"
+ >Synopsis</p
+ ><ul id="section.syn" class="hide" onclick="toggleSection('syn')"
+ ><li class="src short"
+ ><a href=""
+ >test1</a
+ > :: <a href=""
+ >Int</a
+ ></li
+ ><li class="src short"
+ ><a href=""
+ >test2</a
+ > :: <a href=""
+ >Int</a
+ ></li
+ ></ul
+ ></div
+ ><div id="interface"
+ ><h1 id="g:1"
+ >Section1<a name="a:section1"
+ ></a
+ ></h1
+ ><div class="top"
+ ><p class="src"
+ ><a name="v:test1" class="def"
+ >test1</a
+ > :: <a href=""
+ >Int</a
+ ></p
+ ></div
+ ><h1 id="g:2"
+ >Section2<a name="a:section2"
+ ></a
+ ></h1
+ ><div class="top"
+ ><p class="src"
+ ><a name="v:test2" class="def"
+ >test2</a
+ > :: <a href=""
+ >Int</a
+ ></p
+ ></div
+ ></div
+ ></div
+ ><div id="footer"
+ ><p
+ >Produced by <a href=""
+ >Haddock</a
+ > version 2.16.1</p
+ ></div
+ ></body
+ ></html
+>
diff --git a/html-test/src/Bug387.hs b/html-test/src/Bug387.hs
new file mode 100644
index 00000000..d9fed34e
--- /dev/null
+++ b/html-test/src/Bug387.hs
@@ -0,0 +1,12 @@
+module Bug387
+ ( -- * Section1#a:section1#
+ test1
+ -- * Section2#a:section2#
+ , test2
+ ) where
+
+test1 :: Int
+test1 = 223
+
+test2 :: Int
+test2 = 42