Previously insert newline above would use the current line's
indent level which could be the less than the proper level if the
newline should be further indented based on the increase indent
pattern being used.
Previously Editor::insertNewlineAbove would put the cursor
at position 0 if there were empty lines above the current line
regarding of the indent level of the cursor's current line.
Now the indent level of the current line is always used for the newline
above when the editor.autoIndent config is enabled.
Previously there were 2 top-level describes:
"with an initial line option"
"with default options"
The default options describe contained almost all the specs, so this
commit just creates the editor again in a single spec about the
initialLine option and peels off a layer.
This commit introduces dependency on a new npm called
[reactionary](https://github.com/atom/reactionary). It will serve as a
*much* lighter weight model framework to provide the reactive features
of telepath without the replication logic.
Specs are still failing for panes and workspace. I plan to just roll
forward and remove the telepath dependency from them as well.
Previously it was only cleared when changing the position explicitly
and not as a result of the underlying marker changing such as during a
text insertion.
Closes#1295
I added some features to telepath that make it easier to test model
objects.
- First, you can now call replicate on any telepath document/model
object. The entire underlying database will be replicated and you will
be handed the equivalent of that object in the replicated world. This
is easier than forcing you to attach the model to the window state
and then call replicate there. However, remember that the entire
window state is actually being replicated so any references the model
has will also be replicated.
- Second, you can also replicate orphaned objects. Most objects in these
specs we're converting are orphans because there's no reason to attach
them to the root document just to test them in isolation.