Re: Pre-Proposal: Text_Wiki
| From: | Paul M Jones | Date: | Thu, 17 Jul 2003 23:17:39 +0000 |
| Subject: | Re: Pre-Proposal: Text_Wiki | ||
| References: | 1 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-18357@lists.php.net to get a copy of this message | ||
Hi, all,
Nicolas Hoizey wrote:
I'd like to propose Text_Wiki, a package that [...] allows you to define different source markup rulesets for Wiki text, converts that source to an internal standard, then sends the converted source to an output engine that renders into any number of target formats. I think you should divide this in several parts: - one main package that deals with the "internal standard" (which will be?) - other more specific packages that deal with transformation from another "language" to this standard and/or the other wayThat is exactly the plan, although I will say that I do not intend to address XMLish source markups at the start -- I think that is more the domain of XML parsers, not structured text parsers. However, I do intend to include at least one XML render class (well, XHTML) so that Wiki-source can become XHTML. There is no reason that Wiki sources could not also be rendered into, say, DocBook XML, if someone writes the appropriate render class. (In fact, this is one of my driving reasons for Text_Wiki: easy writing of simple documentation that can be translated to many formats. If doc-writing is trivial, maybe we'll write more of them; they are sorely, desperately needed for most projects.) To reiterate: the plan is to have one Text_Wiki "master" class handle the transformation interface in general, with a set of interchangeable "source/parse" and "output/render" container classes with rulesets for the specific transformations. The "parse" classes parse text conforming to a source ruleset (e.g., Tavi-style wiki, PHPWiki, SPIP, StructuredText, etc) into a Text_Wiki meta-standard (an array of meta-keys indicating "bold starts/ends here", "this is a header", "don't process this", etc., with the associated text). The "render" classes take the meta-standard markup and convert it to some output format (e.g., XHTML or RTF). The general process is very similar to the way the Config class does now with reading different config file formats. Good news: Scott Moonen, the originator of Tavi, has given his approval to the Text_Wiki project, so all the preconditions for development are in place. I'll post preliminary code and examples when I have some, and ask for more input at that time. Hell, I'll ask for more input now: does anybody think this is not a reasonable or workable plan? Finally: can I get some preliminary votes on the package name "Text_Wiki"? Or is this not the proper time? -- pmj p.s. If you can, please reply to me personally as well as to the list; I'm on digest mode and would like to address individual responses separately if possible. -- pmj