]> sipb.mit.edu Git - ikiwiki.git/blobdiff - doc/bugs/map_fails_to_close_ul_element_for_empty_list.mdwn
Tag patches with the plugin to which they apply, or core
[ikiwiki.git] / doc / bugs / map_fails_to_close_ul_element_for_empty_list.mdwn
index 28960b9d75fdd2a42e3a7e81ae44ade92ce393e0..ceedbbdaa364efa0f73dc784aa59c65c14179204 100644 (file)
@@ -1,3 +1,5 @@
+[[!tag plugins/map patch]]
+
 input:
 
     before.
@@ -6,14 +8,14 @@ input:
 
 Presuming that the pagespec does not match, output:
 
-    <p>before.
-    <div class="map">
-    <ul>
-    </div></p>
+    <p>before.
+    <div class="map">
+    <ul>
+    </div></p>
 
 The UL element is not closed.
 
-Patch[[!tag patch]]:
+Patch:
 
     --- /usr/share/perl5/IkiWiki/Plugin/map.pm  2009-05-06 00:56:55.000000000 +0100
     +++ IkiWiki/Plugin/map.pm   2009-06-15 12:23:54.000000000 +0100
@@ -33,3 +35,15 @@ Patch[[!tag patch]]:
      
 
 -- [[Jon]]
+
+> Strictly speaking, a `<ul>` with no `<li>`s isn't valid HTML either...
+> could `map` instead delay emitting the first `<ul>` until it determines that
+> it will have at least one item? Perhaps refactoring that function into
+> something easier to regression-test would be useful. --[[smcv]]
+
+>> You are right (just checked 4.01 DTD to confirm). I suspect refactoring
+>> the function would be wise. From my brief look at it to formulate the
+>> above I thought it was a bit icky.  I'm not a good judge of what would
+>> be regression-test friendly but I might have a go at reworking it. With
+>> this variety of problem I have a strong inclination to use HOFs like map,
+>> grep. - [[Jon]]