Last modified on 26 July 2014, at 11:49

VisualEditor

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.

RationaleEdit

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.

StatusEdit


2014-07-24 (MW 1.24wmf15):

VisualEditor was updated as part of the wider MediaWiki 1.24wmf15 branch deployment on Thursday 24 July. In the week since the last deployment, the team worked on a few new features and fixing a number of bugs.

You can now create, edit and view HTML comments, which are used occasionally as notes to future editors (bug 49603), though comments in some non-content locations like between two table rows won't appear as there's nowhere sensible to show them. We would greatly value feedback on whether this approach to this long-requested feature is useful. In the long-term it may make sense to provide a full Flow-based commenting system so that editors can see discussions about paragraphs as they are editing them, rather than encouraging the use of HTML comments which are difficult to follow.

You can now insert a re-use of an existing reference right from the "Cite" menu on desktop, rather than have to know that you can do this using the "Basic" option. This feature already existed on desktop, but now has an icon rather than just a mysterious blank square, and we fixed a bug where a "Go back" button would take you to a confusing screen (bug 68201). The "Cancel" button in the toolbar has been removed, as it was unnecessary and took up a lot of room compared to how often it was used; clicking on the "Read" tab takes users who wish to exit out of the editor, as does the "Back" button in their browser.

When you add a new template which has no suggested or required parameters in its TemplateData (or no TemplateData at all), we have changed the template tool to now prompt you to add parameters as that's often something you will want to do (bug 55925). On wikis where anonymous users are not able to create new pages, if a user has somehow ended up using VisualEditor anyway (such as through a manual link) we warn them that they won't be able to save on load, rather than waiting until they try to save (bug 67550). If you choose to switch to source mode without any changes being made, you won't be prompted to decide what to do about the changes… because you haven't made any (bug 68229). The command help dialog was adjusted to have a 'safe' (left side) closing button rather than an 'action' (right side) one, as closing it has no effect on the content.

An issue on Firefox with opening windows like the link editor would take five seconds instead of a few milliseconds the first time was fixed and released immediately to wikis (bug 68223). Another issue which we fixed and got out early meant that the messages for some dialogs wouldn't display correctly (bug 68327).

We fixed a big problem that was affecting the formula editor and similar tools that update as you type, causing them to close after each key press (bug 67326). The heights of various windows was adjusted, including the language editor (bug 68053), and the reference (bug 68232), references list (bug 68226), template, transclusion, and citation dialogs, so that they don't appear squished. We fixed an issue that meant pressing Return directly after a reference would throw an error (bug 68462).

Converting an auto-numbered external link to a normal one now retains annotations like it being bold or italic, as in other parts of the editor (bug 67377). A couple of issues with using the media dialog around changing sizes were also corrected (bugs 68000 and 68242). We corrected the reference dialog code which had stopped focussing the cursor on opening due to an oversight in the transition to use processes last week. We also fixed some issues related to handling the up and down cursor keys when you have selected a node.

We made some significant performance improvements in a number of areas, including opening the re-use reference tool, making selections across a large amount of content, choosing what to show in the context menu deleting or moving a list, resizing images, and pasting more than one paragraph in a large document (bug 68301). We also comprehensively switched from the jQuery to the browser native focus method for performance reasons, especially on mobile devices.

We set up a monitoring bot to scan for "visualeditor-needcheck" edits to make sure that any issues that might cause corruptions from VisualEditor are highlighted to the team as quickly as possible (bug 62860). The re-render flash in debug mode is now more prominent to make it easier to see what is going on. VisualEditor-MediaWiki no longer checks for OOjs and OOjs UI to be present, as MediaWiki 1.24 (on which it depends) provides it anyway. We removed the "live" event from the codebase (except internally within ve.ce.Surface), preferring more explicit "setup" and "teardown" events (bug 55505). We cleaned up the code fixing some outstanding issues violating the coding styles and moved the directory for tests from …/test/… to …/tests/… for consistency with the rest of Wikimedia's repos.

We found and fixed a bug in OOjs which meant the second attempt to disconnect an event would throw an error, which caused some issues in VisualEditor and probably elsewhere (bug 68573), and released a new version, v1.0.11. In OOjs UI, we have added more ARIA-based roles to widgets to improve accessibility (bug 50203). The toolbars now handle touch events directly, rather than through browser translation from click events. The TextInputWidget will now autosize when setValue() is called, not just when a user changes its contents manually. A minor oversight some time ago meant that the tick symbol shown next to menu items in OOUI was missing; we restored this (bug 68170). We also added a special case for the clipping of windows when the "container" is the document body, to prevent odd behaviour (bug 68370).

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/wmf15 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.

TimelineEdit

  • 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.

NotesEdit

  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.

DocumentationEdit

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

Related pagesEdit

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

See alsoEdit