[Pmwiki-users] Re: AsSpaced function (was pmwiki-2.0.devel9 released)

Fred Chittenden drfredc
Sat Oct 2 11:03:23 CDT 2004


>.. WikiWords seems to cause more problems than they are worth.>

I've had similar issues with WikiWords. 

In a pre-internet language system I worked with, the equivalent of
WikiWords were formated @WikiWord to signify it was a page "at" another
location -- @Page

* The @Page convention is very intuitive and easy to use.  No closing
deliminter is necessary for page names except @"Page Name" (pages with
spaces).  That simple exception is also intuitive and easy to type.  
** @Page conventions were relatively easy for a programmer to parse.   
** The use of @ as a deliminter is easy to find when editing a page. 
There's no hunting for hidden WikiWords lurking in the text...    
** An @Page parsing exception would seem to be email addresses.  However,
email addresses can be parsed out by always having a "nonspace" character
proceeding @Page.  
* The @Page convention eliminates any possible confusion with capitalized
non-wikiwords. 
* @Group/Subgroup/Page convention works fine. 
* Undeveloped (new or unfound) @Page references could be displayed as @Page
in a highlighted or underlined format, or whatever wiki format one wishes
to use.    
* Future expansion of the 'language' can be easily provided by recognition
of a secondary delimitor following the @ delimiter.  
** This would seem to be another way to define directive delimintors.  
*** Whether or not the secondary delimitor is |, ((, *, or !, it's unlikely
to be confused with normal text markup.  
**** One could easily provide customizable choose of delimitors in the
config file as well as 'on the fly'. .  
** Variable link possibilities could be provided by expanding the @Page
convention to allow for @<function> or @<procedure>.  (using <> as
delimitors)
** One could have @<Page Function> which is evaluated and displays a
variable page link depending upon the value of <Page Function>. 
** One could use @<Function> to display or act on the result of the
<function>.
** @<Procedure> could offer a means to provide access to all sorts of
procedures (like get input, include a blog, etc.).  
***These function and procedure calls could be interpreted wikicode within
the delimintors, code from another WikiPage, or php code from some php
file, etc.

  Of course this sort of convention and power is probably all beyond
contemporary, albeit developing, wiki standards...  I provide these sorts
of examples from the  perpective of someone who's been there and done that
with an interpreted language system whose original intent was quite similar
to wiki -- a simple markup language for creating all sorts of interactive
enduser applications.  






More information about the pmwiki-users mailing list