]> sipb.mit.edu Git - ikiwiki.git/blobdiff - doc/bugs/Inline_doesn__39__t_wikilink_to_pages.mdwn
(no commit message)
[ikiwiki.git] / doc / bugs / Inline_doesn__39__t_wikilink_to_pages.mdwn
index 89e0b9d692abce3ac8f7218c35a11637ad8434f8..13b80b436503480b8795609cc2a95339f67c52b4 100644 (file)
@@ -2,10 +2,6 @@ It seems that the [[ikiwiki/directive/inline]] directive doesn't generate wikili
 
 \[[!inline pages="bugs/* and !*/discussion and backlink(bugs)" feeds=no postform=no archive=yes show="10"]]
 
-But here it is:
-
-[[!inline pages="bugs/* and !*/discussion and backlink(bugs)" feeds=no postform=no archive=yes show="10"]]
-
 and note that it only included the 'normal' wikilinks (and also note that this page is not marked done even though the done page is inlined).
 One might also wonder if inline would make this page link to any internal links on those inlined pages too, but I think
 that would be overkill.
@@ -17,6 +13,33 @@ It appears that [[ikiwiki/directive/map]] also doesn't wikilink to the pages it
 cases there should be another parameter to the directive that allows linking to switched on.  Just switching
 it on universally at this point might break a number of people's pagespecs.  -- [[Will]]
 
+> There's a simple reason why these directives don't generate a record of a
+> wikilink between them and the pages they include: Semantically, inlining
+> a page is not the same as writing a link to it. Nor is generating a map that
+> lists a page the same as linking to it. I don't think this is a bug.
+> --[[Joey]] 
+
+>> Fair enough.  I guess we can mark this as [[done]] then.
+>>
+>> Just a bit of background on where I was going here... I was looking for
+>> a simpler way of attacking [[todo/tracking_bugs_with_dependencies]].
+>> In particular, rather than introducing changes to the pagespec definition,
+>> I wondered if you could use wiki pages as the defined pagespec and 
+>> introduce a 'match_mutual' function which matches whenever two pages
+>> link to the same third page, then you don't need to alter the pagespec
+>> handling code.
+>>
+>> But that requires being able use use a pagespec to decide what pages
+>> are linked to.  e.g. I want to make an 'openbugs' page that links to all
+>> open bugs.  Then I could make a 'readybugs' page that links to
+>> `backlink(openbugs) and !mutualLink(openbugs)`.  That is, all bugs
+>> that are open and do not themselves link to an open bug.
+>>
+>> The problem with all this is that it introduces an ordering dependency,
+>> as I noted below.  I think the original proposal is better, because it
+>> handles that ordering dependency in the definition of the pagespecs.
+>> --[[Will]]
+
 Here is a patch to make map link to its linked pages (when passed `link="yes"`).  It is a bit problematic in that it uses a pagespec
 to decide what to link to (which is why I wanted it).  However, at the time the pagespec is used the links
 for each page haven't finished being calculated (we're using the pagespec to figure out those links,