Last modified: 2013-06-21 11:31:15 UTC
Consider the wikitext: '''Foo''' bar '''baz''' => <b>Foo</b> bar <b>baz</b> If we remove " bar " in wikitext we are left with <b>Foo</b><b>baz</b> which serialises to '''Foo''''''baz''' (instead of to more sensible '''Foobaz''') Previously this has not been a problem as we annotate each of Foo & baz as name='textStyle/bold' and then the converter only closes the <b> tag when it sees two characters with non-similar annotations (different name values). However if we keep that functionality the following case breaks: <b style="color:red">Red</b><b style="color:blue">Blue</b> As we only compare name, we would consider those annotations to be the same and serialise them as one. The only way around that in VE would be to compare all attributes /except/ data-parsoid (as that will always been different, even for annotations that are actually mergeable). Having an explicit reference to data-parsoid in VE would most definitely be a Bad Thing. Therefore I'm suggesting that Parsoid work out if two annotations are mergeable and automatically collapse '''Foo''''''baz''' to '''Foobaz''' This would also apply to anything else we treat as an annotation (e.g. links)
*** This bug has been marked as a duplicate of bug 42803 ***
*** This bug has been marked as a duplicate of bug 48194 ***