VisualEditor

From MediaWiki.org
Jump to: navigation, search
For the VisualEditor deployment at the English Wikipedia, see Wikipedia:VisualEditor.
For changes made using the VisualEditor, see VisualEditor, VisualEditor: Check, and VisualEditor: Switched

The VisualEditor project aims to create a reliable rich-text editor for MediaWiki. It is being developed so it can be used as a MediaWiki extension, using the Parsoid project to supply HTML+RDFa.

It is currently deployed to various namespaces on this wiki (including the main namespace in which this page exists); more information about this test deployment can be found on Wikimedia's blog, the FAQs, and VisualEditor:Welcome or VisualEditor:Test. Please note that the test deployment only works with the Vector skin. For more information, please visit the VisualEditor Portal.

Rationale[edit | edit source]

The decline in new contributor growth is the single most serious challenge facing the Wikimedia movement. Removing avoidable technical impediments associated with Wikimedia's editing interface is a necessary pre-condition for increasing the number of Wikimedia contributors.

Status[edit | edit source]


2014-09-18 (MW 1.24wmf22):

VisualEditor was updated as part of the wider MediaWiki 1.24wmf22 branch deployment on Thursday 18 September. In the week since the last deployment, the team worked on some minor feature improvements, and several major bug fixes.

The template editor now warns you about missing required fields when inserting or editing a template, including citations (bug 50747). The save dialog's "Cancel" button is now labelled "Resume editing" as some users worried that the button might end the edit session and throw away their changes (bug 69116). We added keyboard shortcuts for marking some text as "strikethrough" –  Ctrl+ Shift+5/ Cmd+ Shift+5 (bug 60257) – and as "code" –  Ctrl+ Shift+6/ Cmd+ Shift+6 (bug 52597). When you switch to source mode, we now show a pending state so that it's clear something is happening (bug 65012).

We fixed a few bugs for immediate release. We found a case where an error was thrown (bugs 70770 and 70782), which also caused the toolbar to not be destroyed when you left the editor (bug 70768). There was a bug that meant inserting a template which had multiple parts would crash the editor and insert multiple snowmen ("☃") characters (bug 70777). We worked around a bad bug in Internet Explorer that caused style and bgcolor attributes to be normalised when you edited a page (bug 70856). Unfortunately this uncovered an even worse bug in Firefox that would change any category link with an accent or non-Latin character in it into a link to MediaWiki:Badtitletext, and any link would have its spaces replaced by underscores (bug 70897). These were all fixed and released immediately, and we apologise again for the disruption.

The template editor was mis-counting the number of available fields left to add, which we corrected (bug 70609). If you click and drag and move the pointer out of the document, we now keep track of the mouse until you unclick (bug 59822). We worked around a corruption caused by Windows's native clipboard adding HTML comments when using Chrome (bug 70799). We re-wrote an old piece of code that stopped you from adding a new paragraph at the end of a page if the existing last line was an empty section heading (bug 59652). The cite menu's options now are disabled when user clicks outside the document, rather than staying enabled (bug 70870).

We corrected a problem that caused issues for users of Safari in most dialogs (bug 70578). Inserting a link will now keep the bold, italics and related styling of the content around it (bug 70534). We found and fixed an issue where if you pasted in content with an "auto" direction and no language attribute, like a MediaWiki page title, editing it with the language editor would cause a crash (bug 70731). We also fixed an issue where if you selected the link inspector after inserting a link by selection a formula or other node, you would get the link added as text in the editor (bug 60843).

VisualEditor now keeps track of pages that it has found out exists due to link, template or category searches so it can more efficiently show red links when needed (bug 69886). The OOjs UI library was improved with a number of fixes. Popup items now position themselves correctly when the dimensions change, and help popups now appear floated to the right of the FieldLayout to which they refer, rather than inline. Pending statuses are now brought together into a PendingElement mixin. TextInputMenuWidget items now update their width before the labels are fitted into it, which fixed a bug where labels would be truncated initially even though there was enough space, and then be displayed in full when you typed a second character.

You can monitor the live results of the automated browser tests (triggered every twelve hours) on the server. A complete list of individual code commits is available in the 1.24/wmf22 changelog, and all Bugzilla tickets closed in this period are on Bugzilla's list.
You can see the team's current code dashboard on gerrit.

Timeline[edit | edit source]

  • Some level of exploration was done in 2010 by the Wikipedia Usability Initiative.
  • The 2011 product whitepaper published by the Wikimedia Foundation's strategic product team identified rich-text editing as one of the "Great Movement Projects". Work subsequently started in May 2011.
  • The 2011-12 Wikimedia annual plan, released July 2011, states a goal for VisualEditor: "First opt-in user-facing production usage by December 2011, and first small wiki default deployment by June 2012".
  • The 2012-13 Engineering Goals document sets a timeline for VisualEditor's development and deployment up to the end of June 2013.
  • VisualEditor is scheduled to be deployed across Wikimedia projects over the coming months. Below is the schedule as of December 2013:
Wikipedia roll-out timeline (detailed list)
Week of… Launch Users Projects Status
Summer 2012 Phase 0 All users Mediawiki.org[1] YesY Done
1 July 2013 Logged-in users English Wikipedia (en)[2] YesY Done
15 July 2013 All users YesY Done
24 July 2013 Phase 1 Logged-in users 7 of the largest Wikipedias

Spanish (es), French (fr), Hebrew (he), Italian (it), Polish (pl), Russian (ru) & Swedish (sv)[3]

YesY Done
29 July 2013 All users YesY Done
30 September 2013 Phase 2 Logged-in users 27 of the next largest Wikipedias

Bulgarian (bg), Catalan (ca), Cebuano (ceb), Czech (cs), Danish (da), Modern Greek (el), Estonian (et), Basque (eu), Finnish (fi), Galician (gl), Croatian (hr), Hungarian (hu), Indonesian (id), Latvian (lv), Malay (ms), Neopolitan (nap), Norwegian - Nynorsk (nn), Norwegian - Bokmål (no), Sicilian (scn), Simple English (simple), Slovak (sk), Slovenian (sl), Turkish (tr), Ukrainian (uk), Venetian (vec), Volapük (vo), Waray-Waray (war)

YesY Done
7 October 2013 All users YesY Done
2 December 2013 Phase 3 All users 91 Wikipedias with all characters normally directly available to users

Acehnese (ace), Aymara (ay), Central Bikol (bcl), Bislama (bi), Banjar (bjn), Chavacano (cbk-zam), Chechen (ce), Chamorro (ch), Cheyenne (chy), Corsican (co), Kashubian (csb), Zazaki (diq), Emilian-Romagnol (eml), Extremaduran (ext), Fijian (fj), Faroese (fo), Franco-Provençal/Arpitan (frp), North Frisian (frr), Friulian (fur), Scottish Gaelic (gd), Hawai'ian (haw), Fiji Hindi (hif), Haitian (ht), Interlingua (ia), Ilokano (ilo), Ido (io), Lojban (jbo), Kongo (kg), Kikuyu (ki), Greenlandic (kl), Komi-Permyak (koi), Ripuarian (ksh), Cornish (kw), Ladino (lad), Lak (lbe), Ganda (lg), Limburgish (li), Ligurian (lij), Lombard (lmo), Banyumasan (map-bms), Malagasy (mg), Maori (mi), Minangkabau (min), Maltese (mwl), Erzya (myv), Nauruan (na), Low Saxon (nds), Dutch Low Saxon (nds-nl), Novial (nov), Norman (nrm), Northern Sotho (nso), Chichewa (ny), Oromo (om), Pangasinan (pag), Kapampangan (pam), Papiamento (pap), Picard (pcd), Pennsylvania German (pdc), Norfuk (pih), Piedmontese (pms), Portuguese (pt), Quechuan (qu), Romansh (rm), Romani (rmy), Kirundi (rn), Aromanian (roa-rup), Tarantino (roa-tara), Kinyarwanda (rw), Northern Sami (se), Sango (sg), Samoan (sm), Shona (sn), Somali (so), Sranan (srn), Swazi (ss), Sesotho (st), Saterland Frisian (stq), Sundanese (su), Tongan (to), Tok Pisin (tpi), Tsonga (ts), Tumbuka (tum), Tahitian (ty), Tuvan (tyv), Veps (vep), West Flemish (vls), Kalmyk (xal), Yiddish (yi), Yoruba (yo), Zeelandic (zea), Zulu (zu)

YesY Done
13 January 2014 Phase 4 All users 23 remaining Wikipedias with all characters normally directly available to users

Alemannic (als), Aragonese (an), Asturian (ast), Bavarian (bar), Belarusian (be), Belarussian Taraškievica (be-x-old), Bosnian (bs), Esperanto (eo), West Frisian (fy), Irish (ga), Javanese (jv), Latin (la), Luxembourgish (lb), Lithuanian (lt), Occitan (oc), Palatinate German (pfl), Romanian (ro), Scots (sco), Albanian (sq), Swahili (sw), Tswana (tn), Vietnamese (vi), Xhosa (xh)

YesY Done
TBC Phase 5 All users 53 Wikipedias with some characters not normally directly-available to users

(Provisional list) Abkhazian (ab), Afrikaans (af), Akan (ak), Anglo-Saxon (ang), Avar (av), Azerbaijani (az), Bashkir (ba), Samogitian (bat-smg), Bambara (bm), Breton (br), Buryat (bxr), Crimean Tatar (crh), Old Church Slovonic (cu), Chuvash (cv), Welsh (cy), Lower Sorbian (dsb), Ewe (ee), Fula (ff), Võro (fiu-vro), Gagauz (gag), Guarani (gn), Hausa (ha), Upper Sorbian (hsb), Igbo (ig), Inupiak (ik), Icelandic (is), Karakalpak (kaa), Kabyle (kab), Kabardian (kbd), Karachay-Balkar (krc), Komi (kv), Kyrgyz (ky), Lezgian (lez), Lingala (ln), Latgalian (ltg), Moksha (mdf), Meadow Mari (mhr), Macedonian (mk), Mongolian (mn), Hill Mari (mrj), Maltese (mt), Nahuatl (nah), Navajo (nv), Ossetian (os), Rusyn (rue), Sakha (sah), Silesian (szl), Turkmen (tk), Tatar (tt), Udmurt (udm), Venda (ve), Walloon (wa), Wolof (wo)

TBC Phase 6 All users 59 Wikipedias with complex characters inserted using Input Method Editors

(Provisional list) Amharic (am), Arabic (ar), Aramaic (arc), Egyptian Arabic (arz), Assamese (as), Behari (bh), Bengali (bn), Tibetan (bo), Bishnupriya (bpy), Buginese (bug), Min Dong (cdo), Cherokee (chr), Sorani Kurdish (ckb), Cree (cr), Dhivehi (dv), Dzongkha (dz), Persian (fa), Gilaki (glk), Gothic (got), Gujarati (gu), Manx (gv), Hakka (hak), Hindi (hi), Akan (hy), Japanese (ja), Georgian (ka), Khmer (km), Kannada (kn), Korean (ko), Kashmiri (ks), Lao (lo), Malayalam (ml), Marathi (mr), Burmese (my), Mazanderani (mzn), Nepali (ne), Nepal Bhasa (new), Oriya (or), Punjabi (pa), Pali (pi), Saraiki (Western Punjabi) (pnb), Pontic (pnt), Pashto (ps), Sanskrit (sa), Sindhi (sd), Serbo-Croatian (sh), Sinhala (si), Tamil (ta), Telugu (te), Thai (th), Tigrinya (ti), Tagalog (tl), Uyghur (ug), Urdu (ur), Wu (wuu), Zhuang (za), Classical Chinese (zh-classical), Min Nan (zh-min-nan), Cantonese (zh-yue)

TBC Phase 7 All users 9 language variant Wikipedias

Gan (gan), Inuktitut (iu), Kazakh (kk), Kurdish (ku), Tachelhit (shi), Serbian (sr), Tajik (tg), Uzbek (uz), Chinese (zh)

VisualEditor may be offered to users at non-Wikipedia projects, such as Commons or Wiktionary, after deployment to the Wikipedias has completed. No timeline has been set for this.

VisualEditor was made opt-in on the English Wikipedia in September 2013.

VisualEditor was made opt-in on the Spanish Wikipedia in February 2014.

Notes[edit | edit source]

  1. Initially restricted to just the VisualEditor: namespace, later for all pages.
  2. Subsequently switched back to "opt-in" mode in September 2013.
  3. German (de) and Dutch (nl) initially proposed, but withdrawn before full deployment due to community concerns.

Documentation[edit | edit source]

You can speak with us in our chat channel, #mediawiki-visualeditorconnect.

Related pages[edit | edit source]

For more information on VisualEditor and its design process, see these directory pages:

See also[edit | edit source]