"Robert Rohde" <rarohde(a)gmail.com> wrote in message
news:b4da1c6e0910061725m326860f1i402edfd9e66293cd@mail.gmail.com...
On Tue, Oct 6, 2009 at 4:47 PM, Mark Clements (HappyDog)
<gmane(a)kennel17.co.uk> wrote:
[SNIP - Re: ParserAfterStrip]
On MW 1.14 and
above the code within the <nowiki> tags is parsed and ends
up
having the regex applied to it, though it is subsequently rendered as
plain
text by the engine (so the page ends up being filled with HTML/CSS
gobbledygook, rendered literally).
I am not sure at which revision this change took place.
First question: Is this a bug or a deliberate change in functionality, or
have I been mis-using the hook all along?
This was changed during the parser rewrite several versions ago. The
restructuring of the parser meant that strip markers are now handled
differently and can't be routed around using that hook anymore.
ParserAfterStrip is essentially a deprecated legacy that now functions
the same way as ParserBeforeStrip.
I have updated the page on
MW.org [1] to explain this. However, can someone
confirm that this is a deliberate change? To me it seems like a regression
that has not been spotted! (Or is it that the parser has changed to the
point where it is no longer possible to have a ParserAfterStrip hook?)
Second
question: Assuming this is not a bug, how should I rewrite the
code
to make it behave as it used to?
I haven't studied you code in detail, but I would suggest that using
the LinkBegin hook (available 1.14+) is probably the right place to
look in the current versions of Mediawiki:
Thanks - I ended up needing a combination of LinkBegin/LinkEnd to get the
result I wanted. You can see the code at
http://www.kennel17.co.uk/testwiki/BugSquish
Thanks for your help,
- Mark Clements (HappyDog)
[1]
http://www.mediawiki.org/wiki/Manual:Hooks/ParserAfterStrip