[Pmwiki-users] Hierarchical groups - possible notation

John Feezell JohnFeezell
Wed Jun 9 09:25:03 CDT 2004


On Wed, 9 Jun 2004 06:37:48 -0600, Patrick R. Michaud <pmichaud at pobox.com>  
wrote:

> On Wed, Jun 09, 2004 at 03:33:52AM -0500, John Feezell wrote:
>> On Tue, 8 Jun 2004 17:42:07 -0600, Patrick R. Michaud  
>> <pmichaud at pobox.com>
>> wrote:
>>
>> Perhaps the following notation, or some variation of it, could work
>> for hierarchical groups with relative references.
>>
>>  Let
>>    the last name always be the existing pagename
>>    [[pagename]] resolve to replacement for existing pagename
>>    [[.group.pagename]] resolve to replacement for existing pagename
>>    [[/group.pagename]] resolve to top level group with pagename
>
> This eliminates the '.' versus '/' distinction for when to suppress
> leading group names.  Yes, one can use the parenthesis for this,
> but I like the feature that I can use PmWiki.DocumentationIndex
> in normal text and have the "PmWiki" displayed while PmWiki/PmWikiUsers
> suppresses the leading "PmWiki"...
>

Well then how about one of these to resolve to top level group with  
pagename?
   [[^group.pagename]]
   [[$group.pagename]]
   [[..group.pagename]]

so given a pagename of About.PmWiki

   [[PmWiki.DocumentationIndex]]
      resolves to PmWiki.DocumentationIndex
      displays as PmWiki.DocumentationIndex

   [[PmWiki/DocumentationIndex]]
      resolves to PmWiki.DocumentationIndex
      displays as DocumentationIndex

   [[.PmWiki/DocumentationIndex]]
      resolves to About.PmWiki.PmWiki.DocumentationIndex
      displays as DocumentationIndex

   [[/PmWiki.DocumentationIndex]]
      resolves to About.PmWiki.PmWiki.DocumentationIndex
      displays as PmWiki.DocumentationIndex

   [[DocumentationIndex]]
      resolves to About.DocumentationIndex
      displays as DocumentationIndex

   [[.DocumentationIndex]]
      resolves to About.PmWiki.DocumentationIndex
      displays as About.PmWiki.DocumentationIndex

   [[/DocumentationIndex]]
      resolves to About.PmWiki.DocumentationIndex
      displays as DocumentationIndex

   [[PmWiki.NewVersion.DocumentationIndex]]
      resolves to PmWiki.NewVersion.DocumentationIndex
        (a new page)
      displays as PmWiki.NewVersion.DocumentationIndex

   [[.NewVersion/DocumentationIndex]]
      resolves to About.PmWiki.NewVersion.DocumentationIndex
      displays as DocumentationIndex

   [[NewVersion/DocumentationIndex]]
      resolves to About.NewVersion.DocumentationIndex
      displays as DocumentationIndex

   [[..PmWiki.NewVersion.DocumentationIndex]]
      resolves to PmWIki.NewVersion.DocumentationIndex
         (a new page)
      displays as PmWiki.NewVersion.DocumentationIndex

   [[..Pmwiki.NewVersion/DocumentationIndex]]
      resolves to PmWiki.NewVersion.DocumentationIndex
         (a new page)
      displays as DocumentationIndex

   [[..PmWiki/NewVersion.DocumentationIndex]]
      resolves to PmWiki.NewVersion.DocumentationIndex
         (a new page)
      displays as NewVersion.DocumentationIndex


>>    [[(group.group).pagename]]
>
> I'll have to veto the use of parens for group clustering, as they're
> already being used to suppress display of that portion of the name
> (and I don't want to change this behavior).  But this is indeed a
> useful idea, although it may be a little difficult to explain to
> others.
>
> Pm
>
>

And for group clustering, how about one of these?
   [[group&.group&.group.pagename]]
   [[group+.group+.group.pagename]]
   [[<group.group.group>.pagename]]
   [[group::group::group.pagename]]

so given About.PmWiki.NewVersion

   [[.<NewVersion.Beta>/ReleaseNotes]]
      maps
        NewVersion => ReleaseNotes
        PmWiki => NewVersion.Beta
      resolves to About.NewVersion.Beta.ReleaseNotes
      displays as ReleaseNotes

   [[/<NewVersion.Beta>.ReleaseNotes]]
      maps
        NewVersion => ReleaseNotes
        PmWiki => NewVersion.Beta
      resolves to About.NewVersion.Beta.ReleaseNotes
      displays as NewVerison.Beta.ReleaseNotes

   [[<New Version.Beta>/Release Notes]]
      maps
        NewVersion => Release Notes
        PmWiki => New Version.Beta
      resolves to About.New Version.Beta.Release Notes
      displays as Release Notes

Just a little grist for the mill ...

/JF



More information about the pmwiki-users mailing list