From 5676481c6d7e06693bc925c18fb652adbd5e36b5 Mon Sep 17 00:00:00 2001 From: "C. Scott Ananian" Date: Fri, 8 Sep 2017 23:44:42 -0400 Subject: [PATCH] Remove "only newlines in trailer" special case for category/language links This special case complicates wikitext semantics and ought to be unnecessary. Parsoid doesn't include this special case; if this patch to the PHP parser isn't merged, we should write one for Parsoid to implement the missing special case logic. Bug: T175416 Change-Id: I3865c51b21de9d63ac5d06dcc3a3fa9108129d6c --- includes/parser/Parser.php | 10 ++-------- tests/parser/parserTests.txt | 10 +++++----- 2 files changed, 7 insertions(+), 13 deletions(-) diff --git a/includes/parser/Parser.php b/includes/parser/Parser.php index 0d11d5a397..fe8622a5ea 100644 --- a/includes/parser/Parser.php +++ b/includes/parser/Parser.php @@ -2299,10 +2299,7 @@ class Parser { /** * Strip the whitespace interwiki links produce, see T10897 */ - $s = rtrim( $s . $prefix ); - // Special case: strip newlines when only thing between - // this link and next are newlines - $s .= trim( $trail, "\n" ) === '' ? '' : $trail; + $s = rtrim( $s . $prefix ) . $trail; # T175416 continue; } @@ -2330,10 +2327,7 @@ class Parser { /** * Strip the whitespace Category links produce, see T2087 */ - $s = rtrim( $s . $prefix ); # T2087, T87753 - // Special case: strip newlines when only thing between - // this link and next are newlines - $s .= trim( $trail, "\n" ) === '' ? '' : $trail; + $s = rtrim( $s . $prefix ) . $trail; # T2087, T87753 if ( $wasblank ) { $sortkey = $this->getDefaultSort(); diff --git a/tests/parser/parserTests.txt b/tests/parser/parserTests.txt index ca16738219..9a08b47a29 100644 --- a/tests/parser/parserTests.txt +++ b/tests/parser/parserTests.txt @@ -16140,11 +16140,9 @@ parsoid=wt2html,html2html Foo !! end -# NOTE that Parsoid does not currently implement this special case -# (T175416). The plan is to remove this weird special-case in the PHP -# parser to make it match the Parsoid output. +# Note that Parsoid differs slightly from PHP due to T175421 !! test -11. Special case where only newlines separate links +11. Special case where only newlines separate links (T175416) !! options parsoid=wt2html,html2html !! wikitext @@ -16154,7 +16152,9 @@ parsoid=wt2html,html2html [[Foo]] !! html/php -

FooFoo +


+Foo +

Foo

!! html/parsoid -- 2.20.1