Commit Graph
25009 Commits
Author SHA1 Message Date
Max Brunsfeld 991d42724a Move buffer tests into their own file 2021-10-11 12:18:31 -07:00
Max BrunsfeldandNathan Sobo 71ed81bc93 Ensure that autoindent task yields frequently to respect cancellation
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-11 11:25:15 -07:00
Antonio ScandurraandNathan Sobo f8188c8519 WIP: Determine autoindents asynchronously
We still need to insert yield points in `compute_autoindents`.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-11 18:00:48 +02:00
Antonio Scandurra 864ebc7c31 Fix creation of anchors for the inserted portion of an edit 2021-10-11 13:08:50 +02:00
Antonio Scandurra 6471d88238 Always use seek_forward when resolving anchors 2021-10-11 09:37:21 +02:00
Nathan Sobo a4223aab87 Improve auto-indenting of inserted lines
Still not working totally correctly with our new approach, but getting closer.
2021-10-08 22:07:01 -06:00
Max BrunsfeldandNathan Sobo 149fc28019 Start on new way of comparing old and new indent suggestions
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-08 16:54:27 -07:00
Nathan SoboandAntonio Scandurra b72f13af66 Extend Rust where clauses past their final newline for indentation
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-10-08 10:32:15 -06:00
Nathan SoboandAntonio Scandurra 5b09707cb0 Don't request auto-indent if there is no language assigned on the buffer
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-10-08 10:25:16 -06:00
Nathan SoboandAntonio Scandurra e9bcc7779d Unconditionally preserve indentation when inserting newlines
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-10-08 10:25:00 -06:00
Antonio ScandurraandNathan Sobo 4c6c4d5750 💄
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-08 17:43:19 +02:00
Antonio Scandurra db8cac6536 Cancel out outdents and indents referring to the previous row 2021-10-08 12:52:48 +02:00
Antonio Scandurra 66a833c337 Bias the start of an autoindent request towards the right for new text
When a newline is inserted, this prevents the request from including
the line on which the newline got inserted.
2021-10-08 12:15:21 +02:00
Max Brunsfeld 470fa86a60 Replace Buffer::request_autoindent API with ::edit_with_autoindent
When computing the "previous autoindent suggestion", we can't just
use the old tree and the current text. We need to find out what the
suggestion would have been before we made any changes.
2021-10-07 17:55:23 -07:00
Max BrunsfeldandNathan Sobo 0053182229 Preserve indentation for lines that are both indented and outdented
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-07 13:55:59 -07:00
Max Brunsfeld bc1a6ff075 Remove no-longer-used dirty field on buffer::SyntaxTree
This became unnecessary when we reworked our reparsing logic
to block from 1ms on each parse.
2021-10-07 12:46:08 -07:00
Max Brunsfeld 8bb2a5f35a Fix collection of row ranges in Buffer::perform_autoindent 2021-10-07 12:43:26 -07:00
Max BrunsfeldandAntonio Scandurra 3202d11680 Implement selective auto-indent by comparing old and new suggestions
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-10-07 10:46:40 -07:00
Antonio ScandurraandMax Brunsfeld f1aa471d38 WIP
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-10-07 19:09:14 +02:00
Antonio ScandurraandNathan Sobo 0d6f728b81 Introduce a Tab action to indent line or insert soft tabs
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-07 17:31:58 +02:00
Antonio ScandurraandNathan Sobo b4337b0c2f Don't push empty transactions onto the undo stack
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-07 16:06:55 +02:00
Max Brunsfeld a21a1b483b Add more rust indent nodes 2021-10-06 22:16:30 -07:00
Max Brunsfeld 9a954bc1d6 Generalize strategy for processing indentation ranges
* Take into account the ranges' start and end columns, not just the rows
* Generalize the approach to dedenting
2021-10-06 22:16:18 -07:00
Max BrunsfeldandNathan Sobo 4525cbc448 Start work on a Buffer API for requesting autoindent on the next parse
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-06 16:09:30 -07:00
Max Brunsfeld aeb6d79ecf Merge pull request #203 from zed-industries/autoclose-pairs
Autoclose pairs
2021-10-06 11:17:41 -07:00
10f07a81a7 Skip autoclosed pairs
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-10-06 19:04:55 +02:00
Antonio ScandurraandNathan Sobo 0acdd804f8 Start on autoclosing pairs
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-06 16:34:57 +02:00
Max Brunsfeld 22eeeb4690 Make the fields of buffer::Language private 2021-10-05 14:19:33 -07:00
Max Brunsfeld 5c8d1d1fb6 Add Cargo.toml features to fix compilation of individual crates 2021-10-05 14:18:04 -07:00
Max Brunsfeld a9a32bcb23 Merge pull request #202 from zed-industries/crates
Break project into crates to improve incremental compilation time
2021-10-05 10:54:15 -07:00
Max Brunsfeld 9232abbaf4 Fix path to zed crate in script/bundle 2021-10-05 10:46:59 -07:00
14e9b03c52 Flip the dependency between editor and theme
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-10-05 19:21:13 +02:00
Antonio Scandurra f3583120de Use the same test::run_test function for async gpui::tests 2021-10-05 18:04:22 +02:00
Antonio ScandurraandNathan Sobo 5aeb48a234 Minimize code generation for synchronous gpui::test macro
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-05 17:47:46 +02:00
Antonio Scandurra 00683212b1 Avoid loading Rust grammar in zed tests 2021-10-05 15:43:57 +02:00
Antonio Scandurra 43bb8d28aa Extract theme_selector into its own crate 2021-10-05 15:38:25 +02:00
Antonio Scandurra ce077ebc8e Extract people_panel into its own crate 2021-10-05 14:36:38 +02:00
Antonio Scandurra ac46768302 Extract file_finder into its own crate 2021-10-05 14:30:56 +02:00
Antonio Scandurra 436c408433 Extract chat_panel into its own crate 2021-10-05 14:23:45 +02:00
Antonio Scandurra 2db30f40ba Extract project_panel into its own crate 2021-10-05 14:19:57 +02:00
Antonio Scandurra 3dc173cf40 Move workspace module into its own crate 2021-10-05 13:49:10 +02:00
Antonio Scandurra a70a4edcaa Extract theme into its own crate 2021-10-05 11:14:30 +02:00
Antonio Scandurra cd9d8a3ff8 Move settings::test helper into zed::test 2021-10-05 11:00:46 +02:00
Antonio Scandurra 6cdcb4fa79 Move sidebar-specific code out of Workspace 2021-10-05 10:59:20 +02:00
Antonio Scandurra 1af342e569 Use edition = 2018 instead of 2021 for the editor crate 2021-10-05 10:16:13 +02:00
Max BrunsfeldandNathan Sobo 06a44e9171 Move ChannelList, UserStore into client crate
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-04 17:30:11 -07:00
Max BrunsfeldandNathan Sobo 95c15b11b1 Rename rpc_client -> client
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-04 17:14:21 -07:00
Max BrunsfeldandNathan Sobo 95010ee295 Rename worktree crate to project, pull in Project
Also, move the high-level fuzzy mathcing functions in
zed::fuzzy into the fuzzy crate so that project can
use them.

This required defining a 'PathMatchCandidateSet' trait
to avoid a circular dependency from fuzzy to worktree.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-04 16:45:05 -07:00
Max BrunsfeldandNathan Sobo c71950769d Improve logging when avatar request fails
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-04 15:47:18 -07:00
Max BrunsfeldandNathan Sobo bf7b277038 List path dependencies first in all Cargo.toml files
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-10-04 15:36:52 -07:00