Nathan Sobo
bede668b14
Add a derive macro for Element
...
To turn any struct into a composite element, you can implement a render method
with the following signature:
fn render<V: View>(&mut self, view: &mut V, cx: &mut ViewContext<V>) -> AnyElement<V>;
Then add #[derive(Element)] to the struct definition.
This will make it easier to introduce higher-level components that are expressed in
terms of other elements.
2023-06-25 07:51:50 -06:00
Kirill Bulatov
82bd5fb564
Fix main compilation
2023-06-25 01:43:58 +03:00
Max Brunsfeld
030984dca4
Vim: substitute support ( #2641 )
...
Release Notes:
- vim mode now supports `s` for substitute
2023-06-23 12:58:14 -07:00
Max Brunsfeld
b0631e90ad
vim: Fix 1G ( #2640 )
...
Before this change code could not distinguish between a user providing a
count of 1 and no count at all.
Fixes : zed-industries/community#710
Release Notes:
- 1G now correctly goes to the first line in vim mode
([710](zed-industries/community#710 ))
2023-06-23 12:55:46 -07:00
Conrad Irwin
926acd6033
vim: substitute handles multibyte characters
...
And is now in its own file
2023-06-22 13:22:19 -06:00
Conrad Irwin
0cacf01f90
vim: Fix 1G
...
Before this change code could not distinguish between a user providing a
count of 1 and no count at all.
Fixes : zed-industries/community#710
2023-06-22 12:11:14 -06:00
Conrad Irwin
16022e9c1a
Add counts to subsitute (and all)
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-06-22 11:50:56 -06:00
Nate Butler
a305d93567
Z-2308 - Export Theme Types from Rust ( #2621 )
...
This PR adds JSON Schema definitions into GPUI's styles and adds a tool
for generating typescript types from these schema definitions.
Release Notes:
- N/A
2023-06-22 12:33:18 -04:00
Piotr Osiewicz
10cc0d567f
Reintroduce package-lock.json
2023-06-22 18:26:18 +02:00
Piotr Osiewicz
fcce1bc488
Fixup xtask compilation
2023-06-22 18:06:52 +02:00
Piotr Osiewicz
417a743b5e
chore: use codegen_units=1 ( #2633 )
...
Reduces binary size by about 31Mb (total .dmg size down by 15Mb after compression).
2023-06-22 18:06:17 +02:00
Piotr Osiewicz
b430be5bc6
cargo fmt
2023-06-22 17:59:56 +02:00
Piotr Osiewicz
af252888c4
Merge branch 'main' into sergey/z-2308-create-a-proof-of-concept-of-exporting-a-type-from-rust-and
2023-06-22 17:58:56 +02:00
Piotr Osiewicz
5291bf3d9f
Use nextest instead of test ( #2639 )
...
This should speed up our test CI by a minute or so. =)
[current best case CI
run](https://github.com/zed-industries/zed/actions/runs/5337351944/jobs/9673291188 ),
where we don't rebuild anything (and only run tests) takes about 2m30s
[with
nextest](https://github.com/zed-industries/zed/actions/runs/5346819257/jobs/9694617720?pr=2639 ),
that's down to 1m30s.
Release Notes:
- N/A
2023-06-22 16:50:26 +02:00
Nathan Sobo
ea5398a702
vim: binding fixes ( #2637 )
...
Release Notes:
- In vim mode you can now use count modifiers with arrow keys (`5<down>`
will go down 5 lines).
- In vim mode `ctrl+]` and `ctrl+o` now work to go to definition and
back
2023-06-22 06:44:12 -06:00
Nathan Sobo
cd008d1503
Add support for joining lines ( #2636 )
...
🚧 We have a couple more refinements to this to add 🚧
Release Notes:
You can now join lines with `ctrl-j` or `shift-J` in Vim normal mode.
🍐 'd with @ConradIrwin
2023-06-22 06:38:57 -06:00
Conrad Irwin
e1f975e52e
vim: Support s on selections and with multiple cursors
2023-06-21 15:44:19 -06:00
Conrad Irwin
dcca98b5cc
vim: Add basic 's' support
2023-06-21 15:06:34 -06:00
Conrad Irwin
0c40ed5d85
vim: ctrl+] and ctrl+o to jump to definition and back
...
Equivalent to f12 and ctrl-- in non-vim mode.
2023-06-21 14:34:35 -06:00
Conrad Irwin
d6b1af6244
vim: Allow up/down/left/right in vim mode
...
The user impact of this is to 5<down> to move 5 lines at a time.
2023-06-21 14:20:39 -06:00
Conrad Irwin
91bd8e305e
join_lines: Skip over leading indentation
2023-06-21 13:44:31 -06:00
Nate Butler
6ab0143469
Split Interactive into Interactive and Toggleable ( #2628 )
...
This is a part of the intensity driven theme rewrite.
It introduces the `toggle` and `interactive` helper functions to build
Toggle<T> and Interactive<T> styles for interactive elements in the
theme.
This PR also removes the `theme_testbench` crate and related actions.
Huge thanks to @osiewicz and @mikayla-maki for pushing this forward 🙏🏽
Release Notes:
- Updated the style of many interactive elements.
2023-06-21 15:03:08 -04:00
Kirill Bulatov
1f35ddc44e
Run LSP response deserialization outside of main thread ( #2635 )
...
Improves latency for big inlay hints LSP responses for ~8k line files.
Before, the CPU usage sample for editing a single line inside
`edirot.rs` file in Zed contained serde inside the main thread traces:
<img width="1728" alt="Screenshot 2023-06-21 at 00 33 23"
src="https://github.com/zed-industries/zed/assets/2690773/d9789efe-8055-487f-bbe7-8beb49605bcb ">
Release Notes:
- N/A
2023-06-21 21:03:18 +03:00
Joseph T. Lyons
cc027dc626
v0.93.x dev
2023-06-21 13:59:07 -04:00
Nate Butler
9d9bbfdabf
Format
2023-06-21 13:58:54 -04:00
Nate Butler
a845e82173
Update settings.json
2023-06-21 13:58:42 -04:00
Nathan Sobo
a365b2f177
Add shift-J binding to Vim normal mode
...
Co-Authored-By: Conrad Irwin <conrad.irwin@gmail.com>
2023-06-21 11:58:31 -06:00
Nate Butler
ed8bdd186e
Update toggle active styles
2023-06-21 13:56:27 -04:00
Nathan Sobo
cde8d7d747
Don't use test-only method; add ctrl-j binding
...
Co-Authored-By: Conrad Irwin <conrad.irwin@gmail.com>
2023-06-21 11:53:11 -06:00
Nathan Sobo
cf38264eda
Handle multiple selections when joining lines
...
Co-Authored-By: Conrad Irwin <conrad.irwin@gmail.com>
2023-06-21 11:47:06 -06:00
Nathan Sobo
61352f68ea
Add more assertions for joining lines at the end of the file
...
Co-Authored-By: Conrad Irwin <conrad.irwin@gmail.com>
2023-06-21 11:21:09 -06:00
Nathan Sobo
f07a929350
Allow joining multiple lines and deleting empty lines
...
Co-Authored-By: Conrad Irwin <conrad.irwin@gmail.com>
2023-06-21 11:18:28 -06:00
Nate Butler
127f4aa506
Fix status bar buttons
2023-06-21 13:14:39 -04:00
Piotr Osiewicz
86506a89ab
Remove theme_testbench
2023-06-21 19:11:55 +02:00
Piotr Osiewicz
d3a333b873
Tidy up xtask
2023-06-21 19:06:34 +02:00
Piotr Osiewicz
d194edc49f
xtask: publish = false
2023-06-21 18:51:06 +02:00
Piotr Osiewicz
9aa7a50951
Use xtask for theme generation
2023-06-21 18:48:09 +02:00
Nate Butler
af8671cf7f
Update rose pine theme family ( #2624 )
...
Update the Rose Pine theme family, including new syntax overrides
matching the official theme docs:
https://rosepinetheme.com/palette/ingredients/
Also adds a doc to our internal docs starting to outline how our syntax
highlighting works.
Before:
<img width="626" alt="CleanShot 2023-06-21 at 12 19 17@2x"
src="https://github.com/zed-industries/zed/assets/1714999/5ebe1cd0-1707-483b-a50f-bb53dbf89ba2 ">
After:
<img width="718" alt="CleanShot 2023-06-21 at 12 18 48@2x"
src="https://github.com/zed-industries/zed/assets/1714999/46b588aa-31a0-4402-934b-e3de7bc2f6b5 ">
From their site:
![image](https://github.com/zed-industries/zed/assets/1714999/83d4f671-e15f-4423-a01e-b382145e79fb )
Release Notes:
- Updated Rose Pine theme family to better match original theme.
2023-06-21 12:46:18 -04:00
Nathan Sobo
c48bd394c1
Start on joining lines
...
Co-Authored-By: Conrad Irwin <conrad.irwin@gmail.com>
2023-06-21 10:32:02 -06:00
Nate Butler
a3e65528ba
Update syntax colors
2023-06-21 12:21:01 -04:00
Nate Butler
eeb155a951
Remove unused light variable
2023-06-21 12:20:47 -04:00
Nate Butler
f0138a7a87
Add initial syntax highlighting doc
2023-06-21 12:15:24 -04:00
Sergey Onufrienko
6e4439b4ca
feat: move gen to styles and add scripts
2023-06-21 16:13:41 +02:00
Sergey Onufrienko
a9fec7f15b
fix: create schemas folder
2023-06-21 16:13:04 +02:00
Sergey Onufrienko
01b9e88079
chore: move schema gen to theme
2023-06-21 16:12:27 +02:00
Sergey Onufrienko
43b912bc40
chore: ignore generated files
2023-06-21 16:12:01 +02:00
Kirill Bulatov
bd97767c72
Run LSP response deserialization outside of main thread
...
Improves latency when big inlay hints LSP responses for ~8k line files
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-21 13:20:42 +03:00
Mikayla Maki
5860b7b143
Add copy-on-click to diagnostic messages ( #2634 )
...
I finally got fed up with being unable to copy error messages. This adds
a click target and tooltip to f8-style diagnostics that copies their
text on click.
Release Notes:
- Added the ability to copy under-line diagnostic errors on click
2023-06-20 17:05:20 -07:00
Mikayla Maki
11125a62c7
Add copy-on-click to diagnostic messages
2023-06-20 16:48:30 -07:00
Mikayla Maki
f1dc6124dd
Fix rebase mistake
2023-06-20 16:09:17 -07:00