The Walden Effect: Farming, simple living, permaculture, and invention.

pagespec

To select a set of pages, such as pages that are locked, pages whose commit emails you want subscribe to, or pages to combine into a blog, the wiki uses a PageSpec. This is an expression that matches a set of pages.

The simplest PageSpec is a simple list of pages. For example, this matches any of the three listed pages:

foo or bar or baz

More often you will want to match any pages that have a particular thing in their name. You can do this using a glob pattern. "*" stands for any part of a page name, and "?" for any single letter of a page name. So this matches all pages about music, and any SubPages of the SandBox, but does not match the SandBox itself:

*music* or SandBox/*

You can also prefix an item with "!" to skip pages that match it. So to match all pages except for Discussion pages and the SandBox:

* and !SandBox and !*/Discussion

Some more elaborate limits can be added to what matches using these functions:

For example, to match all pages in a blog that link to the page about music and were written in 2005:

blog/* and link(music) and creation_year(2005)

Note the use of "and" in the above example, that means that only pages that match each of the three expressions match the whole. Use "and" when you want to combine expression like that; "or" when it's enough for a page to match one expression. Note that it doesn't make sense to say "index and SandBox", since no page can match both expressions.

If you want to include only one level of subpages, you can use

blog/* and !blog/*/*

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 (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".

To indicate the name of the page the PageSpec is used in, you can use a single dot. For example, link(.) matches all the pages linking to the page containing the PageSpec.



Join the Walden Effect!

Download a free copy of Small-Scale No-Till Gardening Basics when you subscribe to our behind-the-scenes newsletter.

Anna Hess's books
Want more in-depth information? Browse through our books.

Or explore more posts by date or by subject.

About us: Anna Hess and Mark Hamilton spent over a decade living self-sufficiently in the mountains of Virginia before moving north to start over from scratch in the foothills of Ohio. They've experimented with permaculture, no-till gardening, trailersteading, home-based microbusinesses and much more, writing about their adventures in both blogs and books.



Want to be notified when new comments are posted on this page? Click on the RSS button after you add a comment to subscribe to the comment feed, or simply check the box beside "email replies to me" while writing your comment.


I just started Sprouting BOSS. The lady that told me how to do it said that the chickens would need no other feed but the Sprouts. Is this true or should they have their lay crumbles also? Approximately how much Sprouts should be fed to each Chicken" Thank You, Betty

Comment by Bett Biz Sun Nov 9 23:32:51 2014

I just started Sprouting BOSS. The lady that told me how to do it said that the chickens would need no other feed but the Sprouts. Is this true or should they have their lay crumbles also? Approximately how much Sprouts should be fed to each Chicken" Thank You, Betty

Comment by Bett Biz Sun Nov 9 23:33:11 2014





profile counter myspace



Powered by Branchable Wiki Hosting.

Required disclosures:

As an Amazon Associate, I earn a few pennies every time you buy something using one of my affiliate links. Don't worry, though --- I only recommend products I thoroughly stand behind!

Also, this site has Google ads on it. Third party vendors, including Google, use cookies to serve ads based on a user's prior visits to a website. Google's use of advertising cookies enables it and its partners to serve ads to users based on their visit to various sites. You can opt out of personalized advertising by visiting this site.