All,
TL;DR: * References made using Cite will be configurable with a different system * New approach being prototyped in Parsoid's native implementation of the Cite extension
The Cite extension[0], which provides in-page footnotes is a crucial part of how many of us use wikis, especially for Wikipedias. However, it was written a very long time ago, even by MediaWiki standards, and in its creation, we made some design choices which made sense at the time, but don't work very well for us anymore. As CSS has gotten more features, and those features have become more reliably implemented in modern browsers, we have more choices now.
One of the great things about the Cite extension is its flexibility, such as each wiki being able to choose how the footnotes display to readers. Unfortunately, the means by which this flexibility is provided is currently done through a series of 14 different MediaWiki namespace wikitext messages which are interpreted to create the HTML to display to the user.
This has a number of disadvantages. Most wikis use the default values (and even very experienced users are probably unaware of how it works or even that it can be changed). Because they are implemented in wikitext, per-user changes such as with a gadget or a user script aren't possible to do neatly (and instead need JavaScript to re-write the content, which is slower and more complex), and changes take up to 30 days to be visible to anonymous users whilst they wait for the cache to change. Due to how MediaWiki's messages system works, changes to the display styles need to be copied into each of the ~300 display languages for users, else those users with different languages will see different reference styles on the same page. Any system that wishes to display MediaWiki references has to implement most of MediaWiki just to format these references correctly.
To fix this, the Parsoid and editing teams are proposing to replace the current way to configure the Cite extension with some CSS rules, which will solve these issues. Experimenting will be much easier to do on a per-user or gadget-basis in advance of making larger changes. Styles will be shared by all users of the wiki, regardless of their preferred language, and complicated user scripts or gadgets that slow down the system will not be needed to change the style. Changes will be instant for all users, even those logged out, and non-MediaWIki users can use styles to correctly and consistently display references. A currently-under-review patch[1] for Parsoid demonstrates use of CSS to do variations found on enwiki, eswiki, and fawiki. We think that this approach will allow us to match each of the current styles used on Wikimedia wikis. If there is any variation (currently in use) that we should experiment with, please let us know.
We plan to continue to prototype this approach in Parsoid and work through any rendering issues. Given that most Wikimedia wikis don't customize the extension, for most Wikimedia wikis, we expect this will work with the basic configuration (and for a few Wikipedias which need different configuration, we will add styling). Once we port this solution over to the master branch of the Cite extension, this will be a breaking configuration change in the MediaWiki 1.25 release. If you have a gadget or user script which changes how references appear or relies on something local to your wikis, you may need to tweak it.
Given that older browsers (IE6 and IE7 most notably) may not implement the CSS features that we need for this, we don't plan to rely solely on a CSS-based approach. Our current approach is to use a default bare HTML style on browsers that don't support content generation (like ::after and counters).
We invite your comments, feedback, and help with this. Thanks, Marc, Parsoid and Editing teams.
[0] – https://www.mediawiki.org/wiki/Extension:Cite [1] – https://gerrit.wikimedia.org/r/#/c/170936/
On Tue, Dec 16, 2014 at 5:44 AM, Marc Ordinas i Llopis < marcoil@wikimedia.org> wrote:
Due to how MediaWiki's messages system works, changes to the display styles need to be copied into each of the ~300 display languages for users, else those users with different languages will see different reference styles on the same page.
That sounds like bug T33216, which was fixed a while ago. Does this actually occur now?
On 12/16/2014 07:45 AM, Brad Jorsch (Anomie) wrote:
On Tue, Dec 16, 2014 at 5:44 AM, Marc Ordinas i Llopis < marcoil@wikimedia.org> wrote:
Due to how MediaWiki's messages system works, changes to the display styles need to be copied into each of the ~300 display languages for users, else those users with different languages will see different reference styles on the same page.
That sounds like bug T33216, which was fixed a while ago. Does this actually occur now?
Though I'm not completely sure this is the one in question, for quite some time there has been a known issue[1] with the way MediaWiki's message fallback chain is implemented. A patch[2] to fix this was posted for review, and I left some comments on it almost a year ago. There have been no updates since.
[1]: Multiple reports: https://phabricator.wikimedia.org/T3495 https://phabricator.wikimedia.org/T48579 https://phabricator.wikimedia.org/T50956 https://phabricator.wikimedia.org/T57473
[2]: https://gerrit.wikimedia.org/r/#/c/72867/
On 16 December 2014 at 04:45, Brad Jorsch (Anomie) bjorsch@wikimedia.org wrote:
On Tue, Dec 16, 2014 at 5:44 AM, Marc Ordinas i Llopis < marcoil@wikimedia.org> wrote:
Due to how MediaWiki's messages system works, changes to the display styles need to be copied into each of the ~300 display languages for
users,
else those users with different languages will see different reference styles on the same page.
That sounds like bug T33216, which was fixed a while ago. Does this actually occur now?
No, this is talking about the problem of changing the rendering styles needing to be done in each of the customised languages manually through the translation system (and being totally unlike what the translation system on TranslateWiki.net generally uses and is suited for). It was not meant to be referring to https://phabricator.wikimedia.org/T33216, which I believe is still fixed, yes.
J.
At the risk of sounding stupid, does this mean other wikis will need a Parsoid instance to use this extension, or is this simply being tested in a Parsoid environment and it's just using CSS instead of wikitext for rendering? If the former, not a fan of the idea at all. If the latter, awesome, sounds like a great idea.
I'm still confused on the exact details of how this will work, so I'd appreciate clarification.
From: jforrester@wikimedia.org Date: Tue, 16 Dec 2014 18:10:46 -0800 To: wikitech-l@lists.wikimedia.org Subject: Re: [Wikitech-l] [BREAKING CHANGE] Plans to move Cite configuration from wikitext messages to CSS styles
On 16 December 2014 at 04:45, Brad Jorsch (Anomie) bjorsch@wikimedia.org wrote:
On Tue, Dec 16, 2014 at 5:44 AM, Marc Ordinas i Llopis < marcoil@wikimedia.org> wrote:
Due to how MediaWiki's messages system works, changes to the display styles need to be copied into each of the ~300 display languages for
users,
else those users with different languages will see different reference styles on the same page.
That sounds like bug T33216, which was fixed a while ago. Does this actually occur now?
No, this is talking about the problem of changing the rendering styles needing to be done in each of the customised languages manually through the translation system (and being totally unlike what the translation system on TranslateWiki.net generally uses and is suited for). It was not meant to be referring to https://phabricator.wikimedia.org/T33216, which I believe is still fixed, yes.
J.
James D. Forrester Product Manager, Editing Wikimedia Foundation, Inc.
jforrester@wikimedia.org | @jdforrester _______________________________________________ Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
On 16 December 2014 at 21:07, Arcane 21 arcane@live.com wrote:
At the risk of sounding stupid, does this mean other wikis will need a Parsoid instance to use this extension, or is this simply being tested in a Parsoid environment and it's just using CSS instead of wikitext for rendering? If the former, not a fan of the idea at all. If the latter, awesome, sounds like a great idea.
The latter; this has become a pressing need for faithful replication of expected styles for pages rendered using Parsoid, but we'll do this in both the "regular" Cite extension and the current re-implementation of it inside Parsoid. They will share the styling so that it will just work.
I'm still confused on the exact details of how this will work, so I'd appreciate clarification.
Right now we've not yet confirmed that we can entirely replicate all the features and configurations that people are using in Cite via the existing messages in the new CSS system. This is mostly a "please help and/or tell us if we're crazy" e-mail. :-)
J.
Thanks for the clarification.
I think the idea (as you explained it) sounds great, hope you guys can get it working. :)
From: jforrester@wikimedia.org Date: Tue, 16 Dec 2014 22:06:11 -0800 To: wikitech-l@lists.wikimedia.org Subject: Re: [Wikitech-l] [BREAKING CHANGE] Plans to move Cite configuration from wikitext messages to CSS styles
On 16 December 2014 at 21:07, Arcane 21 arcane@live.com wrote:
At the risk of sounding stupid, does this mean other wikis will need a Parsoid instance to use this extension, or is this simply being tested in a Parsoid environment and it's just using CSS instead of wikitext for rendering? If the former, not a fan of the idea at all. If the latter, awesome, sounds like a great idea.
The latter; this has become a pressing need for faithful replication of expected styles for pages rendered using Parsoid, but we'll do this in both the "regular" Cite extension and the current re-implementation of it inside Parsoid. They will share the styling so that it will just work.
I'm still confused on the exact details of how this will work, so I'd appreciate clarification.
Right now we've not yet confirmed that we can entirely replicate all the features and configurations that people are using in Cite via the existing messages in the new CSS system. This is mostly a "please help and/or tell us if we're crazy" e-mail. :-)
J.
James D. Forrester Product Manager, Editing Wikimedia Foundation, Inc.
jforrester@wikimedia.org | @jdforrester _______________________________________________ Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Ehm, has accessibility been taken into account with this design ? Quoting WebAIM: "Always use native HTML markup to provide the necessary semantic content and meaning, then use CSS to enhance and change the default styles."
I can't fully tell from just looking that the patches.
DJ
On Wed, Dec 17, 2014 at 2:11 PM, Arcane 21 arcane@live.com wrote:
Thanks for the clarification.
I think the idea (as you explained it) sounds great, hope you guys can get it working. :)
From: jforrester@wikimedia.org Date: Tue, 16 Dec 2014 22:06:11 -0800 To: wikitech-l@lists.wikimedia.org Subject: Re: [Wikitech-l] [BREAKING CHANGE] Plans to move Cite
configuration from wikitext messages to CSS styles
On 16 December 2014 at 21:07, Arcane 21 arcane@live.com wrote:
At the risk of sounding stupid, does this mean other wikis will need a Parsoid instance to use this extension, or is this simply being tested
in a
Parsoid environment and it's just using CSS instead of wikitext for rendering? If the former, not a fan of the idea at all. If the latter, awesome, sounds like a great idea.
The latter; this has become a pressing need for faithful replication of expected styles for pages rendered using Parsoid, but we'll do this in both the "regular" Cite extension and the current re-implementation of it inside Parsoid. They will share the styling so that it will just work.
I'm still confused on the exact details of how this will work, so I'd appreciate clarification.
Right now we've not yet confirmed that we can entirely replicate all the features and configurations that people are using in Cite via the
existing
messages in the new CSS system. This is mostly a "please help and/or
tell
us if we're crazy" e-mail. :-)
J.
James D. Forrester Product Manager, Editing Wikimedia Foundation, Inc.
jforrester@wikimedia.org | @jdforrester _______________________________________________ Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
On Wed, Dec 17, 2014 at 2:50 PM, Derk-Jan Hartman < d.j.hartman+wmf_ml@gmail.com> wrote:
Ehm, has accessibility been taken into account with this design ? Quoting WebAIM: "Always use native HTML markup to provide the necessary semantic content and meaning, then use CSS to enhance and change the default styles."
Yes, the current patch provides a default-style rendering using only HTML, then on browsers that support it, hides that default rendering and substitutes it with a modern, CSS counters-based styling. Marc
On Tue, Dec 16, 2014 at 9:10 PM, James Forrester jforrester@wikimedia.org wrote:
On 16 December 2014 at 04:45, Brad Jorsch (Anomie) bjorsch@wikimedia.org wrote:
On Tue, Dec 16, 2014 at 5:44 AM, Marc Ordinas i Llopis < marcoil@wikimedia.org> wrote:
Due to how MediaWiki's messages system works, changes to the display styles need to be copied into each of the ~300 display languages for
users,
else those users with different languages will see different reference styles on the same page.
That sounds like bug T33216, which was fixed a while ago. Does this actually occur now?
No, this is talking about the problem of changing the rendering styles needing to be done in each of the customised languages manually through the translation system (and being totally unlike what the translation system on TranslateWiki.net generally uses and is suited for). It was not meant to be referring to https://phabricator.wikimedia.org/T33216, which I believe is still fixed, yes.
I note that all the formatting messages are marked as "optional" or "ignore" for TranslateWiki,[1] and most languages are already falling back to the English versions. It also looks like we could reduce the number of languages not falling back significantly by killing the ones that are identical to the English, and the few that are left (besides maybe cite_references_link_many_format_backlink_labels) look to me like they'd probably be better as local-wiki customizations.
I'm not trying to say the rest of the reasons for doing this aren't good, just that "updating 300 translations" doesn't seem to actually be a problem that needs solving.
[1]: https://git.wikimedia.org/blob/translatewiki.git/d5ad344d/groups%2FMediaWiki...
On Tue, Dec 16, 2014 at 11:44 AM, Marc Ordinas i Llopis < marcoil@wikimedia.org> wrote:
TL;DR:
- References made using Cite will be configurable with a different system
- New approach being prototyped in Parsoid's native implementation of the
Cite extension
FYI: There's now a Phabricator task to track this work at https://phabricator.wikimedia.org/T86782.
-- Marc
wikitech-l@lists.wikimedia.org