Corey Johnson & Nathan Sobo
a72d0399f7
Add Editor.setShowInvisibles and remove showInvisibles from EditSession
2012-10-18 14:10:36 -07:00
Corey Johnson & Nathan Sobo
b33bbbfc0d
Handle invisible character rendering when building HTML for lines.
...
Not during creation of tokens.
2012-10-18 11:43:17 -07:00
Corey Johnson
c9db576a1c
Fix specs
2012-10-18 11:33:19 -07:00
Corey Johnson
22e009a999
Set invisible values for spaces and tabs when initial tokenization occurs.
...
Also break whitespace into its own token just like tabs.
2012-10-18 11:33:19 -07:00
Corey Johnson
4478bbca9a
When project.showInvisibles is true; spaces, tabs and newlines are visible
2012-10-18 11:31:39 -07:00
Corey Johnson
e2a917fcf3
Change tabText to tabLength
2012-10-18 11:31:39 -07:00
Corey Johnson
6171ea33e1
Add support for TextMate grammars with newlines in their regexes
2012-10-16 15:58:11 -07:00
Kevin Sawicki
38802ba287
Use javscript.tmbundle commit 2f95d9ae92
...
The commit after this one breaks syntax highlighting
for the lines after a single line comment
2012-10-12 11:34:44 -07:00
Kevin Sawicki
2aa3667586
Update expected var selector to storage.modifier.js
...
This changed in the underlying JavaScript bundle
2012-10-09 17:49:53 -07:00
Kevin Sawicki
1694f74bcb
Expect var to be a storage.modifier.js type in spec
2012-10-09 17:46:26 -07:00
Nathan Sobo
9906dd41b4
Give editor-specific events the "editor:" prefix
2012-10-05 10:07:37 -10: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
2bea67057b
Add spec for line highlight after backspace
2012-10-01 15:44:58 -07:00
Kevin Sawicki
f2306f444a
💄
2012-10-01 15:44:58 -07:00
Corey Johnson
887720e4de
[fail] added failing gutter spec
...
When you remove a newline with backspace, the background on the gutter line number isn't highlighted. This is to help @kevinsawicki debug the problem.
2012-10-01 15:44:58 -07:00
Corey Johnson
9361b0717c
Give gutter line highlighting its own describe
2012-10-01 15:44:58 -07:00
Kevin Sawicki
e039dab0f6
Don't highlight line in mini editor
2012-10-01 15:44:57 -07:00
Kevin Sawicki
a03512fd90
Add line number padding to expected width
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
12a30873cf
💄
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
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
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
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
Kevin Sawicki
02fa815459
Highlight the line number of the current cursor row
2012-09-28 09:52:34 -07:00
Corey Johnson
f95e67d8cd
Triple click selects entire line (including \n). Fixes #44
2012-09-26 13:53:51 -07: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
Kevin Sawicki
47ed19f851
Substract scroll top when paging up
2012-09-19 08:52:05 -07:00
Kevin Sawicki
9ba3b74a9d
Add support for Page Up and Page Down keys
2012-09-18 19:53:23 -07:00
Nathan Sobo
7937380eed
Projects w/ EditSessions for now-deleted files can now be reloaded w/out error
2012-09-18 13:30:16 -06:00
Corey Johnson
fb039276de
un-f
2012-09-04 10:52:34 -07:00
Corey Johnson
3b9310ebe4
Gutter width is sized to fit the width of the largest line number
2012-08-31 13:33:59 -07:00
Corey Johnson & Nathan Sobo
44db540528
All specs pass
2012-08-30 17:12:52 -06:00
Corey Johnson & Nathan Sobo
b073f3e2b1
Make some assertions fuzzy to deal with sub-pixel issues. Not totally there yet
2012-08-30 16:13:13 -06:00
Nathan Sobo
d5ffdb153a
Remove $native.saveDialog. It's replaced with atom.showSaveDialog
2012-08-30 11:08:55 -06:00
Nathan Sobo
558ffd9cbe
Spy on atom.confirm instead of $native.alert in specs
2012-08-29 20:50:47 -05:00
Corey Johnson & Nathan Sobo
12b06ddf0c
Get spec suite running (lots of failures)
2012-08-27 17:36:36 -05:00
Nathan Sobo
c2c8724ad0
Initial commit
2012-08-10 13:32:19 -06:00
Corey Johnson & Nathan Sobo
1a243adfcf
All specs pass w/ TextMateGrammar for tokenization (auto-indent disabled)
2012-08-03 12:00:05 -06:00
Nathan Sobo
6de055aa1c
Lines aren't taller when they contain an Inconsolata em dash (–) character
2012-08-01 17:04:33 -06:00
Corey Johnson & Nathan Sobo
9622d6f9b3
Rename un/foldScopeContainingBufferRow to un/foldBufferRow.
...
Scope containing buffer row was a misnomer. Waiting until I implement the repeat folding feature before considering a better name.
2012-07-30 10:25:53 -07:00
Corey Johnson & Nathan Sobo
75f0438f6a
Rename fold/unfold to foldCurrentRow/unfoldCurrentRow
2012-07-30 09:58:15 -07:00
Corey Johnson
7ff31d1ad7
Remove toggleFold and replace with fold
2012-07-27 13:46:50 -07:00
Corey Johnson
20ff70115f
Fix bug in failing editor spec
2012-07-27 11:11:45 -07:00