Julia
8361b4d47a
Add test for go-to hunk and fix discovered bugs
2022-10-28 15:08:13 -04:00
Julia
c4b21a0ab5
Add action to go to next/previous git diff in editor
...
Co-Authored-By: Kay Simmons <kay@zed.dev>
2022-10-28 15:08:13 -04:00
Mikayla Maki
895aeb033f
Merge branch 'main' into breadcrumbs
2022-10-17 16:51:38 -07:00
K Simmons
40c3e925ad
Add cursor blink setting and replicate cursor shape to remote collaborators
2022-10-17 16:20:47 -07:00
Mikayla Maki
19c98bb5ad
fixed a bug where files outside of the project would show 'untitled' in the search bar
2022-10-17 12:58:48 -07:00
Max Brunsfeld
6cdf4e98fc
Re-export basic text types from text and language crates
...
Also avoid production dependencies on fs and rope in collab
2022-10-12 15:48:19 -07:00
Antonio Scandurra
83d3fad80d
Clear auto-indent requests if they couldn't be computed
2022-10-12 10:53:44 +02:00
Mikayla Maki
5487f99ac7
Moved settings_file.rs into settings crate. Should be ready to start now :D
2022-10-11 16:03:38 -07:00
Mikayla Maki
0beb97547e
Finished refactoring out fs and rope
2022-10-11 15:25:54 -07:00
Julia
e15f27106d
Reset buffer git diff when setting diff base to None
...
Co-Authored-By: Joseph Lyons <joseph@zed.dev>
2022-10-07 15:37:37 -04:00
Max Brunsfeld
fe7a39ba5c
Apply buffer diff edits as a single batch
2022-10-06 11:54:28 -07:00
Max Brunsfeld
51fa06cc8d
Merge pull request #1404 from zed-industries/html-support
...
Basic html support
2022-10-06 10:32:44 -07:00
Max Brunsfeld
7fb5fe036a
Derive indent size from the language at the cursor when auto-indenting
2022-10-05 17:07:35 -07:00
Max Brunsfeld
aa86806408
Finish generalizing ToggleComments to support block comments
2022-10-05 12:25:32 -07:00
Julia
e6487de069
Rename head text to indicate that it's not always going to be from head
...
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2022-10-03 15:11:06 -04:00
Julia
c95646a298
WIP Start refactoring separation of concerns for repo metadata
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2022-09-30 18:25:25 -04:00
Julia
ce7f6dd082
Start a test for remote git data updating
...
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-09-30 15:51:32 -04:00
Mikayla Maki
71b2126eca
WIP, re-doing fs and fake git repos
2022-09-29 13:16:02 -04:00
Julia
d5fd531743
Move git related things into specialized git crate
...
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2022-09-29 13:16:02 -04:00
Julia
bf3b3da6ed
Build again
2022-09-29 13:16:02 -04:00
Julia
7e5d49487b
WIP Notifying buffers of head text change
...
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2022-09-29 13:16:02 -04:00
Julia
a679557e40
Avoid racing git diffs & allow for "as fast as possible" diff updating
...
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2022-09-29 13:16:02 -04:00
Julia
b18dd8fcff
Fully qualify outside git-related code when a diff is a git diff
2022-09-29 13:16:02 -04:00
Julia
6633c0b328
Perform initial file load git diff async
2022-09-29 13:16:02 -04:00
Julia
6825b6077a
Properly invalidate when async git diff completes
2022-09-29 13:16:02 -04:00
Julia
9c82954877
Changed diffs to be async and dropped git delay
2022-09-29 13:16:02 -04:00
Julia
4b2040a7ca
Move diff logic back into BufferDiff::update
2022-09-29 13:16:02 -04:00
Julia
61ff24edc8
Move cloneable diff state into new snapshot type
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-09-29 13:16:02 -04:00
Julia
a86e93d46f
Checkpoint on incremental diff sumtree shenanigans
2022-09-29 13:16:02 -04:00
Julia
883d5b7a08
Update git gutter status after debounced delay
...
Co-authored-by: Max Brunsfeld <max@zed.com>
2022-09-29 13:16:02 -04:00
Julia
55ca02351c
Start painting some sort of hunk info, it's wrong but it's close
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-09-29 13:16:01 -04:00
ForLoveOfCats
2a14af4cde
Load a file's head text on file load just to get started
2022-09-29 13:16:01 -04:00
Max Brunsfeld
4f44375abd
Make Buffer::language_at fall back to Buffer::language
...
For languages with no grammar (plain text), there
will be no layers.
2022-09-28 13:38:54 -07:00
Max Brunsfeld
67e188a015
Add Buffer::language_at, update MultiBuffer to use it
...
Co-authored-by: Julia Risley <floc@unpromptedtirade.com>
2022-09-28 12:32:04 -07:00
Max Brunsfeld
21fb2b9bf1
Tweak HTML indents and highlights
2022-09-28 12:32:04 -07:00
Max Brunsfeld
0777af1dd3
Fix crash when querying for enclosing brackets at EOF
2022-09-02 10:23:46 -07:00
Max Brunsfeld
d4bbf21650
Merge pull request #1559 from zed-industries/language-injection
...
Add language injection support
2022-08-30 11:54:00 -07:00
Max Brunsfeld
015b6c4a31
Fix test about auto-indent with no indent query
2022-08-24 15:29:07 -07:00
Max Brunsfeld
b3f4c73264
Clean up some of buffer's syntax-related methods
2022-08-24 15:11:26 -07:00
Max Brunsfeld
3245e4f8d7
Fix out-of-range panic when requesting outline items at EOF
2022-08-24 15:10:53 -07:00
Max Brunsfeld
ced45cbb0a
Use SyntaxMap in Buffer
2022-08-24 13:00:27 -07:00
Antonio Scandurra
f0d35ccc50
Move operation serialization off the main thread
2022-08-23 16:34:25 +02:00
Antonio Scandurra
954695f5fe
Stream buffer ops in the background when creating buffer for peers
2022-08-23 16:05:56 +02:00
Antonio Scandurra
ec48ffc9da
Simplify proto::Buffer
to express its fields in terms of operations
2022-08-23 12:40:20 +02:00
Max Brunsfeld
f6a817a0f3
Start work on a SyntaxMap data structure
2022-08-21 11:37:10 -07:00
Antonio Scandurra
9c9bf07e40
Create buffers for remote collaborators out of band
...
Previously, we would use `Project::serialize_buffer_for_peer` and
`Project::deserialize_buffer` respectively in the host and in the
guest to create a new buffer or just send its ID if the host thought
the buffer had already been sent.
These methods would be called as part of other methods, such as
`Project::open_buffer_by_id` or `Project::open_buffer_for_symbol`.
However, if any of the tasks driving the futures that eventually
called `Project::deserialize_buffer` were dropped after the host
responded with the buffer state but (crucially) before the guest
deserialized it and registered it, there could be a situation where
the host thought the guest had the buffer (thus sending them just the
buffer id) and the guest would wait indefinitely.
Given how crucial this interaction is, this commit switches to creating
remote buffers for peers out of band. The host will push buffers to guests,
who will always refer to buffers via IDs and wait for the host to send them,
as opposed to including the buffer's payload as part of some other operation.
2022-08-17 11:55:36 +02:00
K Simmons
9aa3f2d777
clippy fixes for focus change
2022-08-10 16:51:01 -07:00
ForLoveOfCats
8ba2f77148
One big cleanup pass of clippy lints
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-10 16:51:01 -07:00
Julia
8115c1ab24
Merge pull request #1451 from zed-industries/tab-auto-indent
...
Auto-indent on tab for cursors left of the suggested indent level
2022-08-02 15:52:12 -04:00
Antonio Scandurra
71128d2ee6
Compute diffs based on characters rather than lines
...
Previously, a change on a given line would cause that whole line to be
replaced. In turn, this caused anchors on that line to go to the start
of that line because they would lie inside of a deleted region after applying
the diff.
By switching to a character-wise diff, we perform smaller edits to the buffer
which stabilizes anchor positions.
2022-08-02 16:52:37 +02:00