diff options
Diffstat (limited to 'ikiwiki/pagespec.mdwn')
-rw-r--r-- | ikiwiki/pagespec.mdwn | 129 |
1 files changed, 65 insertions, 64 deletions
diff --git a/ikiwiki/pagespec.mdwn b/ikiwiki/pagespec.mdwn index 56d9d08..156e3f6 100644 --- a/ikiwiki/pagespec.mdwn +++ b/ikiwiki/pagespec.mdwn @@ -1,84 +1,85 @@ [[!meta robots="noindex, follow"]] -Til at angive et udvalg af sider, eksempelvis låste sider, sider du vil -abonnere på ændringer til, eller sider som skal udgøre en blog, anvender -wikien et PageSpec. dette er et udtryk som modsvarer et bestemt udvalg af -sider. +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. -Det simpleste PageSpec er simpelthen en opremsning af sider med "or" imellem -("or" betyder "eller" på engelsk). Dette modsvarer eksempelvis enhver af de -tre nævnte sider: +The simplest PageSpec is a simple list of pages. For example, this matches +any of the three listed pages: foo or bar or baz -Mere hyppigt har du dog brug for at at at modsvare sider med noget tilfælles -i deres navne. Dette kan du udtrykke med et "glob-mønster". "`*`" står for -enhver del af sidenavnet, og "`?`" for ethvert enkeltbogstav i -sidenavnet. Så dette modsvarer alle sider om musik, og alle -[[UnderSider||SubPage]] til sandkassen, men ikke selve sandkasse-siden: +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 [[SubPage]]s of the SandBox, but does +not match the SandBox itself: - *musik* or SandBox/* + *music* or SandBox/* -Du kan også angive "`!`" foran et emne for at undgå sider som modsvarer -det. Så for at modsvare alle sider undtagen diskussionssider og sandkassen: +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 -En række mere nøjagtige begrænsninger kan tilføjes med disse funktioner: - -* "`link(side)`" - modsvarer kun sider som henviser til en given side (eller - glob) -* "`backlink(side)`" - modsvarer kun sider som en given side henviser til -* "`creation_month(måned)`" - modsvarer kun sider oprettet den givne måned -* "`creation_day(månedsdag)`" - eller dag på måneden -* "`creation_year(år)`" - eller år -* "`created_after(side)`" - modsvarer kun sider oprettet efter den givne - side blev oprettet -* "`created_before(side)`" - modsvarer kun sider oprettet før den givne side - blev oprettet -* "`glob(nogetglob)`" - modsvarer sider som modsvarer det givne glob. Blot - at skrive glob'et alene er faktisk en genvej til denne funktion. -* "`internal(glob)`" - lissom `glob()`, men modsvarer også internt anvendte - sider som glob normalt ikke modsvarer. -* "`title(glob)`", "`author(glob)`", "`authorurl(glob)`", "`license(glob)`", - "`copyright(glob)`" - modsvarer sider med de givne metadata, som modsvarer - det angivne glob. - -For eksempelvis at modsvare alle sider i en blog som henviser til en side om -musik og som blev skrevet i 2005: - - blog/* and link(musik) and creation_year(2005) - -Bemærk brugen af "and" i eksemplet ovenfor ("and" betyder "og" på engelsk), -som betyder at kun sider der modsvarer hver af de tre udtryk modsvarer det -hele. Brug "and" når du vil kombinere udtryk på den måde; "or" når det er -nok at én side modsvarer et udtryk. Bemærk at det ikke giver mening at sige -"index and SandBox", da ingen sider kan modsvare begge udtryk. - -Mere komplekse udtryk kan dannes ved at gruppere med paranteser. Eksempelvis -modsvarer dette sider i en blog som er mærket af med en af to mærkater: +Some more elaborate limits can be added to what matches using any of 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 +* "`creation_day(mday)`" - or day of the month +* "`creation_year(year)`" - or year +* "`created_after(page)`" - match only pages created after the given page + was created +* "`created_before(page)`" - match only pages created before the given page + was created +* "`glob(someglob)`" - match 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. +* "`title(glob)`", "`author(glob)`", "`authorurl(glob)`", + "`license(glob)`", "`copyright(glob)`" - match pages that have the given + metadata, matching the specified glob. + +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. + +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)) -Bemærk at PageSpecs for sidenavne modsvares som de absolutte filnavne for -siderne i wikien, så et pagespec "foo" brugt på siden "a/b" vil ikke -modsvare siderne navngivet "a/foo" eller "a/b/foo". For at modsvare relativt -til samme mappe som siden der indeholder pagespec'et kan du bruge -"./". Eksempelvis modsvarer "./foo" på siden "a/b" siden "a/foo". +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". -## Gammel syntaks +## Old syntax -Den gamle PageSpec-syntaks blev kaldt en "GlobList", og fungerede anderledes -på to måder: +The old PageSpec syntax was called a "GlobList", and worked differently in +two ways: -1. "and" og "or" blev ikke brugt; enhver side modsvarede ethvert emne fra - listen. -2. Hvis et emne havde "`!`" foran, modsvarede ingen side dette emne, heller - ikke hvis det modsvarede et tidligere emne. +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. -Her er et eksempel på den gamle måde at modsvare alle sider undtagen -sandkassen og diskussionssider: +For example, here is the old way to match all pages except for the SandBox +and Discussion pages: * !SandBox !*/Discussion -Brug af denne gamle syntaks er stadigt understøttet. Den er dog på vej ud, -så det anbefales at bruge den nye syntaks. +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. |