Commit Graph
1007 Commits
Author SHA1 Message Date
Max Brunsfeld 6cb84ca3e8 wip 2021-07-20 15:30:50 -07:00
Max Brunsfeld c4d825cf33 Get simple unit test passing for soft-wrap in DisplayMap 2021-07-20 15:22:11 -07:00
Max BrunsfeldandNathan Sobo 1aea691494 Add WrapMap as a member of DisplayMap
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-20 13:03:59 -07:00
Max BrunsfeldandNathan Sobo 2705e3bd1a Fix assertions in fold map test
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-20 11:43:10 -07:00
Max BrunsfeldandNathan Sobo e8d2dda42f Avoid holding executor's state lock while parked
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-20 11:37:02 -07:00
Nathan SoboandMax Brunsfeld 31d248318a Replace DeterministicExecutor::reset with forbid_parking
There's really no point calling reset if we plan on parking afterwards.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-07-20 12:28:04 -06:00
Nathan Sobo e438010a18 Allow DeterministicExecutor to park until forbid_parking is called
This allows us to perform async setup such as talking to the database.
2021-07-20 12:22:02 -06:00
25a96a16ba WIP: interpolate edits into snapshot coming from BackgroundWrapper
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-07-20 19:21:52 +02:00
7efff39465 Add DeterministicExecutor::block_on(duration, future)
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-07-20 19:20:50 +02:00
Antonio Scandurra b94ba6efd5 Implement Snapshot::interpolate 2021-07-20 14:25:56 +02:00
Antonio Scandurra 56b79edcd4 Ensure that WrapMap's input lines match TabMap's output lines 2021-07-20 11:30:00 +02:00
Antonio Scandurra b10aa10bc0 Coalesce contiguous isomorphic transforms 2021-07-20 11:27:12 +02:00
Antonio Scandurra e77309f8e3 Remove stray logging statements 2021-07-20 11:10:02 +02:00
Antonio Scandurra a20d4ed00a Make randomized tests pass with one operation 2021-07-20 11:06:17 +02:00
Nathan SoboandMax Brunsfeld 540eac9f0e Iterate on randomized wrapping test and fix some bugs
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-07-19 19:31:03 -06:00
Nathan SoboandMax Brunsfeld 45a03fd5e7 Get the randomized soft wrap test passing with no edits
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-07-19 18:37:29 -06:00
Nathan SoboandMax Brunsfeld f00d418057 Honor the last line when wrapping even if it doesn't end in \n
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-07-19 18:29:20 -06:00
Max BrunsfeldandNathan Sobo 277b64a5f0 Start work on WrapMap::chunks_at
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-19 16:23:56 -07:00
Max Brunsfeld 5067ba9f70 Fix typo in Point::add_assign 2021-07-19 13:28:35 -07:00
Nathan Sobo 2cc93834d8 WIP 2021-07-19 13:59:07 -06:00
Antonio ScandurraandNathan Sobo 71789dd861 WIP
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-19 19:34:41 +02:00
Antonio ScandurraandNathan Sobo 426a7ca30d Re-enable wrap_map module and fix compile errors
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-19 18:40:57 +02:00
Antonio ScandurraandNathan Sobo bdfbc2fdb7 Extract tab expansion logic into TabMap
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-19 17:29:03 +02:00
Antonio ScandurraandNathan Sobo 5d60e364af Clarify input and output coordinates in display_map
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-19 16:18:20 +02:00
Antonio Scandurra c9a3dd0d18 WIP 2021-07-19 15:45:49 +02:00
Antonio Scandurra 7e3a9dca2a Add fold_map::Snapshot::text_summary_for_range 2021-07-19 12:25:27 +02:00
Antonio Scandurra f1b23774c9 Change fold_map::Edit to return DisplayOffsets
This is needed so that we can translate display offsets into display
points in the `WrapMap`.
2021-07-19 11:34:47 +02:00
Antonio Scandurra 092a625ce6 Fix errors in WrapMap randomized tests 2021-07-19 10:48:13 +02:00
Max Brunsfeld 51320e815c Implement FontSystem::wrap_line 2021-07-16 17:14:43 -07:00
Antonio Scandurra 53311059e1 WIP 2021-07-16 18:43:50 +02:00
Antonio ScandurraandNathan Sobo 34cda642ae Start on adding a randomized test for BackgroundWrapper
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-16 17:53:23 +02:00
Antonio Scandurra 2541d95051 Work on a randomized test for edits/snapshots returned by FoldMap
...and make it pass too!
2021-07-16 15:48:43 +02:00
Antonio Scandurra 5fd0511fc6 Make writing/reading FoldMap explicit so that we can retrieve edits 2021-07-16 13:49:38 +02:00
Antonio Scandurra e11299b5db Pull snapshot history out of fold map 2021-07-16 13:49:02 +02:00
Max Brunsfeld d6e5ff9a01 Add FoldMapSnapshot::edits_since_creation 2021-07-15 18:27:59 -07:00
Nathan SoboandMax Brunsfeld db60b40f7c Try to return edits from FoldMap::apply_edits
The goal is to describe how the fold map changed. Hopefully this is correct.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-07-15 15:08:18 -06:00
Nathan SoboandMax Brunsfeld cd797a5a0d Give the FoldMap its own edit type that does not have deleted_lines
We want to use this struct to communicate about edits performed to the fold map itself, and it will be simpler if we don't have to communicate this data.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-07-15 14:19:58 -06:00
Max Brunsfeld c3e5ab60f6 Move DisplayMap's reading methods to DisplayMapSnapshot 2021-07-15 11:48:57 -07:00
Nathan SoboandMax Brunsfeld a1963af703 Move all FoldMap query methods to FoldMapSnapshot
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-07-15 11:36:24 -06:00
Nathan Sobo d8a7c925a0 Introduce buffer::Content<'a> struct to share logic with buffer::Snapshot
We want to move a bunch of methods on FoldMap to fold_map::Snapshot. This captures a buffer snapshot, and we'll need a bunch of methods that currently are on Buffer to also be implemented on buffer::Snapshot. This Content reference struct will be a good zero-cost place to store that logic.
2021-07-15 09:50:50 -06:00
Antonio Scandurra ce7621d82e Calculate an old_lines range in Edits iterator 2021-07-15 10:11:24 +02:00
Antonio Scandurra 1668ab92f8 WIP 2021-07-14 19:09:46 +02:00
Antonio Scandurra 25cb9be4cd WIP: Start on WrapMap 2021-07-14 18:43:48 +02:00
Antonio Scandurra e15f41ecf6 Merge pull request #110 from zed-industries/fs-refactor
Decouple our fs module from details of the Worktree
2021-07-14 09:36:40 +02:00
Antonio Scandurra 20de9c23ba 💄 2021-07-14 09:25:12 +02:00
Max Brunsfeld 87ba09aeb5 🎨 Use fs::Metadata in fs::FakeFsEntry 2021-07-13 16:03:54 -07:00
Max Brunsfeld fb0c70e9fe Move the fs module out of worktree 2021-07-13 15:40:11 -07:00
Max Brunsfeld e67eeacc4f Decouple Fs trait from Worktree
Make it a more direct shim for the standard FS APIs
2021-07-13 15:40:11 -07:00
Nathan Sobo 3aaa00bfd0 Merge pull request #109 from zed-industries/server
Include contents of the zed-server repo
2021-07-13 15:52:00 -06:00
Max Brunsfeld b3ada94b50 Fix flaky FileFinder test by avoiding redundant worktree snapshot polls when idle 2021-07-13 13:53:51 -07:00