X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/21add7ffa87a5e622d18bdbb24c638c15bdb3800..bc4ef28f3ebc396096b7eccad04eea6febac8d38:/doc/ikiwiki/pagespec.mdwn diff --git a/doc/ikiwiki/pagespec.mdwn b/doc/ikiwiki/pagespec.mdwn index d4dd265cc..5f0f44e2e 100644 --- a/doc/ikiwiki/pagespec.mdwn +++ b/doc/ikiwiki/pagespec.mdwn @@ -24,16 +24,18 @@ match all pages except for Discussion pages and the SandBox: Some more elaborate limits can be added to what matches using these functions: -* "`link(page)`" - match only pages that link to a given page (or glob) -* "`backlink(page)`" - match only pages that a given page links to -* "`creation_month(month)`" - match only pages created on the given month +* "`link(page)`" - matches only pages that link to a given page (or glob) +* "`tagged(tag)`" - matches pages that are tagged or link to the given tag (or + tags matched by a glob) +* "`backlink(page)`" - matches only pages that a given page links to +* "`creation_month(month)`" - matches only pages created on the given month * "`creation_day(mday)`" - or day of the month * "`creation_year(year)`" - or year -* "`created_after(page)`" - match only pages created after the given page +* "`created_after(page)`" - matches only pages created after the given page was created -* "`created_before(page)`" - match only pages created before the given page +* "`created_before(page)`" - matches only pages created before the given page was created -* "`glob(someglob)`" - match pages that match the given glob. Just writing +* "`glob(someglob)`" - matches pages that match the given glob. Just writing the glob by itself is actually a shorthand for this function. * "`internal(glob)`" - like `glob()`, but matches even internal-use pages that globs do not usually match. @@ -65,29 +67,10 @@ More complex expressions can also be created, by using parentheses for grouping. For example, to match pages in a blog that are tagged with either of two tags, use: - blog/* and (link(tag/foo) or link(tag/bar)) + blog/* and (tagged(foo) or tagged(bar)) Note that page names in PageSpecs are matched against the absolute filenames of the pages in the wiki, so a pagespec "foo" used on page "a/b" will not match a page named "a/foo" or "a/b/foo". To match relative to the directory of the page containing the pagespec, you can use "./". For example, "./foo" on page "a/b" matches page "a/foo". - -## Old syntax - -The old PageSpec syntax was called a "GlobList", and worked differently in -two ways: - -1. "and" and "or" were not used; any page matching any item from the list - matched. -2. If an item was prefixed with "`!`", then no page matching that item - matched, even if it matched an earlier list item. - -For example, here is the old way to match all pages except for the SandBox -and Discussion pages: - - * !SandBox !*/Discussion - -Using this old syntax is still supported. However, the old syntax is -deprecated and will be removed at some point, and using the new syntax is -recommended.