From a03c93524ba2ca4143c10770a2fa0dd134b57a83 Mon Sep 17 00:00:00 2001 From: Mateusz Kowalczyk Date: Sun, 8 Sep 2013 01:28:57 +0100 Subject: Allow for nesting of paragraphs under lists. The nesting rules are similar to Markdown's with the exception that we can not simply indent the first line of a hard wrapped indented paragraph and have it treated as if it was fully indented. The reason is differences in markup as some of our constructs care about whitespace while others just swallow everything up so it's just a lot easier to not bother with it rather than making arbitrary rules. Note that we now drop trailing for string entities inside of lists. They weren't needed and it makes the output look uniform whether we use a single or double newline between list elements. Conflicts: src/Haddock/Parser.hs test/Haddock/ParserSpec.hs --- html-test/src/Nesting.hs | 115 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 115 insertions(+) create mode 100644 html-test/src/Nesting.hs (limited to 'html-test/src') diff --git a/html-test/src/Nesting.hs b/html-test/src/Nesting.hs new file mode 100644 index 00000000..5ab27ec0 --- /dev/null +++ b/html-test/src/Nesting.hs @@ -0,0 +1,115 @@ +module Nesting where + +{-| +* We can + + * easily go back + + 1. some indentation + + * levels + +1. @back at the top@ + +-} +d :: t +d = undefined + + +{-| +* Beginning of list + + * second list + + * Some indented list but +the presence of this text pushes it out of nesting back to the top. +-} +e :: t +e = undefined + + +{-| +* Beginning of list + + @ + nested code + we preserve the space correctly + @ +-} +f :: t +f = undefined + + +{-| +* Beginning of list + + * Nested list +-} +g :: t +g = undefined + +{-| +* Beginning of list + + > nested + > bird + > tracks +-} +h :: t +h = undefined + +{-| +* Beginning of list +This belongs to the list above! + + > nested + > bird + > tracks + + * Next list + More of the indented list. + + * Deeper + + * Deeper + + * Even deeper! + * No newline separation even in indented lists. +-} +i :: t +i = undefined + + + +{-| +[All this] Works for +definition lists too. + + > nested + > bird + > tracks + + * Next list + with more of the indented list content. + + Even more content on a new line. + + 1. Different type of list + + (2) Deeper + + >>> Here's an example in a list + example result + + [b] Even deeper! + [c] No newline separation even in indented lists. + We can have any paragraph level element that we normally + can, like headers + + === Level 3 header + with some content… + + * and even more lists inside +-} +j :: t +j = undefined -- cgit v1.2.3