Commit Graph

14143 Commits

Author SHA1 Message Date
Kevin Sawicki
cc90d69975 Remove unused variable 2012-10-02 10:46:14 -07:00
Kevin Sawicki
189e3be5ae Wrap around fuzzy finder when at top or bottom 2012-10-02 10:39:35 -07:00
Kevin Sawicki
b7f32036c2 Change editor-selection-change event name to selection-change 2012-10-01 15:44:58 -07:00
Kevin Sawicki
edfd61c702 Remove unneeded class addition 2012-10-01 15:44:58 -07:00
Kevin Sawicki
41cdf130fb Update highlighted line when editor selection changes 2012-10-01 15:44:58 -07:00
Kevin Sawicki
c7361d487f Update cursor line when selection screen range changes 2012-10-01 15:44:58 -07:00
Kevin Sawicki
f2306f444a 💄 2012-10-01 15:44:58 -07:00
Kevin Sawicki
0059accaa4 Access correct editor mini variable 2012-10-01 15:44:58 -07:00
Kevin Sawicki
350e1a22da Add missing space in class name 2012-10-01 15:44:58 -07:00
Corey Johnson
d5b1146b9b Only call gutter.afterAttach once 2012-10-01 15:44:57 -07:00
Kevin Sawicki
e039dab0f6 Don't highlight line in mini editor 2012-10-01 15:44:57 -07:00
Kevin Sawicki
f87b186538 Add highlight to new line html builder 2012-10-01 15:44:57 -07:00
Kevin Sawicki
a4ad5829a5 Disable gutter background highlight on multiline selections 2012-10-01 15:44:57 -07:00
Kevin Sawicki
33abaff747 Don't highlight line if selection is multiline 2012-10-01 15:44:57 -07:00
Kevin Sawicki
d69e08a858 Use screen rows for line highlight 2012-10-01 15:44:57 -07:00
Kevin Sawicki
2de14a701f Set width to 0 on tester element 2012-10-01 15:44:57 -07:00
Corey Johnson & Kevin Sawicki
b1138601fc Use gutter number padding when calculating gutter width 2012-10-01 15:44:57 -07:00
Corey Johnson & Kevin Sawicki
e15694bb41 No longer cache cursorScreenRow in gutter highlighting 2012-10-01 15:44:57 -07:00
Corey Johnson & Kevin Sawicki
2863d92ce3 Use screen position for gutter highlighting 2012-10-01 15:44:57 -07:00
Corey Johnson & Nathan Sobo
2c763a4d48 💄 2012-10-01 15:44:56 -07:00
Kevin Sawicki
be8120e8c6 Add initial support for line highlighting 2012-10-01 15:44:56 -07:00
Will Farrington
12f145f959 Make Buffer#saveAs trigger the buffer-change instead 2012-09-29 23:21:45 -07:00
Will Farrington
fb7f5deb94 first spike of buffer modified indicator 2012-09-29 19:18:42 -07:00
Kevin Sawicki
7506fe7eae Provide default column to getGuideColumn callback 2012-09-29 11:51:32 -07:00
Kevin Sawicki
6412cde7a8 Support guide column callback function
This allows a config function to be registered
in the atom.coffee file to support different wrap
guide columns depending on the type of file being
viewed.
2012-09-29 11:44:05 -07:00
Nathan Sobo
4e49fbec72 TextMate grammars can include other grammars 2012-09-28 17:28:40 -06:00
Nathan Sobo
3a8fe2b24e Spans have a class for each dot-separated portion of their token's scope
Previously, we were rendering every prefix of the dot-separated scope as its own class. So the scope meta.delimiter.method.period.coffee would make a token w/ classes:

class="meta, meta-delimiter, meta-delimiter-method, meta-delimiter-method-period…"

Now we just give the token each piece of the scope as a class:

class="meta delimiter method period coffee"

We lose a bit of meaning, in that a scope selector method.period.coffee would match this element in CSS even though it *wouldn't* in TextMate. But we also gain the behavior where longer prefixes are more specific by naturally producing more specific css selectors. So '.meta.delimiter.method' is always more specific than '.meta.delimiter', whereas '.meta-delimiter-method' ties with '.meta-delimiter'. 

If prefix ambiguities become a problem later we may need to revisit this approach, but I think it's good enough for now.
2012-09-28 17:00:31 -06:00
Nathan Sobo
5ad6c67e07 Round alpha channel in TextMate theme rgba colors to 2-decimal places 2012-09-28 16:43:02 -06:00
Nathan Sobo
4ba5ccb0fa Properly translate hex colors from TextMate themes to rgba (divide alpha by 255) 2012-09-28 14:06:10 -06:00
Nathan Sobo
7c9f50209f HTML escape line text 2012-09-28 13:46:15 -06:00
Nathan Sobo
3ebd7cfef1 Output nested spans so that scope selector specificity translates better to CSS
The tokenizer emits individual tokens with arrays of scopes, rather than a more tree-like structure. It's debatable whether we want to emit scope trees rather than token streams in general, though that might complicate things like line wrapping. For now, we're reconstructing the tree during rendering based on information that's implicit in the tokens.
2012-09-28 13:36:43 -06:00
Corey Johnson & Nathan Sobo
bebfaed69b wip: creating token spans 2012-09-28 13:36:43 -06:00
Corey Johnson & Nathan Sobo
875852d1de logCursorScope works properly 2012-09-28 13:36:43 -06:00
Kevin Sawicki
f2cc859a4c Always store cursor row as a buffer row
Previously the buffer vs. screen row difference
was causing the highlight to not always be present
2012-09-28 11:52:40 -07:00
Kevin Sawicki
6b8963781b Add cursor class if row is already selected 2012-09-28 11:30:56 -07:00
Kevin Sawicki
02768fa68d Refer to instance cursorRow variable 2012-09-28 10:30:13 -07:00
Kevin Sawicki
c2417bfc46 Initialize firstScreenRow to -1 2012-09-28 09:54:30 -07:00
Kevin Sawicki
02fa815459 Highlight the line number of the current cursor row 2012-09-28 09:52:34 -07:00
Corey Johnson & Nathan Sobo
2722fe7d72 Rename stack to ruleStack 2012-09-28 09:41:04 -07:00
Corey Johnson & Nathan Sobo
3a66aab59d getLineTokens must clone the ruleStack 2012-09-28 09:40:06 -07:00
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
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
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
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
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