Commit Graph

3887 Commits

Author SHA1 Message Date
Kevin Sawicki
4c80b1e4ef 💄 2012-11-02 15:33:07 -07:00
Kevin Sawicki
b2b00a7b39 Update branch text on save 2012-11-02 15:33:07 -07:00
Kevin Sawicki
e4fb12a398 Add octicon to branch label 2012-11-02 15:31:11 -07:00
Kevin Sawicki
88cdff9d26 Return full HEAD when unshortened 2012-11-02 15:31:11 -07:00
Kevin Sawicki
d66315dd21 Abbreviate SHA-1s when HEAD is detached 2012-11-02 15:31:10 -07:00
Kevin Sawicki
8831c2a2dc Return SHA-1 when HEAD is detached 2012-11-02 15:31:10 -07:00
Kevin Sawicki
14302c491d Show current branch in status bar 2012-11-02 15:31:10 -07:00
Kevin Sawicki
c425b58093 Spec out more $git methods 2012-11-02 15:30:06 -07:00
Kevin Sawicki
1b42bd9662 Add $git.isRepository 2012-11-02 15:30:06 -07:00
Kevin Sawicki
55063d61ec Add libgit2 to libraries 2012-11-02 15:30:06 -07:00
Kevin Sawicki
17c3621853 Add native Git v8 extension 2012-11-02 15:30:06 -07:00
Kevin Sawicki
6eda70c56c Add libgit2 2012-11-02 15:30:06 -07:00
Nathan Sobo
3fbf5653c4 Update the status bar asynchronously on cursor move / buffer change
This keeps it out of the synchronous path from pressing a key to seeing it inserted on screen.
2012-11-02 15:46:33 -06:00
Nathan Sobo
9bca73816c Only insert in the benchmark. Keeps it pure (but the line gets long) 2012-11-02 15:43:05 -06:00
Nathan Sobo
adbcb9f49e Only consider BindingSets with a binding for first keystroke of event
The keymap was slow because it would find the binding sets with matching selectors for every ancestor of every keydown event. The problem was, it was considering a lot of binding sets that didn't even have a binding for the event in question. Now we index all binding sets on what bindings they contain, and filter them by that first. Rejecting an event that has no bindings is almost instantaneous now.
2012-11-02 14:13:03 -06:00
Nathan Sobo
2c211ba504 Remove ability to associate a binding set with a function
This was cool, but it's really hard to optimize the keymap with this feature because we never know if a keystroke will match against a binding set with a function, which will force us to always consider this binding set against every key event.
2012-11-02 13:39:21 -06:00
Nathan Sobo
0c3498d29f Cleanup/optimize Keymap#keystrokeStringForEvent 2012-11-02 13:25:33 -06:00
Nathan Sobo
eebd312af9 Add Keymap benchmark for handling an event with no binding 2012-11-02 13:23:45 -06:00
Nathan Sobo
045cdda41d Fix cursor line highlight style 2012-11-02 12:16:03 -06:00
Nathan Sobo
4539977800 I'm worried overflow:hidden on lines is screwing rendering up
It's hard to reproduce, so I'm going to disable it and see if I see any more artifacts.
2012-11-02 12:12:02 -06:00
Corey Johnson
3f2f067fa7 bundles directory no longer used 2012-11-01 17:52:34 -07:00
Corey Johnson
83329567b9 Use the file's first line to determine the grammar.
Only when it cannot be determined by the file's extension fails. Fixes #75
2012-11-01 17:47:31 -07:00
Corey Johnson
41291021c4 Use entire filePath to determine its grammar 2012-11-01 17:47:31 -07:00
Nathan Sobo
c6075b0fa6 Optimize highlighting of the current line in the gutter 2012-11-01 17:37:50 -06:00
Nathan Sobo
1d838e920c Cache the maxScreenLineLength
Computing this requires a full scan of all screen lines. Here I keep it updated as I add / remove lines. If I remove the line with the max length, I am forced to scan all of them again. But this happens relatively rarely. Usually I only need to scan the lines I'm replacing and inserting.
2012-11-01 17:37:50 -06:00
Corey Johnson
abfe3b93cc Add css styling to CommandPanel errors 2012-11-01 15:56:24 -07:00
Corey Johnson
9afda88c8c CommandPanel shows command errors 2012-11-01 15:56:24 -07:00
Corey Johnson
79a7d35798 CommandPanel commands have optional error messages 2012-11-01 15:56:23 -07:00
Corey Johnson
837005176c animation 💄 2012-11-01 15:56:23 -07:00
Corey Johnson
933c3415c9 Make sure elements with .error classes are shown as red 2012-11-01 15:56:23 -07:00
Corey Johnson
e56ac29b15 Clean up test for escaped characters in command panel 2012-11-01 15:56:22 -07:00
Corey Johnson
8681898a42 CommandPanel escapes characters with a backslash in front of them 2012-11-01 15:56:22 -07:00
Corey Johnson
eed474435d 💄 2012-11-01 15:56:22 -07:00
Corey Johnson & Nathan Sobo
c88e9f95ac s and x commands operate on the entire buffer if no address specified.
(and there is no selection)
2012-11-01 15:56:22 -07:00
Corey Johnson
7d6539068b if no address if specified for the first command, the address range become the entire file 2012-11-01 15:56:21 -07:00
Nathan Sobo
66518a3c67 Don't have autocompleter rebuild its word list on every keystroke 2012-11-01 16:04:42 -06:00
Nathan Sobo
ea87c55db5 Don't clear the selection if it's empty
This avoids emitting selection change events when they aren't really needed. This extra event was causing the highlighted line to be updated when it didn't need to be.
2012-11-01 14:50:51 -06:00
Nathan Sobo
9cbcc9e7e3 Eliminate another unnecessary call to highlightCursorLine 2012-11-01 14:43:43 -06:00
Nathan Sobo
a0770c41db Avoid some calls to highlightCursorLine 2012-11-01 14:33:34 -06:00
Nathan Sobo
aa3405cb2b Cache the memory contents of Buffer for better performance 2012-11-01 14:09:58 -06:00
Nathan Sobo
2efc91aad1 Optimize highlightCursorLine by using cached element references 2012-11-01 13:51:22 -06:00
Nathan Sobo
5249e5e69c Fix spec failures caused by editor css changes 2012-11-01 12:25:33 -06:00
Nathan Sobo
42d0c53a60 Use min-width on rendered lines to replace js logic w/ CSS 2012-11-01 11:49:50 -06:00
Nathan Sobo
5f9e248aec Clip the screen position after translating it from a buffer position
This is instead of applying redundant clipping logic directly within the translation method.
2012-11-01 07:15:51 -06:00
Nathan Sobo
085adb72ce Pass translation options through when setting buffer position 2012-11-01 07:15:51 -06:00
Nathan Sobo
00bcb7a1b9 Make position translation understand hard tabs 2012-11-01 07:15:51 -06:00
Nathan Sobo
df1a7e1866 Make gutter rendering specs pass 2012-11-01 07:15:51 -06:00
Nathan Sobo
d21d079bb7 Delete specs for old version of LineMap and ScreenLine
The specs on `DisplayBuffer` and `Editor` cover the behavior of these lower-level objects in a more robust way.
2012-11-01 07:15:51 -06:00
Nathan Sobo
3d12269315 DisplayBuffer specs passing with greatly simplified LineMap 2012-11-01 07:15:51 -06:00
Nathan Sobo
8ae08dc21d I don't think we need this line anymore 2012-11-01 07:15:50 -06:00