Arlolra has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/232089

Change subject: Remove special case in nowiki serializing
......................................................................

Remove special case in nowiki serializing

 * Git blame attributes this to a large refactor in 9fa5652b but it's
   unclear why it was necessary.

Change-Id: I1233332b9ecae3d7d2c367227518a18aa3ba9f2c
---
M lib/wts.TagHandlers.js
1 file changed, 17 insertions(+), 21 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/services/parsoid 
refs/changes/89/232089/1

diff --git a/lib/wts.TagHandlers.js b/lib/wts.TagHandlers.js
index d809937..011b6cd 100644
--- a/lib/wts.TagHandlers.js
+++ b/lib/wts.TagHandlers.js
@@ -27,8 +27,8 @@
 
 function isRecognizedSpanWrapper(type) {
        return type && type.split(/\s+/).find(function(t) {
-                       return genContentSpanTypes.has(t);
-               }) !== undefined;
+               return genContentSpanTypes.has(t);
+       }) !== undefined;
 }
 
 function buildHeadingHandler(headingWT) {
@@ -998,28 +998,24 @@
                        if (isRecognizedSpanWrapper(type)) {
                                if (type === 'mw:Nowiki') {
                                        cb('<nowiki>', node);
-                                       if (node.childNodes.length === 1 && 
node.firstChild.nodeName === 'PRE') {
-                                               state.serializeChildren(node, 
cb);
-                                       } else {
-                                               var child = node.firstChild;
-                                               while (child) {
-                                                       if (DU.isElt(child)) {
-                                                               /* jshint 
noempty: false */
-                                                               if 
(DU.isMarkerMeta(child, "mw:DiffMarker")) {
-                                                                       // 
nothing to do
-                                                               } else if 
(child.nodeName === 'SPAN' &&
-                                                                               
child.getAttribute('typeof') === 'mw:Entity') {
-                                                                       
state.serializer._serializeNode(child, state, cb);
-                                                               } else {
-                                                                       
cb(child.outerHTML, node);
-                                                               }
-                                                       } else if 
(DU.isText(child)) {
-                                                               
cb(child.nodeValue.replace(/<(\/?nowiki)>/g, '&lt;$1&gt;'), child);
-                                                       } else {
+                                       var child = node.firstChild;
+                                       while (child) {
+                                               if (DU.isElt(child)) {
+                                                       /* jshint noempty: 
false */
+                                                       if 
(DU.isMarkerMeta(child, "mw:DiffMarker")) {
+                                                               // nothing to do
+                                                       } else if 
(child.nodeName === 'SPAN' &&
+                                                                       
child.getAttribute('typeof') === 'mw:Entity') {
                                                                
state.serializer._serializeNode(child, state, cb);
+                                                       } else {
+                                                               
cb(child.outerHTML, node);
                                                        }
-                                                       child = 
child.nextSibling;
+                                               } else if (DU.isText(child)) {
+                                                       
cb(child.nodeValue.replace(/<(\/?nowiki)>/g, '&lt;$1&gt;'), child);
+                                               } else {
+                                                       
state.serializer._serializeNode(child, state, cb);
                                                }
+                                               child = child.nextSibling;
                                        }
                                        WTSUtils.emitEndTag('</nowiki>', node, 
state, cb);
                                } else if 
(/(?:^|\s)mw\:Image(\/(Frame|Frameless|Thumb))?/.test(type)) {

-- 
To view, visit https://gerrit.wikimedia.org/r/232089
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I1233332b9ecae3d7d2c367227518a18aa3ba9f2c
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/services/parsoid
Gerrit-Branch: master
Gerrit-Owner: Arlolra <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to