Go to file
Catrope 9372ca60ad Kill getOffsetFromNode() with fire
The way it operated was evil. It did a depth-first search from the root,
finding the node using reference equality. For documents with deep
structures, this could take a long time. Inez did some profiling and
found it was called tens of millions of times on a complex document.

Kill getOffsetFromNode() and move its functionality to getOffset().
The logic has been completely rewritten: getOffset() now traverses
up from the node rather than down from the root, and pretty much does
the reverse of what getNodeFromOffset() does. This should be much more
efficient even without offset caching in the node objects (which we may
still implement later).

Change-Id: I125f9fa423c40db6472e2c4a7c94214218ba3bc7
2013-05-09 17:26:22 -07:00
.docs docgen: Use new jsduck --color and --warnings-exit-nonzero option 2013-04-30 20:53:22 +02:00
demos Mo' vectors (mo' problems) 2013-05-09 11:22:32 +01:00
maintenance Mo' vectors (mo' problems) 2013-05-09 11:22:32 +01:00
modules Kill getOffsetFromNode() with fire 2013-05-09 17:26:22 -07:00
.gitignore Ignore Eclipse files 2013-01-11 10:58:47 -08:00
.gitreview Set defaultrebase=0 2012-06-20 16:27:40 -07:00
.jshintignore UnicodeJS library to implement Unicode standards 2013-03-27 17:44:22 +00:00
.jshintrc JSHint: Re-order jshintrc options to split common from project settings 2013-04-13 08:53:11 +02:00
ApiVisualEditor.php Merge "Show message 'anoneditwarning' in notices when applicable" 2013-05-03 17:41:49 +00:00
AUTHORS.txt Add Matma Rex to AUTHORS.txt 2013-04-26 16:13:58 -07:00
CODING.md Document and clean up events in all the things 2013-03-20 09:58:27 -07:00
LICENSE.txt Bump copyright year range to 2013 in the licence file 2013-03-18 09:55:57 -07:00
README.txt Remove the parser from the VE repo 2012-07-30 13:19:09 -07:00
VisualEditor.hooks.php Merge "Fix ContentBranchNode test broken by ve.ce.ProtectedNode" 2013-05-07 21:54:18 +00:00
VisualEditor.i18n.php Localisation updates from http://translatewiki.net. 2013-05-09 20:33:25 +00:00
VisualEditor.php ve.ce.ProtectedNode 2013-05-07 00:08:48 +00:00
VisualEditorMessagesModule.php Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00

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 wiki:

	* http://www.mediawiki.org/wiki/VisualEditor
	* http://www.mediawiki.org/wiki/Parsoid