Trevor Parscal
6dcc39fe11
Migrated es.* to new ve.* namespace which is more structured, and will make it easier to keep data model, edit surface, user interface and content editable work separated cleanly
2012-02-06 23:50:56 +00:00
Gabriel Wicke
53bf4f2bd0
Temporarily disable the sanitizer and start to support preprocessor
...
functionality (comments, templates, template arguments) in arbitrary
attributes. The grammar for this is still quite rough, will need to
consolidate that area.
2012-02-06 19:15:44 +00:00
Gabriel Wicke
c26243989e
Improve toJSON handlers to include all properties
2012-02-06 19:12:29 +00:00
Gabriel Wicke
0bea9fdfbb
Fix nowiki tokenization regression introduced r110495
2012-02-03 13:10:04 +00:00
Gabriel Wicke
26f2026cff
Add custom JSON serializers for tokens that include a type attribute
2012-02-03 13:09:01 +00:00
Gabriel Wicke
8c75aa1a7a
Remove type attribute for tag tokens.
2012-02-01 18:37:48 +00:00
Gabriel Wicke
689f697a93
Push token format conversion a bit further along, and add defines that were
...
missing in last commit.
2012-02-01 17:03:08 +00:00
Gabriel Wicke
a5cc10a06b
Change token format to plain strings for text tokens, and specific objects for
...
other tokens. This is only the first half of the conversion. The next step is
to drop the type attribute on most tokens and match on the constructor in the
token transform machinery.
2012-02-01 16:30:43 +00:00
Gabriel Wicke
dd3707ded5
Remove some modules normally bundled with node.js from dependencies, and
...
remove some older ones that are only used in currently-dead code.
2012-02-01 10:32:33 +00:00
Gabriel Wicke
e65c6502c0
Add source for #time implementation in comment
2012-02-01 10:14:01 +00:00
Roan Kattouw
935cae67c6
As promised, reorganize insert() so the order of cases makes more sense (from simple to complex)
2012-01-31 17:14:16 +00:00
Gabriel Wicke
14a8a13678
A few more debug helpers including a --trace mode for light debugging. Some
...
improvements to parser functions on the way to support the cite extensions.
Preparation for generic template and template arg in attribute support. 222
parser tests now passing.
2012-01-31 16:50:16 +00:00
Roan Kattouw
6832be68ed
Fix test #30 : was failing because getScope() was broken and insert() didn't account for the case of inserting something like </list><list> at a structural offset. All tests are now passing, yay!
...
* Fix getScope()
** Drop the -1 which caused the result to be off by one level
** Prevent JS errors from occurring if bad input causes the loop to try to traverse up above the root node
* insert()
** Detect the case where the input data tries to close the containing element; in that case, we'll get scope != node
** Move the getNodeFromOffset() and getScope() calls up and out of the conditionals
** Remove unnecessary parent==model conditional, no longer needed now that getScope() can safely handle things that try to traverse too far up
** Add some comments to explain what's going on. I'll restructure this function a bit more shortly
2012-01-31 16:43:21 +00:00
Neil Kandalgaonkar
2688f823ef
added dependencies to README
2012-01-31 00:56:07 +00:00
Neil Kandalgaonkar
f0b934ef2e
first pass at an API method that returns wikidom. Shells out to node. Some issues with XML API result formatting but works fine in JSON
2012-01-31 00:02:48 +00:00
Gabriel Wicke
7cd94df47d
A few minor tweaks to reduce memory usage
2012-01-27 13:32:44 +00:00
Trevor Parscal
94f7d79eb7
Skip traversal of leaf nodes if there aren't any children
2012-01-23 18:46:31 +00:00
Gabriel Wicke
4e6a54560a
* Emit token chunks for top-level block elements by patching the source of the
...
tokenizer
* Fix a bug uncovered by this
* Increase the number of outstanding listeners on a single download to 10000
2012-01-22 23:21:53 +00:00
Gabriel Wicke
7ea4d7d3db
A few parser function fixes and maximum template expansion in environment
...
config.
2012-01-22 19:32:28 +00:00
Gabriel Wicke
561cf3c237
Bug fixes and a first stab at a #time parser function. You can expand the main
...
page like this:
cd extensions/VisualEditor/modules/parser
echo '{{:Main Page}}' | node parse.js
echo '{{:Main Page}}' | node parse.js --html
echo '{{:Main Page}}' | node parse.js --debug
Even the date-based includes work somewhat, although they don't yet accept
passed-in dates.
2012-01-22 07:07:16 +00:00
Gabriel Wicke
60e45bb739
A bit of template expansion bug fixing and parser function documentation
2012-01-22 01:27:22 +00:00
Gabriel Wicke
e8a7034acf
Add some commandline switches to parse.js. Supports switching on/off debug
...
mode and a selection of html/WikiDom serialization.
2012-01-21 22:42:54 +00:00
Gabriel Wicke
785a4af76f
Implement a few parser functions. 220 parser tests now passing.
2012-01-21 20:38:13 +00:00
Gabriel Wicke
1a6546fbca
Support empty template arguments and default values in arg expansion
2012-01-21 03:03:33 +00:00
Gabriel Wicke
fdd048b3b2
Remove a few stray debug prints and disable debugging in parse.js
2012-01-20 22:21:33 +00:00
Gabriel Wicke
145df2655c
* NoInclude and IncludeOnly improvements
...
* Tokenizer support for templates and template args in template arguments and titles
* Async attribute expansion fixes
2012-01-20 22:02:23 +00:00
Gabriel Wicke
348cac6cf0
Fix a bug in TokenCollector, and misc tweaks for template expansions.
2012-01-20 18:47:17 +00:00
Gabriel Wicke
7cc8e69147
Collapse all requests per template into a single outstanding request using an
...
event-emitting TemplateRequest object and a request queue.
2012-01-20 02:36:18 +00:00
Gabriel Wicke
fc2088bb21
Add some rudimentary noinclude / includeonly support and fix up
...
TokenCollector.
2012-01-20 01:46:16 +00:00
Gabriel Wicke
c15e0d4167
Minor cleanup in TemplateHandler
2012-01-20 00:49:27 +00:00
Gabriel Wicke
d0ece16c86
Fix async template expansion, so we can now render simple pages with templates
...
directly to WikiDom from enwiki using a commandline like this:
echo '{{User:GWicke/Test}}' | node parse.js
Wohoo!
Complex pages with templates won't render properly yet, as noinclude /
includeonly and parser functions are not yet implemented. As a result, the
parser will run out of memory or hit the currently low expansion depth limit
as it tries to expand documentation for all templates.
2012-01-19 23:43:39 +00:00
Gabriel Wicke
2233d0a488
Eventify parser tests and parse.js commandline wrapper to actuallly allow
...
async template fetching. Async expansion is not yet fully debugged, but at
least the preconditions for that are now there.
2012-01-18 23:46:01 +00:00
Gabriel Wicke
5b8054636e
Make template fetching somewhat functional on node with Inez' help, but
...
disable it by default in parserTests as it tries to fetch all sorts of parser
functions and is not yet fully supported in parserTests. The next step will be
to build a list of parser functions (to avoid fetching them as templates) and
pushing the event interface into parserTests.
2012-01-18 19:38:32 +00:00
Gabriel Wicke
4bd4307924
Fix comment to reflect the actual regexp/spec in the JS version as well.
2012-01-18 19:35:13 +00:00
Gabriel Wicke
14e6728cc4
Add the start of a minimal sanitizer stage, that only strips IDN ignored
...
characters from host portions of links hrefs for now. This module needs to be
filled up with pretty much everything Sanitizer.php does, including tag and
attribute whitelists and attribute value sanitation (especially for style
attributes).
We'll also need to think about round-tripping of sanitized tokens.
2012-01-18 01:42:56 +00:00
Gabriel Wicke
336be4f617
Eat '[[[' as plain text token, makes it 212 passing.
2012-01-18 00:23:17 +00:00
Gabriel Wicke
178adbc342
Accept IPv6 (and IPv4) addresses in the tokenizer, so another test passes.
2012-01-18 00:00:47 +00:00
Gabriel Wicke
e7381da5b8
Trim whitespace off template titles and argument names. 209 parser tests now
...
passing.
2012-01-17 23:18:33 +00:00
Gabriel Wicke
f50fecf1e3
Fix template argument expansion. 200 parser tests now passing.
2012-01-17 22:29:26 +00:00
Gabriel Wicke
34025251a3
Clean up 'END' token handling a bit.
2012-01-17 20:01:21 +00:00
Gabriel Wicke
7f579398c7
Use isBlockTag in DOMPostProcessor
2012-01-17 18:30:22 +00:00
Gabriel Wicke
6bd7ca1e75
Misc improvements, now 196 parser tests passing.
...
* Add handler for post-expand paragraph wrapping on token stream, to handle
things like comments on its own line post-expand
* Add general Util module
* Fix self-closing tag handling in HTML5 tree builder
2012-01-17 18:22:10 +00:00
Gabriel Wicke
f4081bef08
First template expansion tests start working, and a bug fix in
...
DOMPostProcessor paragraph wrapper. 187 parser tests now passing.
2012-01-14 00:58:20 +00:00
Gabriel Wicke
196d704e8e
Template expansion now enabled and somewhat working, but template fetching
...
still fails all the time.
2012-01-13 18:48:25 +00:00
Gabriel Wicke
32c9bccd7c
Results of early template expansion debugging. Still disabled by default, but
...
getting closer.
2012-01-11 19:48:49 +00:00
Gabriel Wicke
6b6ec2933d
More work towards template expansion.
...
* Created AttributeTokenTransformManager for generic attribute conversion, and
removed { title, template argument {key, value} } expansion from
TemplateHandler.
* Added caching for attribute and input sub-pipelines. Especially attribute
pipelines would otherwise be recreated for each attribute value and key.
2012-01-11 00:05:51 +00:00
Gabriel Wicke
5ec30252f1
More token transform and pipeline setup refactoring to support template
...
expansion better.
2012-01-10 01:09:50 +00:00
Gabriel Wicke
287604c422
A bit of cleanup in ParserPipeline, with better and more consistent support
...
for multiple input types.
2012-01-09 19:33:49 +00:00
Gabriel Wicke
becf3cb7ea
Add generic 'collect all tokens between delimiter tokens and call a transform
...
function on it' util for synchronous transformation phases. This can be used
to implement parser hooks (aka extension tags) besides other things.
2012-01-09 18:13:45 +00:00
Gabriel Wicke
e99d7a2a55
Two batteries worth of token transform manager refactoring.
...
* TokenTransformDispatcher is now renamed to TokenTransformManager, and is
also turned into a base class
* SyncTokenTransformManager and AsyncTokenTransformManager subclass
TokenTransformManager and implement synchronous (phase 1,3) and asynchronous
(phase 2) transformation stages.
* Communication between stages uses the same chunk / end events as all the
other token stages.
* The AsyncTokenTransformManager now supports the creation of nested
AsyncTokenTransformManagers for template expansion.
The AsyncTokenTransformManager object takes on the responsibilities of a
preprocessor frame. Transforms are newly created (or potentially resurrected
from a cache), so that transforms do not have to worry about concurrency.
* The environment is pushed through to all transform managers and the
individual transforms.
2012-01-09 17:49:16 +00:00
Gabriel Wicke
6601c544e6
Handle default for template arg expansion, add template fetch functionality
...
and tweak a few minor things in the grammar and QuoteTransformer.
2012-01-06 17:19:14 +00:00
Gabriel Wicke
f0c844f28f
Add template expansion handler skeleton, not yet functional. Also note
...
improvements needed in the tokenizer template handling.
2012-01-06 14:30:55 +00:00
Mark A. Hershberger
381551e039
w/s
2012-01-04 17:46:24 +00:00
Mark A. Hershberger
3a9a4cf322
re r106536 remove !transparent
2012-01-04 17:44:14 +00:00
Gabriel Wicke
2e35171fd1
Fix quote handling and tweak the whitelist a bit. 'any' token registrations
...
are now merged with specific registrations by rank. Not yet clear if that is a
good idea overall, need to check use cases when implementing template expansion
and other functionality.
183 parser test now passing.
2012-01-04 14:09:05 +00:00
Gabriel Wicke
6cd95fea37
Fix up constructors in EventEmitter inheritance and tweak a few more comments.
2012-01-04 12:28:41 +00:00
Gabriel Wicke
e3ae9a702b
Fix JSHint warnings (mostly about comment indentation) from r108012.
2012-01-04 11:06:24 +00:00
Gabriel Wicke
4c4a24f0a0
Hook up the DOMPostProcessor using events as well, and rename the subscription
...
methods to tell a story. Also document idea on how to dynamically configure
the pipeline depending on event registrations in comment.
2012-01-04 11:00:54 +00:00
Gabriel Wicke
f0399d2ec5
Clean up comments in TokenTransformDispatcher and mark private methods with
...
underscore.
2012-01-04 09:48:24 +00:00
Gabriel Wicke
ee79158e53
Add trailing newline in commandline parser wrapper
2012-01-04 08:42:53 +00:00
Gabriel Wicke
29362cc53c
Rename ParseThingy to ParserPipeline and fix up broken WikiDom generation and
...
commandline runner.
2012-01-04 08:39:45 +00:00
Gabriel Wicke
bd98eb4c5a
Land big TokenTransformDispatcher and eventization refactoring.
...
The TokenTransformDispatcher now actually implements an asynchronous, phased
token transformation framework as described in
https://www.mediawiki.org/wiki/Future/Parser_development/Token_stream_transformations .
Additionally, the parser pipeline is now mostly held together using events.
The tokenizer still emits a lame single events with all tokens, as block-level
emission failed with scoping issues specific to the PEGJS parser generator.
All stages clean up when receiving the end tokens, so that the full pipeline
can be used for repeated parsing.
The QuoteTransformer is not yet 100% fixed to work with the new interface, and
the Cite extension is disabled for now pending adaptation. Bold-italic related
tests are failing currently.
2012-01-03 18:44:31 +00:00
Neil Kandalgaonkar
9d198ecad6
when nothing to undo or redo, grey out appropriate buttons - fix bug #33112 , based on patch from ashish.dubey91@gmail.com
2011-12-31 01:44:34 +00:00
Neil Kandalgaonkar
20374b5911
fix substr for IE, followup r107464
2011-12-30 21:51:03 +00:00
Gabriel Wicke
8e00a72d0a
Improvements to link trail handling, and two tweaks to the whitelist. 182
...
tests now passing.
Link trails depend on language-dependent positive character classes in the PHP
parser. These classes all seem to disallow punctuation implicitly and list
differing plain text characters instead, so it might be possible to get away
with identifying a common class of non-trail punctuation instead. This would
help to keep the tokenizer independent of configurations, which is very
desirable for caching and simplified external parsing.
2011-12-30 12:47:06 +00:00
Gabriel Wicke
11ece76b7b
Fix suffix handling for wiki links.
2011-12-30 09:35:57 +00:00
Gabriel Wicke
b3a0270d69
Remove env and load grammar in tokenizer constructor. Re-add property hack to
...
keep parserTests running for now. Really need a different pipeline for html
serialization or a reference to the HTML DOM.
2011-12-28 17:04:16 +00:00
Gabriel Wicke
3a63fb118e
Add a few comments inline, and remove unneeded html serialization as we are
...
only interested in WikiDom output in this parser wrapper.
2011-12-28 13:46:52 +00:00
Neil Kandalgaonkar
8fbf36e63e
put add terminal token inside tokenize method (will pull it out again for streaming interface)
2011-12-28 01:37:15 +00:00
Neil Kandalgaonkar
6103646ec8
remove need to add newline at end of input
2011-12-28 01:37:11 +00:00
Neil Kandalgaonkar
4158f82d7e
refactor parser to ParseThingy in different module, can be invoked with command line utility parse.js
2011-12-28 01:37:06 +00:00
Neil Kandalgaonkar
d91a67ba99
nodeName not defined
2011-12-28 01:36:54 +00:00
Neil Kandalgaonkar
962d1262fc
create tokenizer without need to modify namespace with PEG source
2011-12-28 01:36:36 +00:00
Gabriel Wicke
33e60dd4d9
Update comments a bit.
2011-12-22 12:37:24 +00:00
Gabriel Wicke
9ee0e660ec
Fix regression introduced by r107060 for regular table cells. Good to have a
...
test suite ;)
2011-12-22 12:09:25 +00:00
Gabriel Wicke
a94d0ec10c
Re-add support for row-only tables.
2011-12-22 11:58:32 +00:00
Gabriel Wicke
1c7fe0eb34
Refactor table productions to support table fragments in templates (table
...
start / row / table end). The old productions are not deleted yet to make it
easy to compare the output on more complex articles. 181 tests passing after
adding two table tests with whitespace-only differences to the whitelist.
2011-12-22 11:43:55 +00:00
Gabriel Wicke
2845ba9552
Handle noinclude and includeonly at start of line, so that syntax after it
...
still matches as if it actually was preceded by a newline.
2011-12-21 11:38:50 +00:00
Mark A. Hershberger
752130ab74
Bug 33113 - Have buttons that are grayed out disabled completely
...
Author: joan.creus.c@gmail.com
2011-12-17 23:58:21 +00:00
Gabriel Wicke
3a631db6d9
Fix ranges for annotations in implicit paragraphs within branch nodes.
2011-12-16 19:36:04 +00:00
Gabriel Wicke
cc06551f2e
Rename table_header production to table_heading. Those non-natives strike again.
2011-12-16 19:24:59 +00:00
Gabriel Wicke
605ed23fd2
Fix attributes in table headings.
2011-12-16 19:22:13 +00:00
Gabriel Wicke
08255ff3e6
Small bug fix to heading level, spotted by Mike from localwiki- thanks!
2011-12-15 23:59:35 +00:00
Gabriel Wicke
a04744b2ec
Add some more attribute remapping capabilities to the DOMConverter, and clean
...
up some grammar formatting.
2011-12-15 17:33:07 +00:00
Gabriel Wicke
e98dd9e722
Implement 1-char-minimum width for annotations, and some additonal minor
...
cleanup.
2011-12-15 11:05:52 +00:00
Gabriel Wicke
22ba27295b
Clean up the DOMConverter a bit.
2011-12-15 10:55:30 +00:00
Gabriel Wicke
e72dee76e4
Follow-up to r106208 and r106207. Both good catches, thanks Yair! As this code
...
is in its early stages and nowhere near deployment, please Be Bold and just
commit things like this directly! IMHO it makes more sense to fully review this
once it settles down a bit.
2011-12-15 10:13:50 +00:00
Gabriel Wicke
3585bd9c8e
Accept row-only tables. The parser now eats [[en:Barack Obama]] as-is. Hooray!
2011-12-15 00:39:28 +00:00
Gabriel Wicke
6df94a34a1
Less lust for urls
2011-12-15 00:26:22 +00:00
Gabriel Wicke
ce2ee067f7
Minor tweak to wiki link production
2011-12-15 00:12:58 +00:00
Gabriel Wicke
377226a120
Comment out a stray console.log
2011-12-14 23:44:58 +00:00
Gabriel Wicke
574abd9774
A collection of small bug fixes to the grammar, Cite, the Token format
...
converter and the HTML DOM -> WikiDom converter. The tokenizer now digests all
parserTests.
2011-12-14 23:38:46 +00:00
Trevor Parscal
0342eb034d
Fixed help panel content where we claimed the alt key was to be used for word/block selection, but it should have been ctrl/option key - also changed clt to ctrl.
2011-12-14 19:15:02 +00:00
Trevor Parscal
64754b8200
Added autocapitalize="off" attribute to text area input so IOS doesn't capitalize everything.
2011-12-14 18:54:36 +00:00
Gabriel Wicke
dc77d73ad5
Add ability to pass through JSON data to WikiDom in data-json-* attributes,
...
and fix parser to actually parse the Barack Obama article except for one table
with nested templates at the start-of-line.
2011-12-14 17:25:09 +00:00
Gabriel Wicke
f6e4267fca
Handle a few more element types, and reset offset for each leaf node. Not sure
...
if the latter is correct, as the documentation at
https://www.mediawiki.org/wiki/Visual_editor/Software_design#Data_Structures
and the actual sample WikiDom in the editor sandbox seem to disagree on this
point.
2011-12-14 16:22:27 +00:00
Gabriel Wicke
6676a47008
Add implicit level attribute to WikiDom headings.
2011-12-14 15:55:58 +00:00
Gabriel Wicke
3018ca690b
Improve WikiDom conversion: Handle text and annotations in branch nodes as
...
paragraphs and treat list items as branches.
2011-12-14 15:40:40 +00:00
Gabriel Wicke
a09aa4d599
Add rough HTML DOM to WikiDom conversion. You can see serialized WikiDom of
...
parser tests using 'node parserTests.js --wikidom'.
2011-12-14 15:15:41 +00:00
Gabriel Wicke
5f80d30428
Clean up access to document and body after building the tree.
2011-12-14 09:40:49 +00:00
Gabriel Wicke
30749b8d8d
Update comments a bit and add a note on things to improve in API.
2011-12-14 09:33:25 +00:00
Neil Kandalgaonkar
932eade938
add buglist ang bug reporting links to feedback form
2011-12-14 01:32:07 +00:00
Trevor Parscal
74ff2981cf
Added blur handler for window which resets the shift key tracker
2011-12-13 23:22:19 +00:00
Trevor Parscal
8e10485a0c
Fixes issue with r106123 where creating new links wasn't working anymore with the button
2011-12-13 23:15:31 +00:00
Trevor Parscal
fef6d5525e
- Added auto-link selection when opening the link editor without selecting any text
...
- Resolves bug #33049
2011-12-13 23:12:27 +00:00
Gabriel Wicke
55ff272847
Comment TokenTransformDispatcher.
2011-12-13 20:13:09 +00:00
Gabriel Wicke
44deefe303
Minor tweak to comment.
2011-12-13 18:55:44 +00:00
Gabriel Wicke
c61b32eaa7
Clean up and comment the Cite extension a bit.
2011-12-13 18:45:09 +00:00
Trevor Parscal
7e3401b777
Renamed, merged and disabled some example documents
2011-12-13 17:49:42 +00:00
Trevor Parscal
acb7d042d2
Updated icons (includes new help icon)
2011-12-13 17:39:36 +00:00
Gabriel Wicke
feee9ded9f
Convert the Cite extension to a token stream transformer.
...
This required a few further additions to the TokenTransformDispatcher. In
particular, there is now an 'any' token match whose callbacks are executed
before more specific callbacks. This is used by the Cite extension to eat all
tokens between ref and /ref tags. This need is very common, so should be
broken out to an intermediate layer in the future.
In general, the requirements for the TokenTransformDispatcher API are now
clearer, and the API should likely be cleaned up / simplified.
2011-12-13 14:48:47 +00:00
Gabriel Wicke
8e55e79b67
Rename TokenTransformer to TokenTransformDispatcher.
2011-12-13 11:45:12 +00:00
Gabriel Wicke
8231511217
Replace custom object copy with $.extend.
2011-12-13 11:18:15 +00:00
Neil Kandalgaonkar
420342be88
change args for feedback and api -- all optional, in array.
2011-12-13 10:28:44 +00:00
Gabriel Wicke
39aedd4378
Improve comments in QuoteTransformer.
2011-12-13 10:25:18 +00:00
Inez Korczynski
4dfbd527a2
Add "New document" to VisualEditor demo/sandbox
2011-12-13 08:08:02 +00:00
Neil Kandalgaonkar
fb5998f1b6
remove flash-of-unstyled-content, consolidate base HTML for the sandbox in sandbox/base.php
2011-12-13 04:06:02 +00:00
Erik Moeller
aa161bb64a
Adapt title of feedback page to project page title conventions on
...
mediawiki.org
2011-12-13 03:15:56 +00:00
Neil Kandalgaonkar
f9fbeee43e
add feedback link to visual editor
2011-12-13 02:46:31 +00:00
Inez Korczynski
f27be7c238
Better implementation of history panel
2011-12-13 00:56:29 +00:00
Trevor Parscal
f379eac294
Moved toolbar floating code to sandbox.js - using a wrapper instead of a spacer to avoid resize events causing scroll events which cause a nasty loop
2011-12-12 23:41:15 +00:00
Inez Korczynski
74d194d703
Extend content of example article: "Direct manipulation interface"
2011-12-12 23:04:37 +00:00
Inez Korczynski
5f3b4cedb9
Fix typo
2011-12-12 22:55:37 +00:00
Inez Korczynski
135adbf443
Make purgeHistory method work in SurfaceModel with new data structure
2011-12-12 22:51:32 +00:00
Inez Korczynski
e592a243b6
Pretty dirty, but working implementation of history panel for VisualEditor
2011-12-12 22:50:57 +00:00
Trevor Parscal
db8f9e675c
Fixed scroll jumping issue in Chrome (at least)
2011-12-12 22:33:49 +00:00
Gabriel Wicke
0ad08b9ae3
Add a README file pointing to the wiki documentation.
2011-12-12 22:30:11 +00:00
Trevor Parscal
7b3ae79451
Added help view with keyboard shortcut info
2011-12-12 22:09:15 +00:00
Gabriel Wicke
a8fa9433c4
Convert quote handling (italic/bold) to a core extension operating on the
...
token stream. This is the first token transformation exercising the
TokenTransformer class as its dispatcher. Template expansions, wiki link
formatting, tag sanitation and extensions should be able to use the same
dispatcher by registering for specific token types.
The parser performance is very slightly improved as the token stream is only
traversed once.
2011-12-12 20:53:14 +00:00
Trevor Parscal
3d7cd9c59c
Made es an explicit global object
2011-12-12 15:31:04 +00:00
Gabriel Wicke
752b0990b2
Refactor parserTests somewhat into a class-like structure, and wire up the
...
TokenTransformer.
2011-12-12 14:03:54 +00:00
Gabriel Wicke
d616f07a79
Don't re-build the wiki tokenizer for each test. This speeds up the full
...
parserTests.js run slightly from 7-8 minutes to about 14 seconds ;)
A few very minor tweaks to the grammar are also thrown into this commit.
2011-12-12 10:47:42 +00:00
Gabriel Wicke
89c5e0cafb
Follow-up to r105859: Add missing new.
2011-12-12 10:09:13 +00:00
Gabriel Wicke
9ebce5839a
Further development of the TokenTransformer framework.
2011-12-12 10:01:47 +00:00
Inez Korczynski
62a589e185
Fix bug: cursor is not visible when you click outside of surface and then click back in the surface at the same offset where cursor was before
2011-12-10 10:33:00 +00:00
Erik Moeller
0759c2879c
Followup r105634; use the label "Edit link" for link inspector
2011-12-10 08:09:42 +00:00
Erik Moeller
03c0532fc7
Swap order of indent/outdent in the toolbar consistent with common
...
word processor implementations.
2011-12-10 07:17:44 +00:00
Inez Korczynski
224fc98449
Temporary fix for insert method in TransactionProcessor
2011-12-10 02:19:21 +00:00
Inez Korczynski
37d3b7ceac
Add calls to 'breakpoint' method in ListButtonTool
2011-12-10 00:06:37 +00:00
Inez Korczynski
4e39b41727
Make ctrl+y execute redo
2011-12-10 00:02:47 +00:00
Inez Korczynski
364a1a94b9
Simple implementation of undo/redo functionality that works.
2011-12-09 23:52:41 +00:00
Trevor Parscal
36159e7597
Fixed inspector positioning (above/below)
2011-12-09 23:33:16 +00:00
Trevor Parscal
dabb992d50
Don't allow control+K to open the inspector unless there's a selection length of > 0
2011-12-09 23:23:43 +00:00
Trevor Parscal
080dfcbc4e
Moved return false to inside the condition for escape key
2011-12-09 23:15:27 +00:00
Trevor Parscal
eb0a82a8af
Added escape keyboard shortcut to close inspector
2011-12-09 23:13:46 +00:00
Trevor Parscal
87fab9b7c6
Made accept button disabled when no change has been made
2011-12-09 23:11:49 +00:00
Trevor Parscal
a698c5dada
Added accept button
...
Made close button not save
2011-12-09 23:04:55 +00:00
Trevor Parscal
3076bf7e95
Fixed clear button - has to clear the input or it will get re-applied
2011-12-09 22:00:29 +00:00
Trevor Parscal
a48d2a5787
* Added shortcut for links (ctrl/cmd + K)
...
* Added title attributes for tools
2011-12-09 21:16:42 +00:00
Trevor Parscal
cb7eb1f033
Fix focus/select bug in link inspector
2011-12-09 21:04:50 +00:00
Trevor Parscal
f09e6e7303
Update child leaf nodes on attribute change, not the parent
2011-12-09 21:00:56 +00:00
Trevor Parscal
ec2bf0b1ce
Update the preview panes when loading different documents
2011-12-09 20:56:49 +00:00
Trevor Parscal
77429444f7
Fixed typo - close not hide
2011-12-09 20:48:38 +00:00
Trevor Parscal
3edaaf390d
Moved refocusing on surface view input up to es.Inspector
2011-12-09 20:46:12 +00:00
Trevor Parscal
ef35fc2be2
Reset location input between opening the link inspector
2011-12-09 20:44:41 +00:00
Trevor Parscal
4b764f7524
Auto-focus on location input when opening the link inspector, auto focus on surface view input when closing
2011-12-09 20:41:40 +00:00
Trevor Parscal
49041942cc
Added support for loading multiple documents in the demo/sandbox
2011-12-09 20:40:26 +00:00
Inez Korczynski
31cd3281ca
Fix onMouseDown event handler for IE8 (still double and triple click does not work)
2011-12-09 20:29:37 +00:00
Trevor Parscal
c416185a0b
Made drop down format menu close when clicked
2011-12-09 19:07:06 +00:00
Trevor Parscal
c1ca3af44b
Moved $form to es.Inspector and added submit -> close handler
2011-12-09 19:01:05 +00:00
Inez Korczynski
4a31a6b265
Fix bug in enumarete method of ListView
2011-12-09 02:07:23 +00:00
Trevor Parscal
2e0a0e0243
Fixed logic for popping up inspector only with selection
2011-12-09 02:00:45 +00:00
Trevor Parscal
f26bec23c9
Removed done button
2011-12-09 01:56:19 +00:00
Trevor Parscal
4ea117d7a6
Added es.Inspector and es.LinkInspector - and a whole bunch of other changes (some are hacks) to get a link inspector working nicely
2011-12-09 01:28:44 +00:00
Inez Korczynski
81b4fc561d
Get rid of console.log
2011-12-08 23:52:35 +00:00
Inez Korczynski
22c461a55b
Implemented indent and outdent functionality.
2011-12-08 23:45:07 +00:00
Inez Korczynski
47e76f21d1
Fix bug in enumerate method in case of mixed list (number and bullet for example)
2011-12-08 23:43:54 +00:00
Inez Korczynski
bc4fc1249c
Fix bug in ListButtilTool - cursor position was adjusted when it shouldn't be
2011-12-08 22:16:05 +00:00
Inez Korczynski
f55bd4b77c
Emit cursor event after listing on unlisting leaf nodes
2011-12-08 22:03:27 +00:00
Gabriel Wicke
80d5067813
Add a TokenTransformer dispatcher class. This class provides subscriptions by
...
token type, and supports asynchronous token expansion (for example for async
template expansion). This code is not yet tested or used. The interface for
token insertion from transformation functions will be expanded as needed.
2011-12-08 14:37:31 +00:00
Gabriel Wicke
c2b69e2486
Clean up newline handling. Emit a NEWLINE token for each
...
non-{comment,pre,nowiki} newline.
2011-12-08 14:34:18 +00:00
Gabriel Wicke
abc2254110
A bit of comment clean-up and wrapping of tree building into try/catch block
...
to actually count failures.
2011-12-08 11:40:59 +00:00
Gabriel Wicke
92fdf99384
Further renaming, this time from pegParser to pegTokenizer.
2011-12-08 10:59:44 +00:00
Gabriel Wicke
76bc477038
Rename html5TokenEmitter to HTML5TreeBuilder, and the contained Tokenizer to
...
TreeBuilder.
2011-12-08 10:37:18 +00:00
Gabriel Wicke
19a1f0850f
Tidy up the grammar a bit.
2011-12-08 10:33:23 +00:00
Inez Korczynski
5a060d42ec
Update selection after unlisting list items
2011-12-08 06:40:36 +00:00
Inez Korczynski
7c7c230595
Get unlisting and listing to work
2011-12-08 04:18:15 +00:00
Inez Korczynski
ed44f13aa0
Revert r105509 and r105507 - taken approach is not gonna work
2011-12-08 03:14:10 +00:00
Inez Korczynski
8fece3a241
Temporary fix for transact method to accept array of transactions.
2011-12-08 01:17:08 +00:00
Inez Korczynski
7da531b59e
Pass array of transactions to transact method if all those transactions are part of one "interaction"
2011-12-08 01:09:52 +00:00
Trevor Parscal
fceda78696
Made preview panes look better
2011-12-08 00:34:05 +00:00
Trevor Parscal
70d5beec71
Changed which elements had user-select: none so that people can copy the wikitext generated by the editor
2011-12-07 23:37:21 +00:00
Trevor Parscal
f9fd3b1db2
Fixed wikitext serailizer - extra newlines should be after the list not the list item
2011-12-07 23:35:11 +00:00
Trevor Parscal
f42915ac0f
Added vertical margin in calculation of menu position
2011-12-07 23:25:13 +00:00
Inez Korczynski
44f8d155b1
When wraping any leaf node in list item make sure to convert it to paragraph first.
2011-12-07 23:16:29 +00:00
Trevor Parscal
8a5ff02cea
Fixed headings, lists and list items - listening to the model now, as we should have been
2011-12-07 23:13:57 +00:00
Inez Korczynski
f226380f36
Add 'term' and 'defintion' to regex (one that is responsible for deleting all listitem styles from an item) in ListItemView.setClasses method.
2011-12-07 23:12:33 +00:00
Inez Korczynski
91f9572e4b
Do not redraw selection if nodes were not added.
2011-12-07 23:05:21 +00:00
Trevor Parscal
22efd982aa
Added extra newline after wikitext list
2011-12-07 23:00:00 +00:00
Inez Korczynski
d06c7efe0b
Refactor class ListButtonTool. Method list now works.
2011-12-07 22:57:17 +00:00
Trevor Parscal
8ef6e4b24e
More adjustments to the style of the history panel
2011-12-07 22:52:20 +00:00
Trevor Parscal
04ecb6796a
Fixed the layout of the sandbox and demo
2011-12-07 22:50:55 +00:00
Trevor Parscal
4e985a111c
Added highlighting for the current index
2011-12-07 22:43:53 +00:00
Trevor Parscal
19c7e874d6
Shortened the names of operations
2011-12-07 22:37:41 +00:00
Neil Kandalgaonkar
c0a02cd6c3
undo almost working, still anomalies in selects (particularly first)
2011-12-07 22:28:07 +00:00
Trevor Parscal
fdeb042a91
Back, by popular demand, the great side-by-side preview!
2011-12-07 21:17:34 +00:00
Inez Korczynski
45d821b2ec
Small cleanup to IndentationButtonTool class
2011-12-07 20:06:04 +00:00
Trevor Parscal
8505b3b566
* Simplified context menu
...
* Added typeOnly option to getIndexOfAnnotation
* Fixed overly-strict checking for annotations in toolbar
2011-12-07 19:16:40 +00:00
Trevor Parscal
51e68abf08
JSHint fixes
2011-12-07 18:29:02 +00:00
Gabriel Wicke
3742d70abd
Add some documentation to syntax flags
2011-12-07 15:54:55 +00:00