summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-08-02 00:14:31 +0000
committerjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-08-02 00:14:31 +0000
commit2794d7ef5abc4fa8fc2eb42d5c85ada197df0767 (patch)
treea79c4c81a7cb989fb3cfa5f84a0d8fad831c5085 /doc
parent418096be9e56f9078c19605f867b44d25ccadf58 (diff)
* Renamed GlobLists to PageSpecs.
* PageSpecs can now include nested parens, "and", and "or". This remains backwards compatible to the old GlobList format. It's implemented by treating the GlobList as a very limited microlanguage that is transformed to perl code that does the matching. * The old GlobList format is deprecated, and I encourage users to switch to using the new PageSpec format. Compatability with the old format will be removed at some point, possibly by 2.0. * Wiki rebuild needed on upgrade to this version due to PageSpec change. * Add support for creation_month and creation_year to PageSpec. Closes: #380680 * Changes to index file encoding.
Diffstat (limited to 'doc')
-rw-r--r--doc/bugs.mdwn4
-rw-r--r--doc/bugs/done.mdwn2
-rw-r--r--doc/bugs/inline_page_not_updated_on_removal.mdwn6
-rw-r--r--doc/features.mdwn2
-rw-r--r--doc/install.mdwn10
-rw-r--r--doc/news.mdwn2
-rw-r--r--doc/patchqueue.mdwn3
-rw-r--r--doc/plugins/brokenlinks.mdwn2
-rw-r--r--doc/plugins/orphans.mdwn2
-rw-r--r--doc/plugins/pagecount.mdwn2
-rw-r--r--doc/plugins/tag.mdwn2
-rw-r--r--doc/plugins/write.mdwn4
-rw-r--r--doc/roadmap.mdwn2
-rw-r--r--doc/todo.mdwn4
-rw-r--r--doc/todo/done.mdwn2
-rw-r--r--doc/todo/improve_globlists.mdwn4
-rw-r--r--doc/todo/multiple_templates.mdwn2
17 files changed, 28 insertions, 27 deletions
diff --git a/doc/bugs.mdwn b/doc/bugs.mdwn
index c4895cb7b..2046fb820 100644
--- a/doc/bugs.mdwn
+++ b/doc/bugs.mdwn
@@ -1,9 +1,9 @@
This is ikiwiki's bug list. Link bugs to [[bugs/done]] when done.
-[[inline pages="bugs/* !bugs/done !link(bugs/done) !*/Discussion" rootpage="bugs" show="30"]]
+[[inline pages="bugs/* and !bugs/done and !link(bugs/done) and !*/Discussion" rootpage="bugs" show="30"]]
----
# Full list of open bugs:
-[[inline pages="bugs/* !bugs/done !link(bugs/done) !*/Discussion" archive="yes" rss="no"]]
+[[inline pages="bugs/* and !bugs/done and !link(bugs/done) and !*/Discussion" archive="yes" rss="no"]]
diff --git a/doc/bugs/done.mdwn b/doc/bugs/done.mdwn
index 58c4719b7..a92862bd4 100644
--- a/doc/bugs/done.mdwn
+++ b/doc/bugs/done.mdwn
@@ -1,3 +1,3 @@
recently fixed [[bugs]]
-[[inline pages="link(bugs/done) !bugs !*/Discussion" show="10"]]
+[[inline pages="link(bugs/done) and !bugs and !*/Discussion" show="10"]]
diff --git a/doc/bugs/inline_page_not_updated_on_removal.mdwn b/doc/bugs/inline_page_not_updated_on_removal.mdwn
index 35fe5e189..69dc6fb8d 100644
--- a/doc/bugs/inline_page_not_updated_on_removal.mdwn
+++ b/doc/bugs/inline_page_not_updated_on_removal.mdwn
@@ -2,16 +2,16 @@ If a page inlines some other page (such as this page by the bugs page),
and the page is removed (such as by this page being linked to bugs/done),
the inlining page is not updated to remove it.
-This only happens if the page is removed from the inlined globlist due to
+This only happens if the page is removed from the inlined pagespec due to
a tag changing; the problem is that once the tag is changed, ikiwiki does
not know that the page used to match before.
To fix, seems I would need to record the actual list of pages that are
currently included on an inline page, and do a comparison to see if any
have changed. At first I thought, why not just add them to the dependencies
-explicitly, but that fails because the dependencies globlist fails to match
+explicitly, but that fails because the dependencies pagespec fails to match
when a negated expression like "!tag(bugs/done)" is matched.
So, quick fixes aside, what's the generic mechanism here that a plugin can
use to let ikiwiki know that a page should be updated if some other page
-stops matching its dependencies globlist?
+stops matching its dependencies pagespec?
diff --git a/doc/features.mdwn b/doc/features.mdwn
index 0a235d708..27db7bc65 100644
--- a/doc/features.mdwn
+++ b/doc/features.mdwn
@@ -46,7 +46,7 @@ Some of ikiwiki's features:
* [[blogging|blog]]
You can turn any page in the wiki into a [[blog]]. Pages matching a
- specified [[GlobList]] will be displayed as a weblog within the blog
+ specified [[PageSpec]] will be displayed as a weblog within the blog
page. And an RSS feed can be generated to follow the blog.
Ikiwiki's own [[TODO]], [[news]], and [[plugins]] pages are good examples
diff --git a/doc/install.mdwn b/doc/install.mdwn
index eb5b91e67..d2b6b8833 100644
--- a/doc/install.mdwn
+++ b/doc/install.mdwn
@@ -1,10 +1,10 @@
The easiest way to install ikiwiki is using the Debian package.
-Ikiwiki requires [[MarkDown]] be installed, and also uses the following
-perl modules if available: `CGI::Session` `CGI::FormBuilder` (version
-3.02.02 or newer) `HTML::Template` `Mail::SendMail` `Time::Duration`
-`Date::Parse` (libtimedate-perl), `HTML::Scrubber`, `RPC::XML`,
-`XML::Simple`, `XML::Feed`, `HTML::Parser`
+Ikiwiki requires [[MarkDown]] and the `HTML::Parser` perl module be
+installed, and also uses the following perl modules if available:
+`CGI::Session` `CGI::FormBuilder` (version 3.02.02 or newer)
+`HTML::Template` `Mail::SendMail` `Time::Duration` `Date::Parse`,
+`HTML::Scrubber`, `RPC::XML`, `XML::Simple`, `XML::Feed`
If you want to install from the tarball, you should make sure that the
required perl modules are installed, then run:
diff --git a/doc/news.mdwn b/doc/news.mdwn
index 816fc74d3..781666c2a 100644
--- a/doc/news.mdwn
+++ b/doc/news.mdwn
@@ -2,7 +2,7 @@ This is where annoucements of new releases, features, and other news is
posted. [[IkiWikiUsers]] are recommended to subscribe to this page's RSS
feed.
-[[inline pages="news/* !*/Discussion" rootpage="news" show="30"]]
+[[inline pages="news/* and !*/Discussion" rootpage="news" show="30"]]
By the way, some other pages with RSS feeds about ikiwiki include
[[plugins]], [[TODO]] and [[bugs]].
diff --git a/doc/patchqueue.mdwn b/doc/patchqueue.mdwn
index 29631fe9d..91dc224a7 100644
--- a/doc/patchqueue.mdwn
+++ b/doc/patchqueue.mdwn
@@ -5,5 +5,4 @@ Feel free to either copy the patch inline, or link to one elsewhere (or nag
Joey to open up anonymous svn access to this wiki so you can check in the
patches directly).
-[[inline pages="patchqueue/* !patchqueue/done !link(patchqueue/done) !*/Discussion" rootpage="patchqueue" show="30" archive="yes"]]
-
+[[inline pages="patchqueue/* and !patchqueue/done and !link(patchqueue/done) and !*/Discussion" rootpage="patchqueue" show="30" archive="yes"]]
diff --git a/doc/plugins/brokenlinks.mdwn b/doc/plugins/brokenlinks.mdwn
index 3c23c9d68..e3f6357b7 100644
--- a/doc/plugins/brokenlinks.mdwn
+++ b/doc/plugins/brokenlinks.mdwn
@@ -2,7 +2,7 @@ This plugin generates a list of broken links on pages in the wiki. This is
a useful way to find pages that still need to be written, or links that
are written wrong.
-The optional parameter "pages" can be a [[GlobList]] specifying the pages
+The optional parameter "pages" can be a [[PageSpec]] specifying the pages
to search for broken links, default is search them all.
This plugin is included in ikiwiki, but is not enabled by default.
diff --git a/doc/plugins/orphans.mdwn b/doc/plugins/orphans.mdwn
index 0c2ea69da..2c4e52a3f 100644
--- a/doc/plugins/orphans.mdwn
+++ b/doc/plugins/orphans.mdwn
@@ -1,7 +1,7 @@
This plugin generates a list of possibly orphaned pages -- pages that no other page
links to.
-The optional parameter "pages" can be a [[GlobList]] specifying the pages
+The optional parameter "pages" can be a [[PageSpec]] specifying the pages
to check for orphans, default is search them all.
Note that it takes [[BackLinks]] into account, but does not count inlining a
diff --git a/doc/plugins/pagecount.mdwn b/doc/plugins/pagecount.mdwn
index 0fddecf30..8fc04ff76 100644
--- a/doc/plugins/pagecount.mdwn
+++ b/doc/plugins/pagecount.mdwn
@@ -1,7 +1,7 @@
Provides a \\[[pagecount ]] [[PreProcessorDirective]] that is replaced with
the total number of pages currently in the wiki.
-The optional parameter "pages" can be a [[GlobList]] specifying the pages
+The optional parameter "pages" can be a [[PageSpec]] specifying the pages
to count, default is to count them all.
This plugin is included in ikiwiki, but is not enabled by default.
diff --git a/doc/plugins/tag.mdwn b/doc/plugins/tag.mdwn
index ed5336ad5..94a6280ca 100644
--- a/doc/plugins/tag.mdwn
+++ b/doc/plugins/tag.mdwn
@@ -3,7 +3,7 @@ This plugin allows tagging pages. List tags as follows:
\[[tag tech life linux]]
The tags work the same as if you had put a (hidden) [[WikiLink]] on the page
-for each tag, so you can use a [[GlobList]] to link to all pages that are
+for each tag, so you can use a [[PageSpec]] to link to all pages that are
tagged with a given tag, for example. The tags will also show up on blog
entries and at the bottom of the tagged pages, as well as in rss feeds.
diff --git a/doc/plugins/write.mdwn b/doc/plugins/write.mdwn
index 925717777..79bd75e9b 100644
--- a/doc/plugins/write.mdwn
+++ b/doc/plugins/write.mdwn
@@ -183,13 +183,13 @@ use the following hashes, using a page name as the key:
* `%IkiWiki::renderedfiles` contains the name of the file rendered by a
page
* `%IkiWiki::pagesources` contains the name of the source file for a page.
-* `%IkiWiki::depends` contains a [[GlobList]] that is used to specify other
+* `%IkiWiki::depends` contains a [[PageSpec]] that is used to specify other
pages that a page depends on. If one of its dependencies is updated, the
page will also get rebuilt.
Many plugins will need to add dependencies to this hash; the best way to do
it is by using the IkiWiki::add_depends function, which takes as its
- parameters the page name and a [[GlobList]] of dependencies to add.
+ parameters the page name and a [[PageSpec]] of dependencies to add.
* `%IkiWiki::forcerebuild` any pages set as the keys to this hash will be
treated as if they're modified and rebuilt.
diff --git a/doc/roadmap.mdwn b/doc/roadmap.mdwn
index 05ee48dff..672dfe3c4 100644
--- a/doc/roadmap.mdwn
+++ b/doc/roadmap.mdwn
@@ -13,7 +13,7 @@ Released 29 April 2006.
# 2.0
* Unit test suite (with tests of at least core stuff like
- [[GlobList]]). (status: exists, could of course use more tests)
+ [[PageSpec]]). (status: exists, could of course use more tests)
* [[Plugins]] _(status: done, interface still not quite stable)_
* [[Tags]] _(status: partial)_
* Should have fully working [[todo/utf8]] support. _(status: fair)_
diff --git a/doc/todo.mdwn b/doc/todo.mdwn
index b89d2cdf0..9a0a593be 100644
--- a/doc/todo.mdwn
+++ b/doc/todo.mdwn
@@ -1,9 +1,9 @@
Welcome to ikiwiki's todo list. Link items to [[todo/done]] when done.
-[[inline pages="todo/* !todo/done !link(todo/done) !*/Discussion" rootpage="todo" show="30"]]
+[[inline pages="todo/* and !todo/done and !link(todo/done) and !*/Discussion" rootpage="todo" show="30"]]
----
# Full list of open items:
-[[inline pages="todo/* !todo/done !link(todo/done) !*/Discussion" archive="yes" rss="no"]]
+[[inline pages="todo/* and !todo/done and !link(todo/done) and !*/Discussion" archive="yes" rss="no"]]
diff --git a/doc/todo/done.mdwn b/doc/todo/done.mdwn
index 847d0a2e5..8d01666c0 100644
--- a/doc/todo/done.mdwn
+++ b/doc/todo/done.mdwn
@@ -1,3 +1,3 @@
recently fixed [[TODO]] items
-[[inline pages="link(todo/done) !todo !*/Discussion" show="10"]]
+[[inline pages="link(todo/done) and !todo and !*/Discussion" show="10"]]
diff --git a/doc/todo/improve_globlists.mdwn b/doc/todo/improve_globlists.mdwn
index 80b545e4e..86a4ba154 100644
--- a/doc/todo/improve_globlists.mdwn
+++ b/doc/todo/improve_globlists.mdwn
@@ -1,6 +1,8 @@
-Need to improve [[globlist]]s, adding more powerful boolean expressions.
+Need to improve globlists, adding more powerful boolean expressions.
The current behavior is to check for negated expressions, and not match if
there are any, then check for normal expressions and match if any match,
This fails if you want to do something like match only pages with tag foo
that are under directory bar. I think we need parens for grouping, and
probably also boolean OR.
+
+[[todo/done]]
diff --git a/doc/todo/multiple_templates.mdwn b/doc/todo/multiple_templates.mdwn
index 459a5fa4f..258d584dd 100644
--- a/doc/todo/multiple_templates.mdwn
+++ b/doc/todo/multiple_templates.mdwn
@@ -2,7 +2,7 @@
> file for some pages; blog pages would use a template different from the
> home page, even if both are managed in the same repository, etc.
-Well, that would probably be fairly easy to add if it used globlists to
+Well, that would probably be fairly easy to add if it used pagespecs to
specify which pages use the non-default template.
Hmm, I think the pagetemplate hook should allow one to get close enough to