Go to file
James D. Forrester d32c390523 Update VE core submodule to master (d9d4e33)
New changes:
288b060 Use frameless buttons in mobile process dialogs
b7deb26 Fix typo in TargetWidget.css
62c63d7 Localisation updates from https://translatewiki.net.
ac0c49a Remove duplicated commands for 'code' and 'strikethrough'
c4120fc Make setExcludeInsertions chainable, like all other SurfaceFragment methods
d2e86df Use super constructors in Desktop/MobileSurface
a1364f4 Have getLinearFragment call getFragment
842b322 Use overridable factory methods for creating surface model and view
8e729f7 Localisation updates from https://translatewiki.net.
479095c Make 'plainText' a paste rule, rather than a named parameter
744c633 Allow the target to specify command and sequence registries

Change-Id: Ie312412d5af350e7b1478393ad288bbe14a7a43a
2015-08-01 15:46:47 -07:00
.jsduck Follow-up Ieb4e4eb3: Remove @until jsduck tag 2015-07-30 08:39:45 -07:00
bin Merge "Follow-up a4bbe98cd: Kill emptiness hack check in bin/updateSubmodule.sh too" 2015-04-29 00:58:51 +00:00
build/tasks Use submodule for VisualEditor core 2013-12-20 09:18:41 +00:00
lib Update VE core submodule to master (d9d4e33) 2015-08-01 15:46:47 -07:00
modules Merge "MWSaveDialog: Make a FragmentDialog now that's available" 2015-08-01 22:44:18 +00:00
.csslintrc Transform the search widget to show image details 2015-01-16 13:22:54 +00:00
.gitignore Add a couple of patterns to .gitignore for emacs 2015-05-13 19:11:05 -04:00
.gitmodules Use submodule for VisualEditor core 2013-12-20 09:18:41 +00:00
.gitreview Set defaultrebase=0 2012-06-20 16:27:40 -07:00
.jscsrc build: Drop last jscs over-ride and make pass 2015-07-22 15:13:09 -07:00
.jshintignore Move libraries to the lib/ directory 2013-12-19 23:02:52 +01:00
.jshintrc jshint: Kill file-level globals and add "moment" to the list 2015-05-06 19:01:27 +00:00
.mailmap mailmap: Add an additional e-mail for Bartosz per request 2015-05-31 13:04:29 -07:00
.rubocop.yml [BrowserTest] RuboCop should not complain about number of lines in a method 2014-11-21 16:57:27 +00:00
.rubocop_todo.yml [BrowserTest] Remove outdated offenses from .rubocop_todo.yml 2015-02-20 13:39:18 +02:00
ApiVisualEditor.php Revert "Replace wgVisualEditorNamespaces with an associative array" 2015-07-31 04:41:28 +01:00
ApiVisualEditorEdit.php Revert "Replace wgVisualEditorNamespaces with an associative array" 2015-07-31 04:41:28 +01:00
AUTHORS.txt Update AUTHORS.txt, $wgExtensionCredits and .mailmap based on git shortlog 2015-03-26 11:05:02 -07:00
betafeatures-icon-VisualEditor-ltr.svg Run node-svgo to crush all SVGs whilst retaining readibility 2014-07-01 16:58:05 -07:00
betafeatures-icon-VisualEditor-rtl.svg Run node-svgo to crush all SVGs whilst retaining readibility 2014-07-01 16:58:05 -07:00
composer.json build: Updating development dependencies 2015-06-19 23:32:37 +02:00
CONTRIBUTING.md Fix dead links in README.md and CONTRIBUTING.md 2014-03-10 18:26:30 +01:00
extension.json Revert "Only change edit tab text if the current text is as expected" 2015-08-01 00:29:51 +00:00
Gemfile [BrowserTest] Update the commons_upload gem 2015-06-19 13:19:33 +03:00
Gemfile.lock [BrowserTest] Update the commons_upload gem 2015-06-19 13:19:33 +03:00
Gruntfile.js Follow-up 8b7b20b9: Add new i18n directory to banana testing 2015-07-18 09:30:01 -05:00
jsduck.json build: Move pre/post 'doc' task into package.json 2015-04-06 17:18:29 +01:00
LICENSE.txt build: Bump copyright notices to 2015 2015-01-12 20:34:19 -08:00
package.json build: Configure jsonlint 2015-06-13 01:14:38 -07:00
README.md README: Add devDependencies badge 2014-09-16 13:39:31 -07:00
VisualEditor.hooks.php Revert "Replace wgVisualEditorNamespaces with an associative array" 2015-07-31 04:41:28 +01:00
VisualEditor.php Re-do: Empty out PHP entry point 2015-07-02 01:50:57 +00:00
VisualEditorDataModule.php build: Updating development dependencies 2015-06-19 23:32:37 +02:00
VisualEditorDesktopArticleTargetInitModule.php [BREAKING CHANGE] Rename (View|Mobile)PageTarget to (Desktop|Mobile)ArticleTarget 2015-07-29 18:26:36 +01:00

devDependency Status

VisualEditor

VisualEditor provides a visual editor for wiki pages. It is written in JavaScript and runs in a web browser.

It uses the Parsoid parser to convert wikitext documents to annotated HTML which the VisualEditor is able to load, modify and emit back to Parsoid at which point it is converted back into wikitext.

For more information about these projects, check out the VisualEditor and Parsoid pages on mediawiki.

Developing and installing

For information on installing VisualEditor on a local wiki, please see https://www.mediawiki.org/wiki/Extension:VisualEditor

For information about running tests and contributing code to VisualEditor, see CONTRIBUTING.md. Patch submissions are reviewed and managed with Gerrit. There is also API documentation available for the VisualEditor.