Go to file
Amir E. Aharoni 3ab0128bfd Parse a message correctly
Follow-up to
I2495fe32c2d540be50450d715b049173f2f8727d

Done with the help of Matma Rex at Wikimedia Hackathon 2024.

Bug: T361103
Change-Id: Ica328233cb6172277e66d2341cfb53f87f8aff67
2024-05-07 12:06:37 +00:00
.phan ve.collab: Move BetaFeature into its own file 2024-03-06 14:50:14 -06:00
bin updateSubmodule: Show removed files/i18n keys as well as added 2023-12-08 16:51:11 +00:00
build Prefer arrow callbacks 2024-05-01 14:11:54 +01:00
editcheck Localisation updates from https://translatewiki.net. 2024-05-02 09:20:26 +02:00
i18n Localisation updates from https://translatewiki.net. 2024-05-06 09:26:50 +02:00
images ve.collab: Create BetaFeature 2024-03-07 00:45:39 +08:00
includes Load diff modules in onTextSlotDiffRendererTablePrefix as well 2024-04-05 13:12:48 +01:00
lib Update VE core submodule to master (55a4050b9) 2024-05-04 18:33:44 +03:00
modules Parse a message correctly 2024-05-07 12:06:37 +00:00
screenshots
tests Fix empty provider in HooksTest 2024-02-20 12:19:49 +00:00
.eslintignore Implement add a reference edit check 2023-08-16 17:19:28 +01:00
.eslintrc.json Add basic end-to-end tests for action=visualeditor 2022-09-28 18:28:05 +02:00
.gitignore .gitignore: Add .vscode directory to .gitignore 2023-05-16 12:50:51 +01:00
.gitmodules
.gitreview
.jsdoc.json JSDoc: {Mixed} -> {any} 2024-05-02 10:39:25 +01:00
.mailmap Update Legoktm's mailmap entry 2021-04-11 19:18:33 -07:00
.phpcs.xml ApiVisualEditor: Remove $wgTitle hack, set page for {{PAGENAME}} when needed 2022-02-28 23:43:54 +00:00
.stylelintrc.json build: Update stylelint-config-wikimedia 2023-08-21 16:06:40 +01:00
AUTHORS.txt Move verbose copyright message to AUTHORS.txt 2023-12-01 16:07:39 +00:00
composer.json Update minus-x to 1.1.3 2024-05-04 18:38:03 +02:00
CONTRIBUTING.md
extension.json Confirm abort if saving would make a change to the underlying document 2024-04-30 16:20:45 +01:00
Gruntfile.js docs: Replace JSDuck with JSDoc (and pull-through VE with said change) 2024-04-29 16:16:50 +01:00
LICENSE.txt
package-lock.json build: Updating ejs to 3.1.10 2024-05-02 15:06:18 +00:00
package.json JSDoc: Update jsdoc-wmf-theme to 1.0.0 2024-04-30 12:32:58 +01:00
README.md Readme: Mark links, as JSDoc doesn't autolink 2024-04-30 13:29:26 +01:00
VisualEditor.i18n.alias.php

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

Terminology

  • CE: ContentEditable
  • DM: Data model
  • Invocation: Here the act of calling a template from a page, visible as e.g. {{reflist}} in the wikitext.
  • MW: MediaWiki
  • Page: See https://www.mediawiki.org/wiki/OOUI/Layouts/Booklets_and_Pages
  • Parameter: A template parameter. Can be known (i.e. documented via TemplateData) or unknown.
  • Part: A template-level entity in a transclusion, i.e. either a template, template placeholder, or wikitext snippet.
  • SA: Standalone
  • Template: See https://www.mediawiki.org/wiki/Help:Templates
  • Transclusion: A sequence of one or more template invocations, possibly mixed with raw wikitext snippets.
  • UI: User interface
  • VE: VisualEditor
  • WT: Wikitext