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-08-21 (MW 1.24wmf18):

VisualEditor was updated as part of the wider MediaWiki 1.24wmf18 branch deployment on Thursday 21 August. In the week since the last deployment, the team worked on some minor bug fixes.

The buttons to insert a template, reference, reference list, comment, or media item now just say "Insert" rather than "Insert <xyz>" to be simpler, briefer and less repetitive. We changed the label of the window when you are inserting a new template invocation from "New template" to "Add a template" based on translators' feedback (bug 69692). VisualEditor-MediaWiki now puts the mw-redirect or mw-disambig class on links if appropriate in the editing surface, so user gadgets that colour these in types of links can work.

The biggest bug we fixed this week was that pasting into a node (if you had selected an item like an image) with some whitespace would insert the "☀" character as well as your intended paste (bug 69595). Unlike for the rest of the document, typing at the beginning of a document would use the styling of the next character (rather than the previous); this is now corrected to just be un-styled, as users would expect (bug 68597). We fixed a bug that meant putting the cursor direct after a reference list would throw an error (bug 68588). We fixed the tear-down of live extension nodes (like the formula editor) to stop them breaking when you altered them. The media dialog will no longer crash if the API responds with an error.

The dialog that lets you select an existing reference to re-use now is a bit quicker, as it only re-builds the index when you open it if you've changed a reference since the last time it opened (bug 68890). As part of our efforts to make VisualEditor work for users of Internet Explorer as tracked in bug 50085, we fixed a disruptive bug that meant that inspectors would close immediately after opening (bug 69503), and fixed the transplantation code for moving CSS from one document to another when opening <iframe> elements.

VisualEditor-core now embeds its images in the CSS files for the distribution version, and has been re-organised into a more normal directory layout thanks to the internal UnicodeJS library being moved into its own code repository. VisualEditor-core added a new debugging tool, "Filibuster", which scrupulously logs the state of every operation in the stack to help isolate browser-specific behaviour oddities. VisualEditor-MediaWiki was updated to use the new "Config" pattern instead of globals, as introduced in MediaWiki 1.24, which VisualEditor-MediaWiki already depended on.

In OOjs UI, we fixed the formatting of dialogs for Agora users (bug 69710) and the positioning of the button in the toggle control, improved the stylesheet transplantation code, and created a new "combobox" widget. The OOjs library had a new version, 1.0.12, released, which OOjs UI, VisualEditor and MediaWiki all now use.

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/wmf18 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]