Re: Global parser not initialized on special pages?

Sebastian Trueg <[email protected]>
Newsgroups gmane.org.wikimedia.mediawiki
Organization TrueGeeX UG
Message-ID <[email protected]>
Brilliant. Works perfectly now!

On 14.06.21 19:44, Brian Wolff wrote:
> You can wrap it in Parser::stripOuterParagraph()
> 
> On Monday, June 14, 2021, Sebastian Trueg <[email protected] 
> <mailto:[email protected]>> wrote:
> 
>     thank you Brian.
> 
>     With a fresh parser (I am not rendering messages but a template) it
>     works. However, the parser always wraps my result in a <p> tag (I
>     already removed the <div> via "nowrap" in ParserOutput::getText).
> 
>     Can I tell the parser to not do that or do I need to manually unwrap
>     the text?
> 
>     Cheers,
>     Sebastian
> 
>     On 11.06.21 21:33, Brian Wolff wrote:
> 
>         This is expected. You should not make assumptions about the
>         state of the global Parser instance in a special page. In some
>         circumstances (especially transclusions) it might be in a parse,
>         other times it won't be.
> 
>         If you're rendering an i18n message, its better to use ->parse()
>         of the Message class then to pass it through the parser directly.
> 
>         Alternatively use
>         \MediaWiki\MediaWikiServices::getInstance()->getParser()->getFreshParser()
>         and then initialize it yourself by calling ->parse() on the
>         Parser, so you always know what the state is for sure.
> 
>         --
>         Brian
> 
>         On Fri, Jun 11, 2021 at 9:27 AM Sebastian Trueg
>         <[email protected] <mailto:[email protected]>
>         <mailto:[email protected] <mailto:[email protected]>>> wrote:
> 
>              Hi everyone,
> 
>              my skin uses the global parser in order to render some
>         parts of the
>              navigation bar via templates (Parser::recursivePreprocess).
>         This works
>              fine on all normal pages (and even some special ones like
>              Special:Version), but not on special pages like
>         Special:AllPages.
> 
>              Some debugging revealed that on Special:AllPages the global
>         parser
>              object
>         (\MediaWiki\MediaWikiServices::getInstance()->getParser()) is
>              not
>              properly initialized. Member variables like mOptions and
>         mTitle are
>              null
>              which results in tons of NPEs.
> 
>              Any idea why that is? Is that a bug or am I mis-using the
>         parser?
> 
>              Regards,
>              Sebastian
>              _______________________________________________
>              MediaWiki-l mailing list -- [email protected]
>         <mailto:[email protected]>
>              <mailto:[email protected]
>         <mailto:[email protected]>>
>              List information:
>         https://lists.wikimedia.org/postorius/lists/mediawiki-l.lists.wikimedia.org/
>         <https://lists.wikimedia.org/postorius/lists/mediawiki-l.lists.wikimedia.org/>
>             
>         <https://lists.wikimedia.org/postorius/lists/mediawiki-l.lists.wikimedia.org/
>         <https://lists.wikimedia.org/postorius/lists/mediawiki-l.lists.wikimedia.org/>>
> 
> 
>         _______________________________________________
>         MediaWiki-l mailing list -- [email protected]
>         <mailto:[email protected]>
>         List information:
>         https://lists.wikimedia.org/postorius/lists/mediawiki-l.lists.wikimedia.org/
>         <https://lists.wikimedia.org/postorius/lists/mediawiki-l.lists.wikimedia.org/>
> 
> 
>     -- 
>     Sebastian Trueg
>     Managing Director
>     TrueGeeX UG (haftungsbeschränkt)
>     [email protected] <mailto:[email protected]>
>     http://www.linkedin.com/in/trueg <http://www.linkedin.com/in/trueg>
>     Mobile: 0049 1762 3244 664
>     _______________________________________________
>     MediaWiki-l mailing list -- [email protected]
>     <mailto:[email protected]>
>     List information:
>     https://lists.wikimedia.org/postorius/lists/mediawiki-l.lists.wikimedia.org/
>     <https://lists.wikimedia.org/postorius/lists/mediawiki-l.lists.wikimedia.org/>
> 
> 
> _______________________________________________
> MediaWiki-l mailing list -- [email protected]
> List information: https://lists.wikimedia.org/postorius/lists/mediawiki-l.lists.wikimedia.org/
> 

-- 
Sebastian Trueg
Managing Director
TrueGeeX UG (haftungsbeschränkt)
[email protected]
http://www.linkedin.com/in/trueg
Mobile: 0049 1762 3244 664
_______________________________________________
MediaWiki-l mailing list -- [email protected]
List information: https://lists.wikimedia.org/postorius/lists/mediawiki-l.lists.wikimedia.org/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.