Nathan Sobo
158315ffaa
Always place cursor at end of selection after inserting text
2012-04-05 17:22:16 -06:00
Corey Johnson & Nathan Sobo
84ba78c55d
Tab characters render as atomic tokens containing spaces
2012-04-05 15:22:57 -06:00
Corey Johnson & Nathan Sobo
4550f017c3
add fixture file with tabs
2012-04-05 13:13:32 -07:00
Nathan Sobo
77366b5497
Remove unused editor bounds methods
2012-04-05 09:38:50 -06:00
Nathan Sobo
845bc8fde4
Merge branch 'master' of github.com:github/atom
2012-04-04 18:27:40 -06:00
Nathan Sobo
1b848307d4
Restore selections on redo
2012-04-04 18:27:34 -06:00
Nathan Sobo
cbeb351de4
Restore selections after undo
...
This only restores changes made via the CompositeSelection… this makes sense because this is the only way to make changes interactively. Any other changes are made via the api or a command line and should not modify selections when they are undone. Still need to test restoration after redo.
2012-04-04 18:04:32 -06:00
Nathan Sobo
5def158584
UndoManager's batch methods take optional arrays of ranges for restoring the selection
2012-04-04 17:07:52 -06:00
Corey Johnson
2489e19bb7
CompositeCursor.addCursor takes an optional screenPosition argument
2012-04-04 14:08:30 -07:00
Corey Johnson & Nathan Sobo
48b4008cab
Changes made with multiple cursors are undone/redone in parallel
2012-04-04 14:21:03 -06:00
Corey Johnson
2e9bef04a9
A buffer with no path sets document.title to 'untitled'
2012-04-04 11:10:20 -07:00
Nathan Sobo
8d05802290
Redesign commands around multiple selections
...
Every command returns an array of buffer ranges to select from its execute method. The composite command loops through each current selection with each command, then sets the new selection to the aggregated buffer ranges returned by all commands at that step.
2012-04-04 12:09:33 -06:00
Nathan Sobo
abff6cf387
Add spec for global substitution in multiple selections
2012-04-04 11:22:49 -06:00
Nathan Sobo
4abf41e173
Merge branch 'master' of github.com:github/atom
2012-04-04 11:09:55 -06:00
Nathan Sobo
92cc23a9bb
Substitutions work with multiple selections
...
The `execute` method on commands now has a second range parameter. The composite command loops through all selected ranges and calls execute on each subcommand for each range. Still need to update the `.` address to work with the new scheme.
2012-04-04 11:09:30 -06:00
Corey Johnson
6dc4d9bb05
Don't let atom spec bind default keys again
2012-04-03 17:21:13 -07:00
Corey Johnson
37a9d88b48
Spec helper uses window's keymap
2012-04-03 17:20:48 -07:00
Corey Johnson
2465372bd4
Multi-cursor scrolling is based on the last created cursor
2012-04-03 16:34:21 -07:00
Corey Johnson
d016cc27d3
Move autoScrolling methods from cursor to editor
...
Scroll methods are now Editor.scrollTo(), Editor.scrollHorizontally() and Editor.scrollVertically()
Editor.scrollTo() can only be called once per runloop
2012-04-03 16:12:04 -07:00
Corey Johnson
bd20d34132
Only one visible cursor causes the editor to scroll
2012-04-03 15:46:28 -07:00
Corey Johnson
a372a2b411
Add Editor.bounds() and Editor.screenPositionInBounds()
2012-04-03 15:36:25 -07:00
Nathan Sobo
846846abe8
Keymap normalizes key patterns so modifier keys can be listed in a random order.
2012-04-03 15:51:53 -06:00
Nathan Sobo
68bd79f8c2
Max line length is preserved when a new buffer is assigned to an editor.
2012-04-03 15:33:27 -06:00
Nathan Sobo
fb915f9c1c
💄
2012-04-03 15:24:11 -06:00
Nathan Sobo
3a8c444e1f
Merge branch 'master' of github.com:github/atom
2012-04-03 15:01:34 -06:00
Nathan Sobo
d521dab2cf
Horizontal scrollbar is always visible, and clicking scrollbars doesn't move cursor.
...
The editor is divided into gutter and scroller. The gutter is scrolled to the correct vertical position whenever the lines are scrolled inside of scroller.
2012-04-03 15:01:28 -06:00
Corey Johnson
1efb712fd3
Rename App.coffee to Atom.coffee. This also required moving src/atom,spec/atom to src/app,spec/app
2012-04-03 10:33:24 -07:00
Nathan Sobo
c5004b71b1
Selections are only cleared when cursor is explicitly moved
...
This allows multiple selections to be modified without changes to an earlier selection clearing later selections. It means we can remove the `modifySelections` method from `CompositeSelection` and just call methods on selections in a loop.
2012-04-03 11:27:49 -06:00
Corey Johnson
b4cfd7fc85
Selection and Cursor use Anchor to hold their buffer and screen positions
2012-04-03 08:58:25 -07:00
Corey Johnson
edbd378879
All keybindings are stored in the src/keybindings folder now
2012-04-02 08:57:08 -07:00
Corey Johnson
23fae4c919
Rename mentions of url to path
2012-03-30 15:52:19 -07:00
Corey Johnson
230f40bf3e
Window title is set to active editor's buffer path.
2012-03-30 15:15:20 -07:00
Corey Johnson
abb585fbf6
Editor emits buffer-changed-event
2012-03-30 15:14:59 -07:00
Corey Johnson
001d866bec
Event names are present tense, so buffer emits 'path-change'
2012-03-30 11:26:34 -07:00
Corey Johnson
90242a787f
Use Buffer.getPath and Buffer.setPath(path)
2012-03-30 11:20:17 -07:00
Corey Johnson
551f09dce6
Buffer emits a 'path-changed' event when its path changes
2012-03-30 11:13:58 -07:00
Corey Johnson
5b7a02534c
Made test run against empty project
2012-03-30 10:22:54 -07:00
Corey Johnson
dc7edc22cf
Loading root view with no url opens an empty buffer
2012-03-30 09:42:02 -07:00
Nathan Sobo
b9cec3cd94
Editor handles delete-to-end-of-word, plus alt-d and alt-delete bindings for it
2012-03-29 15:32:37 -07:00
Nathan Sobo
fc76bed81e
x/$/ places cursors at end of lines in current selection
...
Editor addSelectionForBufferRange no longer attempts to recycle an existing empty selection, because this was interfering with x selecting zero-width matches. It always adds a new selection, and tools must take care to use it correctly.
2012-03-29 11:46:56 -07:00
Nathan Sobo
722b685b2e
Editor handles backspace-to-beginning-of-word
2012-03-29 11:33:15 -07:00
Nathan Sobo
e56ced8f3b
Merge branch 'master' of github.com:github/atom
2012-03-29 11:12:23 -07:00
Corey Johnson
d739ebddbc
Add tests to traverseRegexMatchesInRange
2012-03-29 11:01:26 -07:00
Corey Johnson & Nathan Sobo
90ebbe80e6
Add select-to-end-of-word and select-to-beginning-of-word
2012-03-29 09:53:18 -07:00
Nathan Sobo
b053f42880
Merge branch 'master' of github.com:github/atom
2012-03-28 18:08:14 -07:00
Nathan Sobo
a27b54b21b
Up/down in command panel navigates command history.
2012-03-28 18:08:00 -07:00
Corey Johnson & Nathan Sobo
88c4705f8a
Add move-to-end-of-word and move-to-beginning-of-word.
...
Buffer.traverseRegexMatchesInRange matches text that at end of range, even if the match could have exceeded end of the range.
2012-03-28 17:39:03 -07:00
Nathan Sobo
a4c25dc678
Flash red when entering a malformed command in the command panel
2012-03-28 16:11:44 -07:00
Nathan Sobo
e0ed462c6e
Merge branch 'master' of github.com:github/atom
2012-03-28 15:42:29 -07:00
Nathan Sobo
7ea3b2d75d
Regex searches wrap around to the beginning of the buffer
2012-03-28 15:42:09 -07:00