Antonio Scandurra
8cd451f3ca
Implement move_line_up and move_line_down
...
This does not restore folds yet.
2021-05-03 11:37:36 +02:00
Antonio Scandurra
51ae37e578
Bind ctrl-h to backspace
2021-04-30 10:45:58 +02:00
Antonio Scandurra
0e432ed889
Merge pull request #32 from zed-industries/editor-keybindings
...
Initial editor keybindings
2021-04-30 09:31:32 +02:00
Max Brunsfeld
9b0cc0a032
Avoid cancelling ::open_entry task in FileFinder
2021-04-29 15:03:46 -07:00
Max Brunsfeld and Nathan Sobo
5826a976ef
Return a future from WorkspaceView::open_paths
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-04-29 14:55:28 -07:00
Max Brunsfeld
b126938af7
In file finder, handle single-file worktrees & multiple matches w/ same rel path
2021-04-29 12:44:51 -07:00
Antonio Scandurra
d19fd77f91
💄
2021-04-29 10:38:11 +02:00
Antonio Scandurra
283c734c91
Implement {move_to,select_to,delete_to}_{beginning,end}_of_line
2021-04-29 10:38:11 +02:00
Antonio Scandurra
0aacf858ce
Don't rely on Range::is_empty to check for selection emptiness
...
This method returns true when `start > end`, so our `backspace` and
`delete` implementations were subtly wrong because they always deleted
one extra character for reversed selections.
2021-04-29 10:38:11 +02:00
Antonio Scandurra
fdefd32de0
Implement duplicate_line for buffer
2021-04-29 10:38:11 +02:00
Antonio Scandurra
5d28fb871f
Extract a Selection::buffer_row_range method
2021-04-29 10:38:11 +02:00
Antonio Scandurra
2a0a2ee636
Fix delete_line for non-empty selections that end at the start of line
2021-04-29 10:38:11 +02:00
Antonio Scandurra
618cb8ac18
Bind also ctrl-d to buffer:delete
2021-04-29 10:38:11 +02:00
Antonio Scandurra
cee9509127
Fix delete_line test
2021-04-29 10:38:11 +02:00
Antonio Scandurra
ccd244bac7
WIP: start on a test for delete_line
...
Discovered a bug that's highlighted by the test that causes selections
to not be in the right order.
2021-04-29 10:38:11 +02:00
Antonio Scandurra
834602ef67
Implement delete_line for buffer
...
This still needs unit tests.
2021-04-29 10:38:11 +02:00
Antonio Scandurra
21442bd2b7
Don't propagate action when selecting up/down in single-line editors
2021-04-29 10:38:11 +02:00
Antonio Scandurra
c524cc4d61
Implement select_to_beginning and select_to_end for buffer
2021-04-29 10:38:11 +02:00
Antonio Scandurra
45452bbb3a
Implement move_to_beginning and move_to_end for buffer
2021-04-29 10:38:11 +02:00
Antonio Scandurra
b7c30eba30
Implemente delete for buffer
2021-04-29 10:38:11 +02:00
Antonio Scandurra
324a6ff7ae
Implement select_all for buffer
2021-04-29 10:38:11 +02:00
Max Brunsfeld
88b88a8067
Start work on opening files
2021-04-28 17:46:27 -07:00
Nathan Sobo
e423a49984
Traverse symlinks when populating directories
2021-04-28 14:16:54 -06:00
Max Brunsfeld and Antonio Scandurra
21cfb75a73
Flush redundant fs events in worktree test
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-04-28 12:42:39 -07:00
Nathan Sobo
53013b3ab7
Merge remote-tracking branch 'origin/master' into close-tabs
2021-04-28 13:15:00 -06:00
Nathan Sobo and Antonio Scandurra
b5463dcd1e
Close tabs when X is clicked
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-04-28 10:00:45 -06:00
Nathan Sobo and Antonio Scandurra
bc1f758b66
Lighten tab close button when clicked
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-04-28 09:39:13 -06:00
Nathan Sobo
69cc2b0483
WIP
2021-04-27 18:35:24 -06:00
Nathan Sobo
58e336354e
Align close tab icon cleanly with unsaved indicator
2021-04-27 16:51:23 -06:00
Max Brunsfeld
eec8a3b555
Simplify file finder update_matches logic
2021-04-27 14:58:54 -07:00
Max Brunsfeld
75b8f7425d
Avoid redundant sort_unstable_by call on merged fuzzy matches
2021-04-27 14:34:29 -07:00
Max Brunsfeld
a59b75c839
Keep results stable when using file-finder while scanning files
2021-04-27 14:02:55 -07:00
Max Brunsfeld
6882fdca38
Avoid crash when running pane:activate_prev_item w/ no tabs open
2021-04-27 11:01:32 -07:00
Nathan Sobo and Max Brunsfeld
eca9f495a1
Render a close tab button on tab hover
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-04-27 11:58:59 -06:00
Nathan Sobo and Max Brunsfeld
bb95d58c79
Relay hover events to tabs
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-04-27 11:37:14 -06:00
Nathan Sobo and Antonio Scandurra
3d1e44ca29
Capture hover events on tabs
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-04-27 09:23:44 -06:00
Antonio Scandurra
b52a3b5a24
Autoscroll on paste
...
This also removes the `changed_selections` and moves the autoscroll
request inside of `update_selections`. This is nicer because it'll force
us to determine whether we want to autoscroll every time we update the
selections, so that we don't forget this in the future.
2021-04-27 11:52:46 +02:00
Nathan Sobo
f29f1b073d
Preserve selected file finder path when Worktree changes
2021-04-26 20:23:56 -06:00
Max Brunsfeld and Nathan Sobo
55fcc586bc
Cancel outstanding fuzzy-matching calls before starting a new one
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-04-26 16:14:43 -07:00
Max Brunsfeld
733dc15c32
Ignore .git directories
2021-04-26 15:46:06 -07:00
Max Brunsfeld
e7c594262f
Fix handling of uppercase characters in fuzzy finding
2021-04-26 15:04:26 -07:00
Nathan Sobo
870925e2ac
Rerender tabs when buffers' file handles change
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-04-26 14:16:35 -07:00
Max Brunsfeld and Nathan Sobo
9753e67410
Update filehandle paths when renames occur
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-04-26 12:56:13 -07:00
6535304da8
WIP: Start on updating file handles
...
Co-Authored-By: Max Brunsfeld <max@zed.dev >
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-04-26 20:10:15 +02:00
Antonio Scandurra
111d98d6c1
Keep ignore status up-to-date as events are processed
2021-04-26 17:55:18 +02:00
Nathan Sobo
f770a70929
WIP: Maintain an IgnoreStack while scanning
...
All ignore files associated with ancestors of the directory currently being scanned are included in the stack. This allows us to compute ignore status for each entry as we initially scan it. If we encounter an ignored directory, we replace the stack with an "ignore all" variant that simply ignores every descendant of the ignored directory.
This is incomplete. We still need to construct an ignore stack in an appropriate state when rescanning subtrees in response to events. It also doesn't deal with individual ignore files being added, removed, or changed. I think we could potentially use the ignore stack while reconstructing the tree for this purpose.
2021-04-24 23:59:03 -06:00
Antonio Scandurra
9cd1d5e607
Avoid cloning entry in Snapshot::entry_for_path
2021-04-24 10:14:17 +02:00
Max Brunsfeld and Nathan Sobo
6a7308b87a
Avoid storing redundant copies of file paths
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-04-23 21:17:26 -07:00
Max Brunsfeld and Nathan Sobo
054203d21c
Fix fuzzy matching after removing root dirname from stored paths
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-04-23 15:22:47 -07:00
Nathan Sobo and Max Brunsfeld
dced9469f5
WIP
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-04-23 12:47:23 -06:00