[Pmwiki-users] Hierarchical groups - possible notation

J. Perkins jason
Wed Jun 9 18:04:59 CDT 2004


Patrick R. Michaud wrote:
> It's definitely replaceable in 2.0 -- all conversions of strings
> to pagenames is handled by a single MakePageName(...) function, 
> which can be overridden by a local customization.  

Then I'm happy. I will try to have a look at this as soon as I get free 
moment.


> If I call it just "/PmWiki" (at the root), then this page has to 
> use "PmWiki/" to link to any of the other pages in the group, thus
> [[PmWiki/DocumentationIndex]], [[PmWiki/Installation]], etc.  

Actually I use [[./DocumentationIndex]] and [[./Installation]]. And this 
is only for the parent page, DocumentationIndex can still use 
[[Installation]] to refer to a sibling page.


> since '/' no longer suppresses part of the name as it used to, I 
> have to write [[(PmWiki/)documentation index]] and [[(PmWiki/)installation]]

IMHO, '/' should work as it always has, and the '.' behavior should go 
away. That's just my opinion. Your example above nicely illustrates why 
I feel this way.


> Perhaps this sounds contrived, but I can see it happening.  We
> start with a page of PmWiki.Installation.  Someone later adds a
> page called PmWiki.Installation.Windows.  Woops, this is just like
> the case I started with--where there are now multiple pages dealing
> with installation--so now I need a PmWiki.Installation.Installation
> page as the entry point to the PmWiki.Installation group, and the
> links get more complex...

I think PageName.PageName as a "default" is a Bad Idea, there should 
just be "PageName".

PmWiki -> Windows        [[./Installation/Windows]]
Windows -> PmWiki        [[../..]] or [[/PmWiki]]
Installation -> Windows  [[./Windows]]

The one strange bit is going from "Windows" in the example above to 
"PmWiki/TipsForEditing" would be [[../TipsForEditing]]. In this case it 
doesn't really behave like a filesystem, but then I would say "it is 
like filesystem" in the documentation anyway.

I guess I don't see this as being much different than the existing 
markup. A simple site will put everything at one level, plain old 
WikiWords. The vast majority of sites will have two levels and use 
[[/GroupName/PageName]] to cross groups -- one extra character. Maybe 
you could allow the '.' operator to print the whole path, in which case 
[[.GroupName.PageName]] but I never cared for that. I would rather write 
"Please see [[/PmWiki/Installation | PmWiki: Installation]]" or "Refer 
to [[/Docs/MyClass/MyMethod | MyClass::MyMethod]] or whatever made sense 
in the current context. But I'm a pretty fast typist... ;)


> Again, I don't know if this counts as a "fatal flaw", but I can see
> people being confused by it all.  A significant difference between
> a filesystem hierarchy and the one proposed here is that in a filesystem a
> directory never has any content of its own beyond simply listing the
> files contained in the directory.

That is true. Any grouping scheme is going to introduce a learning 
curve. The lists gets questions about the existing system from time to 
time. I think this system gets a lot of bang for the buck.

As I said at the start, if the current system is replaceable, I'm 
already happy. If you decide to adapt this as the default, I'm even happier.

Thanks for the dialog,

Jason



More information about the pmwiki-users mailing list