Commit Graph

12958 Commits

Author SHA1 Message Date
Nathan Sobo
096a022752 Merge pull request #7950 from atom/ns-destroy-selection-later
When splitting selection into lines, destroy original selection last
2015-07-17 14:18:47 -07:00
Nathan Sobo
375211b278 Merge pull request #7859 from dsandstrom/update-subword-regex
Update subword regex
2015-07-17 14:11:41 -07:00
Nathan Sobo
cd8d158a00 When splitting selection into lines, destroy original selection last
This avoids an assertion failure due to destroying the last selection,
so we can reduce the noise and find code paths that destroy it
incorrectly.
2015-07-17 13:16:12 -07:00
Nathan Sobo
f254c46a62 Keep popping scopes until we find a matching start scope tag 2015-07-17 11:10:09 -07:00
Max Brunsfeld
b24258056d Merge pull request #7858 from svanharmelen/b-fix-indenting
Fix indentation when pasting lines
2015-07-17 09:46:47 -07:00
Varun Ramesh
b660b5ba02 📝 Mark Package class as Extended, so that it appears in the docs. 2015-07-14 15:53:24 -07:00
Ross Allen
16d98c534c Explain dismiss when called programmatically 2015-07-13 14:36:08 -07:00
Ross Allen
580201568f Add docblocks for Notification public functions
* Mark `dismiss` as an "extended" API because its use case is uncommon.
* Mark event handler functions as public because responding to a
  notification being displayed or dismissed is useful.
2015-07-13 14:32:40 -07:00
bolinfest
6efb48dca4 Merge pull request #7863 from atom/bf-no-transform-for-of
Do not run the for/of transform in Babel.
2015-07-13 14:11:29 -07:00
Ivan Zuzak
2d7691c19a Fix config.set scope selector example 2015-07-13 06:51:01 -07:00
Michael Bolin
ad1a110b77 Do not run the for/of transform in Babel.
Because the target environment in Atom supports for/of natively,
do not transpile for/of using Babel. Without this change, the following code:

```
var arr = ['foo', 'bar', 'baz'];
for (var item of arr) console.log(item);
```

would be unnecessarily be transpiled to:

```
var arr = ['foo', 'bar', 'baz'];
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;

try {
  for (var _iterator = arr[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
    var item = _step.value;
    console.log(item);
  }
} catch (err) {
  _didIteratorError = true;
  _iteratorError = err;
} finally {
  try {
    if (!_iteratorNormalCompletion && _iterator['return']) {
      _iterator['return']();
    }
  } finally {
    if (_didIteratorError) {
      throw _iteratorError;
    }
  }
}
```
2015-07-12 21:12:08 -07:00
Darrell Sandstrom
ecf68903af Add non-English characters to subword regex
Fixes #7656
2015-07-12 17:20:46 -07:00
Darrell Sandstrom
c02df26fa7 Add underscore to subword regex
Fixes #7658
2015-07-12 17:03:53 -07:00
Sander van Harmelen
e7de136a27 Small tweaks after review 2015-07-13 00:58:03 +02:00
Sander van Harmelen
195b84a34a Fix indentation when pasting lines
The fix to ignore invisibles () introduces a new bug when pasting lines
from the clipboard (see screencast below).

As the commit takes the content of `@buffer.lineFromRow(bufferRow)` to
test against the `decreaseIndentRegex`, it will actually test the
content of the row the cursor is on instead of the content that is
being pasted. And this (of course) could cause unexpected indentations.
2015-07-12 23:57:13 +02:00
Nathan Sobo
5566d54f58 Don’t update screen lines if DisplayBuffer has been destroyed 2015-07-09 15:44:11 -05:00
Nathan Sobo
c7d99140b9 Merge pull request #7638 from atom-community/jf-dispatch-grammar-used
Add activationHooks + Trigger `{grammar-package-name}:grammar-used` Hook When A text-editor-element's Grammar Is Set
2015-07-09 15:42:31 -05:00
Nathan Sobo
53162160bb Merge pull request #7809 from atom/dh-register-views-earlier
Move view registration for Pane & Gutter related views earlier
2015-07-09 11:54:55 -05:00
Nathan Sobo
4567601ae9 Maintain change counts for debugging purposes
When we have an unexpected display-buffer or tokenized-buffer state,
we can include the change counts to make sure that every change to the
buffer has been processed by display-buffer and tokenized-buffer. If
they haven’t, there’s something wrong with our event ordering. If they
have, there’s a logic error somewhere else.
2015-07-09 02:18:24 -05:00
Nathan Sobo
afa6c9a786 Add invariant assertion about line count to see if we can find a bug
Does the line count ever get out of whack after an update, or is it
happening in some other way?
2015-07-09 01:55:13 -05:00
Nathan Sobo
028acbcae4 Don’t call method to read stack
If the line is undefined, we want the stack to be null.
2015-07-09 01:51:36 -05:00
Joe Fitzgerald
f954aa2732 Rename @hooks >> @ activationHookEmitter 2015-07-09 02:38:06 -04:00
Joe Fitzgerald
b3b046aa66 Add activationHooks To package.json
- Trigger the `{grammar-package-name}:grammar-used` hook when grammar is set for tokenized-buffer
2015-07-09 02:33:17 -04:00
Nathan Sobo
587e898867 Remove assertion since we call this with out of range rows legitimately 2015-07-09 00:28:46 -05:00
Nathan Sobo
de8d1d95d8 Add assertion about removing the last selection 2015-07-09 00:23:11 -05:00
Nathan Sobo
442e75853b Base textNodeLength on textNode.textContent.length
This is how we were computing the length previously. Not sure what the
difference is but I want to keep it the same.
2015-07-09 00:18:42 -05:00
Nathan Sobo
a352a2ca61 Try to avoid exceptions due to undefined lines in TokenizedBuffer 2015-07-09 00:13:06 -05:00
Nathan Sobo
1dd1770b1a Assert the liveness of editor model when attaching editor view 2015-07-09 00:13:05 -05:00
Kevin Sawicki
8bad01ca5b Guard against null item like saveItem/saveItemAs does 2015-07-08 21:11:49 -07:00
Daniel Hengeveld
b13ee1c9cb re-add Pane require 2015-07-08 17:21:39 -07:00
Daniel Hengeveld
afee699137 Move view registration for Pane & Gutter related views earlier
Registering them in pane-container led to packages deserializing
before e.g. Gutter was available.
2015-07-08 17:07:26 -07:00
Max Brunsfeld
c60c00f626 Ignore NaN coordinates passed to workspace.open 2015-07-08 16:50:17 -07:00
Kevin Sawicki
22f7379f32 Handle UNKNOWN open errors 2015-07-08 15:40:43 -07:00
Kevin Sawicki
27a94b4d70 Handle ENOTCONN open errors 2015-07-08 15:40:42 -07:00
Kevin Sawicki
955749b320 Handle EIO open errors 2015-07-08 15:40:42 -07:00
Kevin Sawicki
de4cf38dcc Handle ENXIO open errors 2015-07-08 15:40:42 -07:00
Kevin Sawicki
770dc9821e paneItem -> item for consistency 2015-07-08 15:40:42 -07:00
Kevin Sawicki
8c9ecbaf03 Add custom notification for ESPIPE 2015-07-08 15:40:42 -07:00
Kevin Sawicki
485f4dc3a3 Add custom notification for EINTR 2015-07-08 15:40:42 -07:00
Kevin Sawicki
c3e73bdd26 Add custom notification for EIO 2015-07-08 15:40:42 -07:00
Kevin Sawicki
3e744b0714 Add custom notification for ENOTSUP 2015-07-08 15:40:42 -07:00
Kevin Sawicki
7d88f9ea66 Use item path when error has no path 2015-07-08 15:40:42 -07:00
Nathan Sobo
cac74b9567 Merge pull request #7804 from atom/ns-clip-position
Clip positions in TokenizedBuffer::scopeDescriptorForPosition
2015-07-08 17:36:07 -05:00
Nathan Sobo
b953a11fa5 Clip positions in TokenizedBuffer::scopeDescriptorForPosition 2015-07-08 17:06:05 -05:00
Nathan Sobo
9c63de930e Merge pull request #7798 from atom/ns-undefined-screen-line-metadata
Report extra metadata when screen lines are undefined when clipping
2015-07-08 17:01:29 -05:00
Sander van Harmelen
eaf814e5be Improve auto indenting by removing a hard coded restriction and adding a 3rd regexp
Currently there are only two regexps that can influence the indents.
Those are `increaseIndentPattern` (which tells Atom the indent of next
line should be increased) and `decreaseIndentPattern` (which tells Atom
the indent of the current line should be decreased).

But I found that a couple of languages would need a 3rd regexp in order
to support their use cases. This 3rd regexp should be a mixture of the
existing two so it tells Atom that the indent of the next line should
decrease.

I’ll add a screencast to show a use case for this 3rd regexp which I
would like to call `decreaseNextIndentPattern`.
2015-07-08 20:30:21 +02:00
Nathan Sobo
3e7881f35f Report extra metadata when screen lines are undefined when clipping 2015-07-08 13:29:25 -05:00
Nathan Sobo
a094142a45 Merge pull request #7778 from atom/ns-mb-suppress-line-measurement-exceptions
Suppress line measurement exceptions and gather data to solve them
2015-07-08 12:43:55 -05:00
Nathan Sobo
a13e002079 Use atom.getCurrentWindow() 2015-07-07 20:19:22 -05:00
Nathan Sobo
08fe81844c Guard against IndexSizeError when measuring lines
Refs #7464 #7465 #5997

This will ask the user for the content of the offending line, but only
once so as not to be annoying. Hopefully this and the other data we’re
collecting will help us solve the problem.

Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-07-07 19:33:21 -05:00