Commit Graph
39175 Commits
Author SHA1 Message Date
Antonio ScandurraandNathan Sobo c33b6214ff WIP: Start on apply_remote_edit
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-03 18:40:01 +02:00
Max Brunsfeld 1235499a21 Add a simple unit test for applying remote edit operations 2021-06-02 20:09:53 -07:00
Max Brunsfeld 119d9bc75e Add custom error message for rope cursor slice precondition 2021-06-02 17:47:25 -07:00
Max Brunsfeld a0c149e911 Add logging in random concurrent edits test 2021-06-02 17:47:02 -07:00
Max Brunsfeld 1e63b7eca3 Get undo/redo tests passing 2021-06-02 16:28:54 -07:00
Max Brunsfeld 5c50959d61 Add a hand-written error message for the seek_internal precondition 2021-06-02 16:28:27 -07:00
Max Brunsfeld a71c2282f8 Compute full ranges for edit operation inside of Buffer::splice_fragments 2021-06-02 16:28:27 -07:00
Max Brunsfeld fe6485ba3c Avoid unnecessarily adding internal summaries in Cursor::next 2021-06-02 14:43:17 -07:00
Max Brunsfeld 5c37f2ebb7 Avoid calling SumTree::extent in Cursor::suffix 2021-06-02 13:51:52 -07:00
Max Brunsfeld 7235f2e6f8 Generalize Dimension<FragmentSummary> for tuples 2021-06-02 12:09:16 -07:00
Antonio Scandurra b242f854bb Merge pull request #80 from zed-industries/collaboration-plans
Add document outlining plans for collaboration
2021-06-02 16:36:24 +02:00
Antonio Scandurra e02a2ad4f6 Speed up anchor comparison when the version is the same 2021-06-02 12:24:00 +02:00
Antonio Scandurra d54c3fbeaf Don't increment clock for initial insertion 2021-06-02 12:13:08 +02:00
Max Brunsfeld 363b131439 WIP 2021-06-01 18:22:08 -07:00
Nathan SoboandMax Brunsfeld 08b8190c89 WIP: Start representing edit operations with versions and multiple ranges
Compiling, long way to go though.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-06-01 17:25:23 -06:00
Max Brunsfeld 54f6d6270b wip 2021-06-01 14:28:17 -07:00
Max Brunsfeld 3bb7dec7f7 Remove count field from FragmentSummary
Sort anchors according to their 'full offset' (deleted + visible)
2021-06-01 12:28:04 -07:00
0a40cfac9f Compare anchors via their fragment and their offset within it
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-06-01 11:52:42 -07:00
Antonio Scandurra 5e16e7e11c WIP: Compare anchors without using FragmentId 2021-06-01 17:54:58 +02:00
Antonio Scandurra f2468d0984 Pull up VersionedOffset 2021-06-01 16:57:03 +02:00
Antonio Scandurra dea3208ede Fix randomized tests for concurrent edits 2021-06-01 16:54:02 +02:00
Antonio Scandurra 82d7c2a977 Implement anchors using an offset + a version vector 2021-06-01 15:28:20 +02:00
Antonio Scandurra 6d3bdcd3e5 Supply a context when adding summary to Dimension 2021-06-01 12:50:10 +02:00
Nathan Sobo 9204d55dda Add RPC implementation details to the collaboration plan 2021-05-31 17:40:39 -06:00
Max BrunsfeldandNathan Sobo f34127ad1b Add document outlining plans for collaboration
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-31 15:31:57 -07:00
Antonio Scandurra f1f67c30d7 WIP 2021-05-31 16:57:15 +02:00
Antonio Scandurra d4b54d3fe1 Merge pull request #77 from zed-industries/merge-selections-larger-syntax-node
Merge selections correctly when selecting larger syntax node
2021-05-31 16:55:21 +02:00
Antonio Scandurra c8fa82d5f1 Merge pull request #78 from zed-industries/fewer-calls-to-add-summary
Avoid calling `add_summary` twice in `sum_tree::Cursor`
2021-05-31 16:55:03 +02:00
Antonio Scandurra b24743dad9 Fix tests 2021-05-31 16:51:33 +02:00
Antonio Scandurra 7fff08de91 Avoid calling add_summary twice in sum_tree::Cursor
As I was looking into `SumTree` for the upcoming round of changes to the
buffer, I noticed that we were inadvertently adding summaries twice
every time we skipped over a node in the tree.

This is a pretty heavy code path that's pretty ubiquitous in the
codebase, so this commit gets rid of the unnecessary addition.
2021-05-31 16:45:57 +02:00
Antonio Scandurra 3e37aded94 Merge selections correctly when selecting larger syntax node
When running this command with multiple cursors, if one of them was at a
later position in the buffer but lying on a shallower node, it could
happen that its start could move prior to cursors that were before it
but lying on a deeper node.

This could cause the selection merging algorithm to mistakenly keep some
selections even if they overlapped. With this commit we now sort
selections prior to merging them in `Editor::select_larger_syntax_node`.
2021-05-31 16:33:26 +02:00
Nathan Sobo 5d3a2c9925 Add more emacs-inspired bindings
Word-wise movement and columnar selection without reaching for the arrows.
2021-05-29 12:06:52 -06:00
Max Brunsfeld cd0f9bd94e Fix error when running workspace:open command 2021-05-28 16:34:28 -07:00
Nathan Sobo bcc24a9e50 Merge pull request #75 from zed-industries/naming-cleanup
Clean up naming conventions project-wide
2021-05-28 16:42:20 -06:00
Max Brunsfeld 5203f8af1c Rename context parameters to cx in gpui 2021-05-28 15:32:35 -07:00
Max Brunsfeld cbeefad159 Rename context parameters to cx in sum_tree 2021-05-28 15:32:24 -07:00
Max Brunsfeld e2b6a05dec Rename context parameters to cx in main.rs 2021-05-28 15:10:39 -07:00
Max Brunsfeld 824a8c25bf Rename context parameters to cx in pane.rs 2021-05-28 15:09:52 -07:00
Max Brunsfeld 69b466d27c Rename context parameters to cx in fold_map.rs 2021-05-28 15:08:38 -07:00
Max Brunsfeld 64eb30f21f Rename context parameters to cx in selection.rs 2021-05-28 15:06:58 -07:00
Max Brunsfeld 9f8531e497 Rename context parameters to cx in movement.rs 2021-05-28 15:06:32 -07:00
Max Brunsfeld fd479db3df Rename context parameters to cx in editor/element.rs 2021-05-28 15:05:46 -07:00
Max Brunsfeld f7e69eb2b7 Rename context parameters to cx in display_map.rs 2021-05-28 15:04:34 -07:00
Max Brunsfeld ed99cb2cb6 Rename context parameters to cx in buffer.rs 2021-05-28 15:03:13 -07:00
Max Brunsfeld e20e8a2e33 Rename context parameters to cx in worktree.rs 2021-05-28 15:01:35 -07:00
Max Brunsfeld 3dc752d6c6 Rename context parameters to cx in workspace.rs 2021-05-28 14:59:24 -07:00
Max Brunsfeld 82a6291562 Rename context parameters to cx in file_finder.rs 2021-05-28 14:56:44 -07:00
Max Brunsfeld 3f73c937b3 Rename context parameters to cx in editor.rs 2021-05-28 14:56:38 -07:00
Max BrunsfeldandNathan Sobo ace298518e Rename BufferView -> Editor
* BufferElement -> EditorElement

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-28 14:41:58 -07:00
Max BrunsfeldandNathan Sobo a82d25e5dd Rename foo/mod.rs files too foo.rs
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-28 14:41:58 -07:00