X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/ad8507210e3b76e2f8902b7eedebfaf2c1349829..14609ab92d01133c6b13fac5c5ae5336d512e8dd:/doc/todo/Support_wildcard_inside_of_link__40____41___within_a_pagespec.mdwn diff --git a/doc/todo/Support_wildcard_inside_of_link__40____41___within_a_pagespec.mdwn b/doc/todo/Support_wildcard_inside_of_link__40____41___within_a_pagespec.mdwn index e520cab8a..24f9054f7 100644 --- a/doc/todo/Support_wildcard_inside_of_link__40____41___within_a_pagespec.mdwn +++ b/doc/todo/Support_wildcard_inside_of_link__40____41___within_a_pagespec.mdwn @@ -2,7 +2,44 @@ I don't segregate my blog entries into a directory, but instead want my blog to simply consist of all pages that have been tagged. That is, I'd like to have my blog page look like this: - [[inline pages="link(tag/*)"]] + \[[inline pages="link(tag/*)"]] -But I [tried](http://www.cworth.org/blog) that and it doesn't seem to -work in ikiwiki 2.1 at least. +That doesn't work in ikiwiki 2.1, but I have it +[working](http://www.cworth.org/blog) with the following patch: + + From 6149386084417fb8375d08446438b20ed52d6882 Mon Sep 17 00:00:00 2001 + From: Carl Worth + Date: Tue, 29 May 2007 11:43:21 -0700 + Subject: [PATCH] Allow for glob matching inside of link() within a pagespec + + --- + IkiWiki.pm | 11 ++++++++--- + 1 files changed, 8 insertions(+), 3 deletions(-) + + diff --git a/IkiWiki.pm b/IkiWiki.pm + index 38aa46a..cd42e8d 100644 + --- a/IkiWiki.pm + +++ b/IkiWiki.pm + @@ -1082,10 +1082,15 @@ sub match_link ($$;@) { #{{{ + my $links = $IkiWiki::links{$page} or return undef; + return IkiWiki::FailReason->new("$page has no links") unless @$links; + my $bestlink = IkiWiki::bestlink($from, $link); + - return IkiWiki::FailReason->new("no such link") unless length $bestlink; + foreach my $p (@$links) { + - return IkiWiki::SuccessReason->new("$page links to $link") + - if $bestlink eq IkiWiki::bestlink($page, $p); + + if (length $bestlink) { + + return IkiWiki::SuccessReason->new("$page links to $link") + + if $bestlink eq IkiWiki::bestlink($page, $p); + + } + + else { + + return IkiWiki::SuccessReason->new("$page links to page matching $link") + + if match_glob ($p, $link, %params); + + } + } + return IkiWiki::FailReason->new("$page does not link to $link"); + } #}}} + -- + 1.5.1.1.g6aead + +Thanks! [[done]] --[[Joey]]