Advertise my 'among' branch for review
authorSimon McVittie <smcv@ http://smcv.pseudorandom.co.uk/>
Sat, 18 Jul 2009 12:29:24 +0000 (13:29 +0100)
committerSimon McVittie <smcv@ http://smcv.pseudorandom.co.uk/>
Sat, 18 Jul 2009 12:29:24 +0000 (13:29 +0100)
doc/todo/backlinks_result_is_lossy.mdwn [new file with mode: 0644]
doc/todo/pagestats_among_a_subset_of_pages.mdwn [new file with mode: 0644]

diff --git a/doc/todo/backlinks_result_is_lossy.mdwn b/doc/todo/backlinks_result_is_lossy.mdwn
new file mode 100644 (file)
index 0000000..7b64a4f
--- /dev/null
@@ -0,0 +1,10 @@
+[[!tag patch patch/core]]
+
+IkiWiki::backlinks returns a form of $backlinks{$page} that has undergone a
+lossy transformation (to get it in the form that page templates want), making
+it more difficult to use in other contexts (like pagestats).
+
+A commit on my `among` branch splits it into IkiWiki::backlink_pages
+(which returns the keys of $backlinks{$page}, and might be suitable for
+exporting) and IkiWiki::backlinks (which calls backlink_pages, then performs
+the same lossy transformation as before on the result).
diff --git a/doc/todo/pagestats_among_a_subset_of_pages.mdwn b/doc/todo/pagestats_among_a_subset_of_pages.mdwn
new file mode 100644 (file)
index 0000000..f131b52
--- /dev/null
@@ -0,0 +1,26 @@
+[[!tag patch plugins/pagestats]]
+
+My `among` branch fixes [[todo/backlinks_result_is_lossy]], then uses that
+to provide pagestats for links from a subset of pages. From the docs included
+in the patch:
+
+> The optional `among` parameter limits counting to pages that match a
+> [[ikiwiki/PageSpec]]. For instance, to display a cloud of tags used on blog
+> entries, you could use:
+>
+>      \[[!pagestats pages="tags/*" among="blog/posts/*"]]
+>
+> or to display a cloud of tags related to Linux, you could use:
+> 
+>      \[[!pagestats pages="tags/* and not tags/linux" among="tagged(linux)"]]
+
+I use this on my tag pages on one site, with the following template:
+
+    \[[!pagestats pages="tags/* and !tags/<TMPL_VAR raw_tag>
+        and !tags/photogallery"
+      among="tagged(<TMPL_VAR raw_tag>)"]]
+
+    \[[!inline pages="tagged(<TMPL_VAR raw_tag>)"
+      archive="yes" quick="yes" reverse="yes" timeformat="%x"]]
+
+--[[smcv]]