Object-oriented PHP implementation is coming, looking for parties
Alan Hogan
contact at alanhogan.com
Wed Oct 26 18:29:29 EDT 2011
Michel is awesome and so is PHP Markdown (Extra).
The only problem I know about is that certain, very long documents will fail completely.
IIRC, this was a side-effect of its PCRE parsing — a bug or limitation of the regex implementation in PHP.
Max, are you using a grammar, as has been discussed on this list recently, or regexes? That is, might your parser be susceptible to the same bug?
Alan Hogan
On Oct 26, 2011, at 3:04 PM, Max Tsepkov wrote:
> Hello, list.
> My name is Max, I'm a web developer.
>
> I found Markdown convention very useful, I use it everywhere nowadays.
> Michel Fortin's markdown-php seems to be the only available PHP implementation.
> And, judging by number of people using it, it works well :)
>
> But there is many thing that's keep it from being perfect:
>
> * One large file with functions not being sorted in a logical way.
> It makes it hard to understand how it works.
> * Despite the fact that it contains classes, it isn't coded
> object-oriented. Which greatly affect, again, clarity and
> re-usability.
> * Script is coded in early ages of PHP, doesn't make use of its new
> features and uses obsolete ones.
> * It's written much like a Python program. PHP doesn't work that way.
>
>
> To give Markdown in PHP a new look, I've designed a library, which I
> named markdown-oo-php
> oo-php stands for object-oriented php. It's designed to be easy to use
> and extend.
>
> There is two components Text and Filter.
> Text is an entity user works with, it represents text being processed. E.g.:
>
> echo new Markdown_Text($plaintext);
>
> Filter is a superclass and set of specific filters which does actual parsing.
> Each specific filter is an object which transforms a single markdown
> element to xhtml.
> Examples of filters are: Markdown_Filter_Hr,
> Markdown_Filter_Linebreak, Markdown_Filter_ListBulleted.
>
> When user wants to transform markdown these filters are running one by
> one resulting to html.
> By default, one more special filter is run. It will pass given text to
> original Markdown.pl 1.0.1
> This way we get parsed markdown even if some filters are not implemented yet.
> This feature requires perl, of course. It can be disabled:
>
> Markdown_Filter::useFallbackFilter(false);
>
> Such design allows users to write their own filters, hook into the
> process, write plugins etc.
> We can compose any chain of filters resulting into different versions,
> extra features and other goodies.
>
> You can find source along with documentation at GitHub:
> https://github.com/garygolden/markdown-oo-php
>
> You're most welcome to comment, contribute and, of course, spread the word.
>
> cheers ;)
>
> --
> Max Tsepkov (a.k.a. Gary Golden)
> A freelancing web engineer
> http://www.garygolden.me
> _______________________________________________
> Markdown-Discuss mailing list
> Markdown-Discuss at six.pairlist.net
> http://six.pairlist.net/mailman/listinfo/markdown-discuss
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://six.pairlist.net/pipermail/markdown-discuss/attachments/20111026/3f5c6451/attachment.html>
More information about the Markdown-Discuss
mailing list