Hi list !
>From the tests provided by Jason in his treetop experiment I started
to get the feeling that it can be very hard to write a token based
parser for textile since sometimes you need to know all the characters
of the current line to know if "**" actually start a bold sentence.
For example:
This **is not a bold sentence, even if you would think it is, it''s not
**. Believe me.
I had a look at the original implementation of textile in PHP and they
actually run tons of very complicated regexps. This is an extract to
parse inline elements (bold, em, ...): http://gist.github.com/131486.
All this to say that I think I will abort my "move forward" parser
solution and will try another route: the "split" parser:
1. split text into paragraphs/tables
2. split paragraphs into inline elements (loop until no more split)
3. split inline elements into links, etc
4. continue spliting and replacing
This is the fastest way I can imagine to parse elegantly something like textile.
I''ll let you know when I have a prototype...
Gaspard
PS: forget about my other message on word processing, I actually did
not understand that these specs were only related to some internal
word parser.