Commit Graph

3444 Commits

Author SHA1 Message Date
Corey Johnson & Nathan Sobo
ae4db9d238 💄 2012-09-28 09:36:37 -07:00
Corey Johnson & Nathan Sobo
66ac4503a7 Return empty token array for zero-length matches 2012-09-28 09:31:15 -07:00
Corey Johnson & Nathan Sobo
255e58b4f8 Remove unnecessary Array coercion 2012-09-28 09:06:41 -07:00
Corey Johnson & Nathan Sobo
82cecbf042 Add test for situation where we infinitely looped 2012-09-28 09:05:51 -07:00
Kevin Sawicki
4ccaa6f714 Terminate when tokens end position is undefined
This ensures the position is advanced for zero-length
matches and only terminates when the end position for
the tokens is no longer valid.
2012-09-27 19:07:08 -07:00
Nathan Sobo
d37a0dd916 Cache repeated regexp matches against the same string for another 5-10% boost
This is tricky… basically when the scanner is matching across the same string repeatedly, it can recycle previous results if the following conditions are true:

- The string is the same
- We're matching at a position >= the last position
- The result for the regex is a failure or starts >= the current start position
2012-09-27 15:53:02 -06:00
Nathan Sobo
840790645b Release OnigScanner's regexes in the destructor 2012-09-27 15:53:01 -06:00
Kevin Sawicki
758812bd2b Add hover color that is the same as the selected color 2012-09-27 13:46:31 -07:00
Kevin Sawicki
b8926e7e28 Add spec for markdown preview detachment 2012-09-27 13:21:13 -07:00
Kevin Sawicki
e202904b78 Don't update HTML if view has no parent 2012-09-27 13:21:02 -07:00
Kevin Sawicki
d8011fe853 Add initial markdown preview extension
Uses the GitHub Markdown API to render the current
editor contents for .md and .markdown files.
2012-09-27 13:07:22 -07:00
Kevin Sawicki
71a3842c12 Disable text selection in fuzzy finder list
Mirror the style in the tree view where the
cursor indicates text selection is not possible
2012-09-27 13:07:22 -07:00
Corey Johnson
d9f1303523 add .atom/bundles directory 2012-09-27 12:15:45 -07:00
Nathan Sobo
32e36700ae Add native OnigScanner, which handles matching multiple regexes on a line
This cuts the tokenization time from 250ms to 70ms by avoiding js <-> native overhead
2012-09-27 13:04:14 -06:00
Corey Johnson
e9e0e24ce3 make cibuild work on updated build machine 2012-09-27 11:38:15 -07:00
Kevin Sawicki
d8de5c5524 💄 2012-09-27 08:35:29 -07:00
Kevin Sawicki
709f3f8351 Use interpolated string for setting left offset 2012-09-26 17:06:02 -07:00
Kevin Sawicki
e5310ae7b5 Revert "Append wrap guide to editor element"
This reverts commit 5301b29649.

This caused the wrap guide not to scroll correctly when lines
scroll.
2012-09-26 17:06:02 -07:00
Corey Johnson
871a230b03 Make $native.exists a tiny bit faster 2012-09-26 16:30:22 -07:00
Corey Johnson
5d70f416fc Remove unused regex test from require.js 2012-09-26 16:30:22 -07:00
Corey Johnson
2095955e79 No longer needed 2012-09-26 16:30:21 -07:00
Kevin Sawicki
5301b29649 Append wrap guide to editor element
This prevents unneeded horizontal scrollbars when
the wrap guide exceeds the buffer size and the
buffer doesn't have any 80 character or greater lines
2012-09-26 16:26:57 -07:00
Corey Johnson
f95e67d8cd Triple click selects entire line (including \n). Fixes #44 2012-09-26 13:53:51 -07:00
Corey Johnson
282da8b975 Output the syntax scope of the cursor by pressing cmd-alt-p 2012-09-26 13:53:51 -07:00
Nathan Sobo
2dbba203a0 Allow begin/end rules with back-references to be nested 2012-09-26 12:10:00 -06:00
Nathan Sobo
9c8d897317 Start on a spec for nested begin/end rule w/ back-references in the end rule 2012-09-26 09:59:15 -06:00
Nathan Sobo
2d38650265 Linguistic 💄 2012-09-26 09:57:35 -06:00
Nathan Sobo
1f8ce50261 Memoize Rule.prototype.getIncludedPatterns to shave a cheap 2% off profile 2012-09-26 09:57:35 -06:00
Corey Johnson
8328875021 Regex searches are case-sensitive if any letter is capitalized.
Fixes bug introduced in commit aa3f674948
2012-09-25 18:35:44 -07:00
Corey Johnson
dd81e69bfb Merge branch 'master' of https://github.com/github/atom 2012-09-25 17:24:23 -07:00
Corey Johnson
aa3f674948 Regex's in the command panel are treated as case-insensitive if there are no non-escaped letters in the pattern
/hello becomes /hello/i
/he\Slo becomes /he\Slo/i
/Hello/i becomes /Hello/i
/Hello/ becomes /Hello/
2012-09-25 17:21:35 -07:00
Nathan Sobo
1d9cc53e7f RootView focuses the *first* focusable child.
This prevents an issue where the fuzzy finder's mini-editor would get focused again when the fuzzy finder was being hidden.
2012-09-25 17:38:48 -06:00
Corey Johnson
533ad84d03 Buffer.scanInRange can do a case-insensitive search 2012-09-25 16:30:44 -07:00
Nathan Sobo
1383a94d60 Second attempt: don't blow up when commenting in files w/ no language bundle 2012-09-25 17:14:25 -06:00
Corey Johnson
00f7796e93 Load local bundles from ~/.atom/bundles 2012-09-25 15:40:12 -07:00
Corey Johnson & Nathan Sobo
685cbc3575 When focused, RootView retains focus itself if it has no focusable children 2012-09-25 15:11:07 -06:00
Nathan Sobo
5f253d78e9 Optimization: Use absolute positioning instead of flexbox in editor
Flexbox was causing layouts and repaints to cover the entire scroll view instead of just the edited line. This cuts down on DOM manipulation cost significantly.
2012-09-25 14:58:31 -06:00
Corey Johnson
a6352497b9 Merge branch 'master' of https://github.com/github/atom 2012-09-25 13:22:24 -07:00
Corey Johnson
d13796074b RootView passes focus to a child element with a tabindex of -1 (if one exists) 2012-09-25 13:22:06 -07:00
Corey Johnson
aa7325b355 RootView (instead of Window) handles opening an empty buffer if no path is given. 2012-09-25 12:40:19 -07:00
Nathan Sobo
b4b34b0489 Don't explode on meta-/ if there isn't a valid comment regex 2012-09-25 13:27:46 -06:00
Nathan Sobo
b00d0bacd9 When uncommenting multiple lines, don't raise an error if a line isn't commented
Previously, we were assuming that when uncommenting, that every line would match the comment regex. But this might not be the case. If the first line in the selection is commented but some subsequent lines aren't, they won't match the comment regex. So this commit guards for that case.
2012-09-25 13:19:59 -06:00
Nathan Sobo
d3df0a305b Use <pre> tag for lines instead of using white-space: pre css property
One less CSS rule, since the whitespace behavior of a `pre` tag is already baked into the browser's default styles.
2012-09-25 13:09:12 -06:00
Nathan Sobo
e8e9abc0b8 Universal selectors degrade performance, and I can't figure what this did 2012-09-25 12:51:22 -06:00
Nathan Sobo
df98c3e9d7 Add "Window" menu 2012-09-25 12:03:26 -06:00
Corey Johnson
cf48665a03 Open Atom src when run via Xcode 2012-09-25 09:57:48 -07:00
Corey Johnson
1d25ff191b More 💄 2012-09-25 09:26:11 -07:00
Corey Johnson
b1d466f51a 💄 2012-09-25 09:24:50 -07:00
Corey Johnson
8b3e195103 Updated 'How to install Atom' 2012-09-25 09:22:24 -07:00
Nathan Sobo
bea3c88ea1 In FocusNextWindow, require that window is visible before trying to focus it 2012-09-24 21:18:44 -06:00