[pmwiki-users] pagelist is creating links relative to the current group?

Joachim Durchholz jo at durchholz.org
Thu May 25 13:51:14 CDT 2006


Patrick R. Michaud schrieb:
> On Thu, May 25, 2006 at 12:32:38AM +0200, Joachim Durchholz wrote:
>> Patrick R. Michaud schrieb:
>>> What's wrong with (besides being a bit ugly):
>>>
>>>     * [[ClassSubclass.SomePage]]
>>>     ** [[ClassSubclassSomePage.Item1]]
>>>     ** [[ClassSubclassSomePage.Item2]]
>>>     ** [[ClassSubclassSomePage.Item3]]
>>>     * [[ClassSubclass.AnotherPage]]
>>>     ** [[ClassSubclassAnotherPage.Item1]]
>>>     ** [[ClassSubclassAnotherPage.Item2]]
>>>
>>> (A useful exercise:  See if having hierarchical links makes any
>>> improvement to the above. :-)
>> Not on the above. But hierarchical groups would allow PmWiki to 
>> automatically generate a group list that has the above structure. 
>> Currently, I'd have to write
>>
>> * [[ClassSubclass.SomePage]]
>> (:pagelist group=ClassSubclassSomepage list=normal fmt=simple:)
>> * [[ClassSubclass.AnotherPage]]
>> (:pagelist group=ClassSubclassAnotherPage list=normal fmt=simple:)
> 
> I wonder if something like the following would work:
> 
>    (:pagelist group=Class* list=normal fmt=hierarchy:)

Hmm... there's still a slight problem here: this can't properly 
differentiate between
   Class.SubClass.SomePage
and
   Class.Sub.Class.SomePage

I think the root of this problem is that using wildcards in group names 
is that group names then contain both structural and terminological 
information; I'm pretty sure that this will spawn other problems in time.

> The wildcard would manage to get all of the pages in Class and
> its "subgroups" -- so after that it's just a matter of 
> displaying the pages in a useful sequence, which could be
> done somewhat handily in a custom routine (triggered by the
> 'fmt=hierarchy' parameter).

'fmt=hierarchy' essentially would have to check what previous group 
names are a prefix of the current group name, and to infer how deeply 
indented the current group name would have to be.

>> From a practical view point, how would an "implied relationship" change 
>> anything in terms of how pages are rendered or interpreted? --Pm
>>
>> PmWiki would "know" the relationship between the Animal group, the 
>> Animal.Mammal group, and the Animal.Mammal.Canine group. This affects 
>> various functions: group searches (would cover subgroups), renaming 
>> (moving a group to a different place would also affect the pages in the 
>> subgroups), pagelist generation (again, would include subgroups - good 
>> for generating wikitrails that span several hierarchies). 
> 
> I think that wildcards handles the case of searching and pagelist
> generation that you've described above.

Apart from my unease with mixing structure and terminology in group 
names, yes.

 > As far as page renames
> are concerned, I think that in practice it ends up being the
> same amount of work for both a hierarchical and flat naming scheme.
> (I know this last point isn't at all intuitive, but all of my
> thought experiments on the topic have pretty much come to this
> conclusion.)

Not for sibling pages, but there *should* be a serious overhead for 
child pages.

Regards,
Jo




More information about the pmwiki-users mailing list