Commit graph

719 commits

Author SHA1 Message Date
Max Brunsfeld
2f378be1a8 Introduce LanguageRegistry object
* Include it, along with settings in `OpenParams` grouped under a new struct called `AppState`

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-22 12:34:35 +02:00
Nathan Sobo
eb345e7182
Merge pull request #71 from zed-industries/simplify-text-layout
Pass scalar lengths and include colors when specifying styling runs during text layout
2021-05-21 14:40:48 -06:00
Nathan Sobo
5d614e7e54 Fix test assertions 2021-05-21 14:36:52 -06:00
Nathan Sobo
2c122eb253 Fix typo 2021-05-21 14:36:44 -06:00
Nathan Sobo
b075b0108d Clarify variable name 2021-05-21 14:14:05 -06:00
Nathan Sobo
92ff7f4e5e Accept colors in styling runs passed to layout_str
Also move from the runs being expressed as ranges to the runs being expressed as a sequence of contiguous scalar lengths.
2021-05-21 14:10:38 -06:00
Antonio Scandurra
b42f5142f7 Rename rightmost_{row,chars} to longest_{row,chars}
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-20 16:32:09 +02:00
Antonio Scandurra
86199c588f
Merge pull request #70 from zed-industries/optimizations
Structure buffer APIs in terms of strings and byte counts instead of chars and character counts
2021-05-20 13:02:46 +02:00
Antonio Scandurra
6a0757ebf9 Don't store rightmost row/char-column as a Point 2021-05-20 12:52:58 +02:00
Antonio Scandurra
995b80ff26 Index into prefix or path depending on where the match was found
This fixes a couple of tests that were panicking due to an out-of-bound
access.
2021-05-20 12:47:08 +02:00
Antonio Scandurra
ed57ffe5fa Replace rightmost_point with righmost_row 2021-05-20 12:47:08 +02:00
Antonio Scandurra
96538354b3 Express rightmost_point in terms of chars as opposed to bytes 2021-05-20 12:47:08 +02:00
Antonio Scandurra
608336c279 Complete unit test for Label highlights 2021-05-20 12:47:08 +02:00
Max Brunsfeld
558ce41130 WIP - Adjust Label element to expect highlights as byte offsets 2021-05-20 12:47:08 +02:00
Max Brunsfeld
4bc1b0fa6f Convert fuzzy match positions to byte offsets 2021-05-20 12:47:08 +02:00
Max Brunsfeld
92b938f4a8 Adjust layout_str to use byte coordinates
* Interpret ranges as byte ranges for incoming runs
* Return glyphs whose indices are byte offsets
2021-05-20 12:47:08 +02:00
Max Brunsfeld
a2c36fcdb7 Fix bugs and add tests for move_{up,down} 2021-05-20 12:47:08 +02:00
Max Brunsfeld
510f20411a Get cursor movement working with byte columns
Introduce `clip_point` and `clip_offset` methods on `Rope`, `Buffer`, and `FoldMap`.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-05-20 12:47:08 +02:00
Max Brunsfeld
f3db0dcff6 Start work on making row/columnwise movement work w/ byte columns 2021-05-20 12:47:08 +02:00
Max Brunsfeld
6621b9b552 Expand tabs correctly with multibyte characters
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-20 12:47:08 +02:00
Max Brunsfeld
c62a679e12 Use chunk-wise DisplayMap iteration when laying out lines 2021-05-20 12:47:08 +02:00
Max Brunsfeld
a9583d0074 Introduce FoldMapSnapshot::chunks_at, use it in FoldMap::text
Get the FoldMap randomized tests passing. This also required adding
a test-only FoldMap::prev_char_boundary method.
2021-05-20 12:47:08 +02:00
Max Brunsfeld
b3d2a70834 Don't return Results from position methods in FoldMap and DisplayMap 2021-05-20 12:47:08 +02:00
Max Brunsfeld
72b98ad688 Get buffer tests passing after switching to byte coordinates 2021-05-20 12:47:08 +02:00
Antonio Scandurra
f7691fc00c WIP: Switch to byte-oriented indexing
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-20 12:47:08 +02:00
Antonio Scandurra
529a42e78f Introduce Rope::chunks_in_range 2021-05-20 12:47:08 +02:00
Antonio Scandurra
a1f95fa95e
Merge pull request #69 from zed-industries/fix-flaky-test
Try fixing flaky tests
2021-05-19 16:39:36 +02:00
Antonio Scandurra
1517ccf80b Always flush historical events in fsevent tests 2021-05-19 16:03:30 +02:00
Antonio Scandurra
64d361fdb2 Don't use condition to wait for spawn_search to complete
Instead, return a `Task` from `spawn_search` that can either be
awaited or detached.
2021-05-19 15:36:24 +02:00
Antonio Scandurra
d7f5587d84 Revert "Temporary: ensure CI env variable is being set"
This reverts commit 074dc55ab7.
2021-05-19 15:20:33 +02:00
Antonio Scandurra
074dc55ab7 Temporary: ensure CI env variable is being set 2021-05-19 15:19:07 +02:00
Antonio Scandurra
1cf5413173 Increase timeout to 2s for fsevents tests 2021-05-19 15:01:11 +02:00
Antonio Scandurra
65cf9b7c1d Remove condition_with_duration for ModelHandle
Also, use a 2s timeout on CI for both `ModelHandle::condition` and
`ViewHandle::condition`.
2021-05-19 14:50:28 +02:00
Antonio Scandurra
830fc38503 Increase condition timeout on CI and remove condition_with_duration
`condition_with_duration` wasn't really being used, as the default
timeout was `500ms` and the only places that did use it specified
`500ms` as well.
2021-05-19 14:42:10 +02:00
Antonio Scandurra
8615046eee
Enable backtrace for tests on CI 2021-05-19 14:24:23 +02:00
Max Brunsfeld
45e81dc768
Merge pull request #68 from zed-industries/optimizations-2
Introduce a few optimizations to `SumTree` and `Buffer`
2021-05-18 09:14:23 -07:00
Antonio Scandurra
a8ece757e4 Implement time::Global using a SmallVec
Version vectors are going to be small most of the time, especially
as soon as we introduce an optimization that will let us only
track concurrent versions, thus preventing the version vector from
growing indefinitely over time in the tree.
2021-05-18 17:34:48 +02:00
Antonio Scandurra
84e0efe5df Save a few allocations when pushing to a SumTree 2021-05-18 17:34:36 +02:00
Antonio Scandurra
781aa92f26 Don't summarize unnecessary information when resolving anchor 2021-05-18 17:34:28 +02:00
Nathan Sobo
fd3b2c38eb Try a diff upload action 2021-05-17 23:39:01 -06:00
Nathan Sobo
f7b37cdf54
Merge pull request #66 from zed-industries/upload-release
Add a release upload action
2021-05-17 23:04:55 -06:00
Nathan Sobo
aef21e1c0b Try not cleaning on checkout 2021-05-17 22:46:33 -06:00
Nathan Sobo
f7e8e21d74 Reenable tests 2021-05-17 21:57:07 -06:00
Nathan Sobo
614d74948c 🤦‍♂️ 2021-05-17 21:33:08 -06:00
Nathan Sobo
6c51ce9595 Merge remote-tracking branch 'origin/master' into upload-release 2021-05-17 21:12:14 -06:00
Nathan Sobo
c52968b18e
Merge pull request #67 from zed-industries/delay-polling
Reintroduce the 100ms delay when polling worktree entries
2021-05-17 21:11:36 -06:00
Nathan Sobo
f6bb550fb1 Revert "Does this make job setup faster?"
This reverts commit e8985b46dd.
2021-05-17 20:58:03 -06:00
Nathan Sobo
e8985b46dd Does this make job setup faster? 2021-05-17 20:55:42 -06:00
Nathan Sobo
143ea24875 Reintroduce the 100ms delay when polling worktree entries
This regressed when I switched us over to the simplified async approach. I think it was causing us to contend on the mutex on during startup.
2021-05-17 20:50:00 -06:00
Nathan Sobo
a750a09002 Merge remote-tracking branch 'origin/master' into upload-release 2021-05-17 18:27:19 -06:00