Compare commits

..

1187 Commits

Author SHA1 Message Date
Antonio Scandurra
d5502090f8 Send only missing operations from client to server 2023-08-06 12:22:22 +02:00
Antonio Scandurra
8d7b37b743 Revisit synchronization routine to perform fewer roundtrips
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-08-04 19:42:02 +02:00
Antonio Scandurra
f1fe0007e3 Log roundtrips only when RUST_LOG=debug 2023-08-04 16:12:54 +02:00
Antonio Scandurra
d66af5c4d2 Avoid talking about trees when subdividing ranges 2023-08-04 15:49:08 +02:00
Antonio Scandurra
dc049ca7d2 💄 2023-08-04 15:01:39 +02:00
Antonio Scandurra
6251399d0a Add randomized test for synchronization 2023-08-04 11:49:14 +02:00
Antonio Scandurra
e979f753f2 Cleanup 2023-08-04 11:28:31 +02:00
Antonio Scandurra
80f9b553c7 Avoid mutating the server as we synchronize 2023-08-04 11:26:43 +02:00
Antonio Scandurra
bd0a9eb704 Test various depths, bases and min_operations in sync 2023-08-04 08:54:38 +02:00
Antonio Scandurra
52beac9fa5 💄 2023-08-03 19:33:38 +02:00
Antonio Scandurra
c603ef3f3d Get an initial implementation of sync working
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-08-03 18:57:16 +02:00
Antonio Scandurra
eb79ea6ee5 WIP
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-08-03 18:09:42 +02:00
Antonio Scandurra
26cb5e316d WIP 2023-08-03 15:22:23 +02:00
Nathan Sobo
974d07d304 Start on a different sync approach
We created a function range_digests, which creates a vector of digests for
a tree of nested ranges up to a certain depth or down to a certain range size.

Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-08-02 11:41:35 -06:00
Antonio Scandurra
d8f6dc3749 📝 2023-08-02 13:45:25 +02:00
Antonio Scandurra
3ebe2f97cc WIP: re-create a Checkout when reloading repo if it was published 2023-08-02 13:03:02 +02:00
Antonio Scandurra
400105cf18 Add todo 2023-08-02 09:51:12 +02:00
Antonio Scandurra
ba6f1d7281 Save dirty revisions in the background
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-08-01 17:14:08 +02:00
Antonio Scandurra
86b0ed8fda Implement Revision::load_documents
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-08-01 16:18:57 +02:00
Antonio Scandurra
50f507e38e Maintain ref counts for document handles 2023-08-01 15:07:32 +02:00
Antonio Scandurra
7fbe5910b9 Remove DbSnapshot 2023-08-01 10:05:06 +02:00
Antonio Scandurra
7f49ca4adb Simplify apply_operations 2023-08-01 09:48:17 +02:00
Antonio Scandurra
b751fe9e98 💄 2023-08-01 09:21:55 +02:00
Antonio Scandurra
85c9b30e9f Experiment with a RevisionCache struct 2023-07-31 16:32:10 +02:00
Antonio Scandurra
82c022adb3 Avoid descending into trees that have already been fully loaded 2023-07-31 15:18:05 +02:00
Antonio Scandurra
7494fdc738 Remove async_recursion from crdb 2023-07-31 14:20:01 +02:00
Antonio Scandurra
1919a5bb63 Use Arc<str> as the key type for RepoSnapshot::branch_ids_by_name 2023-07-31 14:16:20 +02:00
Antonio Scandurra
308c29d377 Remove Default constraint from btree::Map keys 2023-07-31 14:14:09 +02:00
Antonio Scandurra
eacb37e200 Fix basic collaboration test 2023-07-31 13:10:50 +02:00
Antonio Scandurra
083c857fa0 Rename traverse to rewind 2023-07-31 12:53:40 +02:00
Antonio Scandurra
1d0ff4bf8e Optimize revision traversal and reconstruction 2023-07-31 12:45:34 +02:00
Antonio Scandurra
9cbe3cca9a WIP 2023-07-31 11:57:38 +02:00
Antonio Scandurra
ce17cd83cf Redesign history traversal 2023-07-31 11:39:41 +02:00
Antonio Scandurra
05ec6b89c2 WIP 2023-07-30 13:45:31 +02:00
Antonio Scandurra
93701f9c5d Avoid incrementing operation id if it's unnecessary for causality 2023-07-30 12:15:34 +02:00
Antonio Scandurra
083bfc6cbc Reify a History struct
This has to be integrated still.
2023-07-30 11:57:02 +02:00
Antonio Scandurra
a084a93ef0 Make apply_operations asynchronous 2023-07-29 15:36:52 +02:00
Antonio Scandurra
84bf6c5a16 Use pointer equality to detect changes to the repo snapshot 2023-07-29 11:54:13 +02:00
Antonio Scandurra
e99f82f855 Start on loading/saving revisions 2023-07-29 11:54:02 +02:00
Antonio Scandurra
ba3353d127 Allow loading and saving of ropes
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-07-28 19:58:31 +02:00
Antonio Scandurra
2887c4674d Load fewer items in randomized tests for partially loaded trees 2023-07-28 19:57:03 +02:00
Antonio Scandurra
22e8a67498 Load branch from kv store if necessary
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-07-28 19:14:58 +02:00
Antonio Scandurra
4848ea8e62 Spawn a background task to save repo snapshots 2023-07-28 13:08:33 +02:00
Antonio Scandurra
3349f2147a Force all changes to a repository to take place via Repo::update 2023-07-28 12:45:51 +02:00
Antonio Scandurra
103d5293be Start on loading RepoSnapshots 2023-07-28 12:34:23 +02:00
Antonio Scandurra
1046b60fd2 Avoid cycling dependency between Client and Checkout 2023-07-28 11:15:49 +02:00
Antonio Scandurra
d5932717f2 WIP 2023-07-27 19:41:56 +02:00
Antonio Scandurra
8eeaacdf0a Pass a KvStore to Client and Server
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-07-27 18:03:55 +02:00
Antonio Scandurra
2de48f96d2 Simplify KvStore trait
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-07-27 17:49:16 +02:00
Antonio Scandurra
ba42db7069 Fix test for slice and summary to account for partial trees 2023-07-27 13:01:01 +02:00
Antonio Scandurra
02946e1e8f Merge branch 'main' into crdb 2023-07-27 12:41:12 +02:00
Antonio Scandurra
32c8eb2612 Correctly maintain cursor stack position when ascending in seek 2023-07-27 12:33:13 +02:00
Antonio Scandurra
d277e214bd Re-enable randomized tests for cursor movement in partially-loaded trees 2023-07-27 12:32:07 +02:00
Antonio Scandurra
cbc5dc04ef Avoid pushing empty leaves into the tree 2023-07-27 12:28:26 +02:00
Antonio Scandurra
198be71b6c Fix panic due to accidentally descending into unloaded node in cursor 2023-07-27 09:53:31 +02:00
Antonio Scandurra
5eede853f6 Don't call push_tree_recursive on leaf when appending unloaded node 2023-07-27 09:52:17 +02:00
Mikayla Maki
129e711545 Downgrade tree sitter elm to 5.6.4 (#2794)
The tree sitter elm parser contains a c symbol which collides with other
linked symbols. This PR downgrades the tree sitter elm parser to a
version which doesn't have this problem.

Release Notes:
- Fixed crash when parsing elm files
2023-07-26 15:54:55 -07:00
Mikayla Maki
d5c30709b3 Downgrade tree sitter elm to 5.6.4 2023-07-26 15:44:06 -07:00
Mikayla Maki
b8a2a2ecd3 Block extra drag events in original drag handlers (#2793)
In https://github.com/zed-industries/zed/pull/2790 I added an extra drag
event on mouse_up which signaled the end of a drag event, as mouse_up
event themselves wouldn't reliably fire if users moved their mouse too
quickly. This broke the assumptions of the terminal element. This PR
adds filters to all current on_drag handlers which removes this new
event.

Release Notes:

- Fixed a bug causing terminal links to never open (preview only)
- Fixed a bug in terminal link detection causing it to miss files with a
`-` in it
2023-07-26 15:15:31 -07:00
Mikayla Maki
354c020612 Block extra drag events in original drag handlers 2023-07-26 14:57:46 -07:00
Kyle Caverly
ee66f99ce6 Parallel vector db (#2792)
Parallelize Vector Database calls for project semantic search.

Release Notes: (Preview-only)

- Parallelize Vector database calls for project semantic search. Cuts
query time by 2/3rds.
- Removed default keymap for old semantic search modal.
2023-07-26 17:17:59 -04:00
KCaverly
fbede4a5a3 removed old code 2023-07-26 17:11:30 -04:00
KCaverly
e2b38f7a31 remove unused imports 2023-07-26 17:01:44 -04:00
KCaverly
06167889c3 remove default keymap for semantic search modal 2023-07-26 16:59:19 -04:00
KCaverly
5c48729c7c managed for small batch size edge case in semantic search 2023-07-26 16:56:41 -04:00
KCaverly
89bbcdfa4f remove debug logging for project_search semantic search 2023-07-26 16:51:25 -04:00
KCaverly
98fde36834 batch search queries in the vector database 2023-07-26 16:36:39 -04:00
Joseph T. Lyons
40fcec1495 Follow naming convention for menu items 2023-07-26 14:35:23 -04:00
Joseph T. Lyons
6cd10f3d5e v0.98.x dev 2023-07-26 13:27:55 -04:00
Derek Briggs
603387ace5 icon updates (#2791)
Updated app icon and icon system updates
2023-07-26 11:23:23 -06:00
Derek Briggs
9fc1ebcb5b icon updates 2023-07-26 11:19:34 -06:00
Mikayla Maki
711073cf3c Simple cascading split (#2790)
This PR cascades the split resizing to adjacent splits, if the current
split has already hit the minimum size. This PR also adds support for
detecting the end of a drag event to GPUI, via a bool on the dispatched
drag.

Release Notes:

- Made split resizing more flexible
2023-07-26 09:49:27 -07:00
Mikayla Maki
a58c9ed7d3 fmt 2023-07-26 09:39:35 -07:00
Mikayla Maki
56704c7c5f Remove placeholders 2023-07-26 09:37:52 -07:00
Antonio Scandurra
7282629f93 Ensure that loading the full tree is equivalent to the reference items 2023-07-26 18:05:06 +02:00
Antonio Scandurra
517591bced Load the relevant nodes before splicing in randomized test 2023-07-26 18:02:04 +02:00
Antonio Scandurra
4c5e248693 Start on a randomized test for persistence 2023-07-26 17:12:09 +02:00
Antonio Scandurra
b8066d444a Allow keeping nodes in the tree when pruning 2023-07-26 17:11:58 +02:00
Antonio Scandurra
f8cf74f9e8 Introduce InMemoryKv to test persistence 2023-07-26 16:50:28 +02:00
Antonio Scandurra
97cdad7f1a Implement Sequence::prune 2023-07-26 16:41:45 +02:00
Kyle Caverly
fc1844d684 Semantic search v2 (#2789)
Move semantic search from navigation modal, to project search option.
This PR is intended to be released in Preview only, and requires an
opt-in semantic_index option to enable. Without this opt-in setting
enable, the user should perceive no differences between previous project
search.

Release Notes: (Preview-only)

- Added Semantic Search as a opt-in feature within Project Search
- Show indexing feedback on indexing process within project search view
2023-07-26 10:34:58 -04:00
KCaverly
0b61c93a25 ensure semantic search is not enabled on stable 2023-07-26 10:22:33 -04:00
KCaverly
394a105639 fix warnings 2023-07-26 10:03:30 -04:00
Antonio Scandurra
1b803e498f Implement Sequence::load to selectively load subtrees 2023-07-26 15:57:49 +02:00
KCaverly
0ac919f6e0 catchup with main 2023-07-26 09:50:38 -04:00
Antonio Scandurra
7a851d42ad Add a Sequence::from_root function 2023-07-26 15:41:32 +02:00
KCaverly
ca6f7d8a80 add worktree previously indexed functionality to vector db 2023-07-26 09:17:04 -04:00
Antonio Scandurra
18412c3a06 Introduce ChildTree to identify loaded or unloaded subtrees 2023-07-26 13:41:31 +02:00
Antonio Scandurra
6e8b207104 Implement Sequence::save 2023-07-26 10:09:24 +02:00
Conrad Irwin
39f02c2b72 Add a mode indicator for vim (#2763)
Release Notes:

- vim: add a mode indicator
([#409](https://github.com/zed-industries/community/issues/409))

Now updated screenshots with @iamnbutler 
<img width="1043" alt="Screenshot 2023-07-25 at 11 11 57"
src="https://github.com/zed-industries/zed/assets/94272/8301479a-8b58-42d8-81a1-bc40e1e0a4df">
<img width="1043" alt="Screenshot 2023-07-25 at 11 12 00"
src="https://github.com/zed-industries/zed/assets/94272/89c3b8bd-9cbc-4fd7-ad10-dac5538ed3a3">
<img width="1043" alt="Screenshot 2023-07-25 at 11 12 12"
src="https://github.com/zed-industries/zed/assets/94272/adc87fe3-a720-4779-853b-df9443407046">
2023-07-25 20:18:23 -06:00
KCaverly
75999204ad update project search to only show semantic button visible with semantic_index enabled 2023-07-25 16:26:37 -04:00
Joseph T. Lyons
cc23360bab Add sort lines command (#2786)
This PR adds command palette actions for:

- `sort lines case sensitive`
- `sort lines case insensitive`
- `reverse lines`
- `shuffle lines`

Closes out:

- https://github.com/zed-industries/community/issues/658

and partially closing out:

- https://github.com/zed-industries/community/issues/57 (which is
currently a top-ranked issue)

There are issues with dedupe lines and I didn't try to tackle converting
variable names between different conventions. I'll likely close out 57
with a note to just upvote the remaining individual issues

Release Notes:

- added command palette actions for `sort lines case sensitive`, `sort
lines case insensitive`, `reverse lines`, and`shuffle lines`
(([#57](https://github.com/zed-industries/community/issues/57)),
([#658](https://github.com/zed-industries/community/issues/658)))
2023-07-25 15:39:45 -04:00
KCaverly
e8210b827d move visible text to just start anchor with context lines for semantic search 2023-07-25 15:24:27 -04:00
KCaverly
cdceddd2cc update semantic index tests for elixir 2023-07-25 15:20:35 -04:00
Joseph T. Lyons
4085df5146 Add tests for manipulate_lines() 2023-07-25 15:17:16 -04:00
Conrad Irwin
64b252e81a A little refactor
Co-Authored-By: Mikayla Maki <mikayla.c.maki@gmail.com>
2023-07-25 12:55:01 -06:00
Joseph T. Lyons
bf2ca57f55 Remove { and } from single-line closure 2023-07-25 14:48:11 -04:00
Mikayla Maki
c32fd57643 Add support for Elm and GLSL (#2782)
This adds tree-sitter grammars for both Elm and GLSL, with injections
for GLSL embedded within Elm. It also adds an `outline.scm` for Elm,
though limitations in the tree-sitter grammar meant that I wasn't able
to get it looking exactly how I'd have liked.

In particular, it wasn't clear how to nicely annotate functions in the
outline as being functions, or how to prevent the fields of a record
declaration from being increasingly indented.


![image](https://github.com/zed-industries/zed/assets/285821/544bc00b-3bfc-4ec7-be9d-764b9f0292ab)

![image](https://github.com/zed-industries/zed/assets/285821/74e57e95-bf87-4989-ae29-a2f625141bcf)

![image](https://github.com/zed-industries/zed/assets/285821/9e283c78-66d5-4c15-9827-1b5b446cdc37)

fixes https://github.com/zed-industries/community/issues/598

Release Notes:
- Added syntax highlighting for the Elm and GLSL languages
2023-07-25 11:34:22 -07:00
Joseph T. Lyons
93ec73da29 Fix code computing new selections
Co-Authored-By: Mikayla Maki <mikayla.c.maki@gmail.com>
2023-07-25 14:04:25 -04:00
KCaverly
97c3d97792 update semantic index tests for cpp 2023-07-25 13:30:38 -04:00
Conrad Irwin
1f65effe57 Update status bar theming
Co-Authored-By: Nate Butler <iamnbutler@gmail.com>
2023-07-25 11:06:41 -06:00
Antonio Scandurra
3c3bf793e3 Rename SeekTarget::cmp to SeekTarget::seek_cmp
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-07-25 18:07:01 +02:00
Antonio Scandurra
ca57c1839c Fork crdb-specific copies of rope and sum_tree (renamed to btree)
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-07-25 18:04:28 +02:00
Joseph T. Lyons
299818cde0 Fix rand import and tweak callbacks
Co-Authored-By: Julia <30666851+ForLoveOfCats@users.noreply.github.com>
2023-07-25 11:44:13 -04:00
KCaverly
c86096a886 update semantic index tests for javascript 2023-07-25 10:38:37 -04:00
Joseph T. Lyons
1a84382881 WIP 2023-07-25 10:33:20 -04:00
Antonio Scandurra
f3928c8c26 Allow cloning of repos to fail
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-07-25 16:31:16 +02:00
Antonio Scandurra
94f7ddbcb2 Allow saving and loading of test plans for randomized test in CRDB
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-07-25 16:20:01 +02:00
Antonio Scandurra
369d85b82e Print RepoId as a number in tests
We are not going to generate repository ids randomly, so we can
take advantage of that and print a nicer representation of
the repository id.

Co-Authored-By: Julia Risley <julia@zed.dev>
2023-07-25 15:33:14 +02:00
Antonio Scandurra
cbdb83fb43 Extract test operation generation and application into methods
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-07-25 15:25:54 +02:00
Antonio Scandurra
309e307fa8 Remove warning
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-07-25 15:25:40 +02:00
Antonio Scandurra
e9342e1b47 Deterministically assign repo IDs in tests 2023-07-25 15:10:16 +02:00
Antonio Scandurra
edc63ee3ff Avoid panicking when previous stack trace doesn't have the same length 2023-07-25 15:10:16 +02:00
Antonio Scandurra
88829dfe21 Use test-support feature for collections in dev 2023-07-25 15:10:13 +02:00
Antonio Scandurra
1ada3722e5 Avoid creating empty document fragments 2023-07-25 12:40:50 +02:00
Antonio Scandurra
1e644b7a45 Keep insertion fragments up-to-date 2023-07-25 12:02:13 +02:00
Antonio Scandurra
eb36bc5b62 Use preceding fragment when edit starts at the beginning of a fragment 2023-07-25 11:27:43 +02:00
Antonio Scandurra
31f84cef14 Broadcast operations when synchronizing with the server 2023-07-25 10:05:59 +02:00
Antonio Scandurra
9358958b1f Observe lamport timestamps when applying operations 2023-07-25 09:58:38 +02:00
Antonio Scandurra
bbe126818f Avoid skipping sentinel as it'll happen organically when applying edit 2023-07-25 09:51:56 +02:00
Joseph T. Lyons
bdd0b9f387 Add open file in project finder via space (#2785)
@mikayla-maki for 👀 

[This PR added in the ability to rename a file via
`enter`](https://github.com/zed-industries/zed/pull/2784). Previously,
`enter` was used to both open a file and confirm a rename, so this PR
changes the opening of a file to use `space`, which is what VS Code
uses. It also makes a bit more sense because now `enter` is just used to
start a rename and confirm the rename, vs being used for 2 different
actions.

N/A on the release notes, as I adjusted the release note in the
previously-tagged PR.

Release Notes:

- N/A
2023-07-24 16:35:01 -04:00
Max Brunsfeld
a01d973477 More git status optimizations (#2779)
Follow-up to https://github.com/zed-industries/zed/pull/2777
Refs https://github.com/zed-industries/community/issues/1770

In this PR, I reworked the way that git statuses are retrieved. In a
huge repository like `WebKit`, the really slow part of computing a list
of git statuses is the *unstaged* portion of the diff. For the *staged*
diff, `git` can avoid comparing the contents of unchanged directories,
because the index contains hashes of every tree. But for the *unstaged*
portion, Git needs to compare every file in the worktree against the
index. In the common case, when there are no changes, it's enough to
check the `mtime` of every file (because the index stores the mtimes of
files when they are added). But this still requires an `lstat` call to
retrieve each file's metadata.

I realized that this is redundant work, because the worktree is
*already* calling `lstat` on every file, and caching their metadata. So
in this PR, I've changed the `Repository` API so that there are separate
methods for retrieving a file's *staged* and *unstaged* statuses. The
*staged* statuses are retrieved in one giant batch, like before, to
reduce our git calls (which also have an inherent cost). But the
`unstaged` statuses are retrieved one-by-one, after we load files'
mtimes. Often, all that's required is an index lookup, and an mtime
comparison.

With this optimization, it once again becomes pretty responsive to open
`WebKit` or `chromium` in Zed.

Release Notes:

- Optimized the loading of project file when working in very large git
repositories
2023-07-24 11:23:32 -07:00
Quinn Wilton
e199a6a3a1 Highlight all Elm function calls 2023-07-24 10:55:15 -07:00
Mikayla Maki
7603659479 Add MacOS standard key binding for file renames (#2784)
Release Notes:

- Added a default keybinding for using enter to rename files in the
project panel
2023-07-24 10:46:43 -07:00
Quinn Wilton
3cc88904bf Add all Elm functions to the outline, including locals 2023-07-24 10:45:46 -07:00
Quinn Wilton
62ee52a5fc Highlight qualified Elm function calls 2023-07-24 10:45:15 -07:00
Quinn Wilton
fbe0108959 Highlight Elm arrows as keywords 2023-07-24 10:44:56 -07:00
Mikayla Maki
41105136a4 Add MacOS standard key binding for file renames 2023-07-24 10:20:10 -07:00
Mikayla Maki
d95c4fdb2b Remove unbound highlight queries 2023-07-24 09:01:15 -07:00
Conrad Irwin
baa16a2fc6 Better method ordering 2023-07-24 09:57:51 -06:00
Antonio Scandurra
7d02462abd Broadcast operations only after server acknowledges them
There was a test failure that was caused by the following sequence of
events:

1. Client 1 generates an operation and broadcasted it.
2. Client 2 joins, but it was too late to receive the operation from the network.
3. Client 2 synchronizes with the server, but it was too early to receive
operations from the server.
4. Client 1 finally sends the operation to the server.
2023-07-24 17:53:01 +02:00
Mikayla Maki
ea74734b0a Touch up elm tree sitter integration 2023-07-24 08:52:51 -07:00
Conrad Irwin
43d94e37ec Refactor mode indicator to remove itself
One of the problems we had is that the status_bar shows a gap between
items, and we want to not add an additional gap for an invisible status
indicator.
2023-07-24 09:51:54 -06:00
Mikayla Maki
25e4bcea7f Implement cascading resize algorithm 2023-07-24 08:04:46 -07:00
Antonio Scandurra
fa48d59de4 Generate edit operation correctly when range is at the end of fragment 2023-07-24 16:55:17 +02:00
Antonio Scandurra
439f6ba616 Use end fragment to determine the new insertion's fragment location 2023-07-24 16:46:43 +02:00
Antonio Scandurra
729ea89fef Create room before inserting repo into database
This ensures that clones of the repo will either see the repo and
be able to join the room, or not see the repo at all.
2023-07-24 16:40:09 +02:00
Antonio Scandurra
8c5eab6933 Assert branches are the same between client and server 2023-07-24 16:24:43 +02:00
Antonio Scandurra
5118218a9c Start on a randomized test for CRDB 2023-07-24 15:16:57 +02:00
Kirill Bulatov
52154f76ac Fixes a crash when SelectAllMatches action was called on no matches (#2783)
Release Notes:

- Fixes a crash when SelectAllMatches action was called on no matches
2023-07-24 15:48:45 +03:00
Kirill Bulatov
7dccb487de Fixes a crash when SelectAllMatches action was called on no matches 2023-07-24 15:42:10 +03:00
Quinn Wilton
6ad0852a70 Add outline.scm for Elm 2023-07-24 00:58:59 -07:00
Quinn Wilton
dd504f5965 Add tree-sitter-glsl 2023-07-23 22:22:11 -07:00
Quinn Wilton
a4914fcf3b Add tree-sitter-elm 2023-07-23 22:22:11 -07:00
Max Brunsfeld
8fff0b0ff8 Fix pathspec in staged_statuses
Enable non-literal matching so that directory paths match
all files contained within them.
2023-07-23 21:36:29 -07:00
Mikayla Maki
429a2fc623 Add drag end events
Fix left dragging cascade
WIP: Implement right dragging, WIP: use drag end events to set and reset state around initial flex orientation
2023-07-23 13:28:30 -07:00
Antonio Scandurra
3dee2faa44 Assign a valid location after intersecting fragments 2023-07-23 18:51:21 +02:00
Antonio Scandurra
c1f72328ff Avoid taking fragment when not fully consuming it 2023-07-23 18:50:57 +02:00
Antonio Scandurra
18b32304e2 Serialize message envelope instead of directly serializing operation 2023-07-23 18:49:54 +02:00
Mikayla Maki
28ee05b324 WIP: cascade split resizes 2023-07-23 01:20:25 -07:00
Mikayla Maki
b4b53eb5f1 Refactor resize handle code to be amenable to cascading resizes 2023-07-22 21:48:45 -07:00
Max Brunsfeld
a3a9d024ba Fix filtering of staged statuses 2023-07-22 17:53:58 -07:00
Max Brunsfeld
b338ffe8d8 Rely on git status for any paths not matching the git index 2023-07-22 17:47:36 -07:00
Kirill Bulatov
e0915190d4 In terminal, open paths starting with ~ and focus on project panel when opening directories (#2780)
Further improves terminal navigation with cmd+click, now allowing to
open paths starting with `~` (if they are present otherwise) and
focusing project panel with highlighted entry for the directories
opened.

Release Notes:

- Further improves terminal navigation with cmd+click, now allowing to
open paths starting with `~` (if they are present otherwise) and
focusing project panel with highlighted entry for the directories
opened.
2023-07-23 00:23:19 +03:00
Kirill Bulatov
f05095a6dd Focus project panel on directory select 2023-07-23 00:12:25 +03:00
Max Brunsfeld
6c09782aa2 Optimize full file status via passing in known file mtime 2023-07-22 11:53:26 -07:00
Nathan Sobo
3920bff5e0 WIP: Add a test for relaying edits between clients
Still not passing, but added:

- Connect the network room before creating checkouts.
- Blow up in tests when there are errors applying operations on the server.
- Avoid overshooting the last fragment when in fragment_locations.
2023-07-21 22:21:53 -06:00
Max Brunsfeld
51d311affd Compute unstaged git status separately, to take advantage of our cached file mtimes 2023-07-21 17:58:43 -07:00
Max Brunsfeld
ff0864026e Only fetch statuses for changed paths 2023-07-21 17:08:31 -07:00
Max Brunsfeld
05b161118c Don't call git status when ignored files change 2023-07-21 17:05:42 -07:00
Kirill Bulatov
dcaf8a9af8 Open paths starting with ~ from terminal click 2023-07-22 01:34:25 +03:00
Conrad Irwin
d14a484a20 Add support for adding/removing status items 2023-07-21 16:06:14 -06:00
Conrad Irwin
458916409c Add a mode indicator for vim
This is the second most common remaining complaint (after :w not
working).

Fixes: zed-industries/community#409
2023-07-21 16:06:14 -06:00
Max Brunsfeld
7788eabec0 Avoid performance bottlenecks from git status calls during worktree scanning (#2777)
Closes
https://linear.app/zed-industries/issue/Z-2689/huge-slowdown-when-working-in-large-git-repositories-like-webkit
Closes https://github.com/zed-industries/community/issues/1770

In large git repositories (like Webkit), `git status` can be very slow.
And our current approach of retrieving git statuses (one by one as we
load paths), causes catastrophic slowdowns in these repos. This PR
further optimizes our retrieval of git statuses (started in
https://github.com/zed-industries/zed/pull/2728), so that when scanning
a directory, we only load git statuses once, in a single batch, at the
beginning of the scan.

There is still an initial lag when opening `WebKit` in Zed, while the
initial git status runs. But once this call completes, everything is
fast. Let's come back to this problem later.

For now, this makes Zed's directory scanning massively more efficient,
even in the case of normal-sized repos like `zed`. The git status code
was a huge percentage of zed's CPU usage when launching. Here is that
code, highlighted in a flamegraph before and after this change:

Before:

![before](https://github.com/zed-industries/zed/assets/326587/627012f2-6131-44ac-95c2-ea4a4531cb24)

After:

![after](https://github.com/zed-industries/zed/assets/326587/a11a3e1b-e925-4bff-a421-ea71cb4de85d)


Release Notes:

- Fixed a bug where project paths took a very long time to load when
working in large git repositories
([#1770](https://github.com/zed-industries/community/issues/1770))
2023-07-21 14:46:53 -07:00
Kirill Bulatov
bd9118f673 Do not scroll when selecting all (#2778)
In big buffers, when I press `cmd-a`, the view gets scrolled to the very
bottom.
Usually it's now that I want, I can scroll to bottom with `cmd-down`
separately, and selecting all text is used for copy-pasting it
somewhere, no need to scroll anywhere for that — I can get back to the
same place later.

Release Notes:

- Removed the scroll to the end of the editor after `editor::SelectAll`
action
2023-07-22 00:25:37 +03:00
Kirill Bulatov
c538504b9c Do not scroll when selecting all 2023-07-22 00:17:02 +03:00
Max Brunsfeld
4bd415f2b6 Retrieve git statuses in one batch when scanning dirs 2023-07-21 13:50:54 -07:00
Nathan Sobo
b7e79d5241 Get basic test of repository cloning working 2023-07-21 14:31:11 -06:00
Kirill Bulatov
25ea07cd41 When renaming in project panel, select file names without extensions (#2776)
Closes
https://github.com/zed-industries/community/issues/1789#issuecomment-1646061712

<img width="196" alt="Screenshot 2023-07-21 at 23 23 47"
src="https://github.com/zed-industries/zed/assets/2690773/f5c7025b-6dc8-4f0c-81e5-3cc98a3a9c8b">
<img width="197" alt="Screenshot 2023-07-21 at 23 23 52"
src="https://github.com/zed-industries/zed/assets/2690773/596f8ab0-15e0-4285-be34-ce4c276b686f">

When renaming in project panel, select file names without extensions.

Release Notes:

- Improved project panel rename by selecting file names without
extensions
2023-07-21 23:30:55 +03:00
Kirill Bulatov
33b215a288 Add search in directory action in the project panel (#2774)
Part of https://github.com/zed-industries/zed/issues/1153
Closes https://github.com/zed-industries/community/issues/1326

<img width="432" alt="image"
src="https://github.com/zed-industries/zed/assets/2690773/a50ee073-9d2e-4e5c-ae5e-23312693c540">

Adds an `project_panel::NewSearchInDirectory` action ("alt-shift-f"
default) in the project editor context to open a new project search in
the selected directory.

Release Notes:

- Adds an action to open project search in the project panel's directory
2023-07-21 23:25:45 +03:00
Julia
f2c9738a69 Put our downloaded copy of Node in the env for every NPM action (#2775)
Intelephense (PHP language server) has a dependency on `protobufjs`
which invokes `node` in the `postinstall` script and if the user did not
have a system Node runtime installed that would fail. Have this use our
downloaded installation too

Fixes
https://linear.app/zed-industries/issue/Z-2687/php-language-server-failed

Release Notes:
- Fixed PHP language server installation on systems without a system
Node installation.
2023-07-21 16:24:05 -04:00
Kirill Bulatov
804da68af7 When renaming in project panel, select file names without extensions 2023-07-21 23:22:22 +03:00
Julia
2d8159998d Put our downloaded copy of Node in the env for every NPM action
Intelephense (PHP language server) has a dependency on `protobufjs`
which invokes `node` in the `postinstall` script and if the user did
not have a system Node runtime installed that would fail. Have this
use our downloaded installation too
2023-07-21 16:13:00 -04:00
Kirill Bulatov
595bc16749 Add search in directory action in the project panel 2023-07-21 22:47:57 +03:00
Julia
e002d9efb0 Avoid panic from assuming a vim operator exists on the operator stack (#2773)
Fixes
https://linear.app/zed-industries/issue/Z-338/operator-popped-when-no-operator-was-on-the-stack-this-likely-means

Release Notes:
- Fixed a panic that could occur when invoking a Vim object without an
operator.
2023-07-21 14:47:38 -04:00
Julia
243a1a854e Avoid panic from assuming a vim operator exists on the operator stack 2023-07-21 14:25:30 -04:00
Antonio Scandurra
a81fde36e0 WIP 2023-07-21 19:52:27 +02:00
Antonio Scandurra
60f5dca222 Rework operations::Edit::apply
It still doesn't work but it's in a coherent state now at least.
2023-07-21 19:32:26 +02:00
Conrad Irwin
56c657fe79 Vim shortcuts (#2760)
Refactors some of the vim bindings to make the vim.json file less
obtuse.

Release Notes:

- vim: add `;` and `,` to repeat last `{f,F,t,T}`
- vim: add zed-specific shortcuts for common IDE actions:
- - `g A` to find all references
- - `g .` to open the code actions menu.
- - `c d` for rename
2023-07-21 10:31:18 -06:00
Conrad Irwin
4772e4ccee vim: add , and ; 2023-07-21 09:50:22 -06:00
Conrad Irwin
a50d30bf8e Quality of life shortcuts for code actions 2023-07-21 09:47:15 -06:00
Conrad Irwin
8ba69c15d1 refactor: Remove G/Z Namespace support
This previously enabled things like `d g g` to work, but we can
fix that instead by not clearing out pending vim state on change.

Either way, it is unnecessary and causes some user-confusion
(zed-industries/community#176), so remove this code for now; and use
comments to organize the file a bit instead.
2023-07-21 09:47:14 -06:00
Conrad Irwin
bf2583414b Fix shift-enter in search (#2772)
Fixes shift-enter to go to previous result.

Release Notes:

- To type a newline in search use `ctrl-enter` (or `ctrl-shift-enter`
for a newline below).
2023-07-21 09:23:04 -06:00
Conrad Irwin
807279208d Fix shift-enter in search
If you want to type a newline in an auto_height editor, ctrl and
ctrl-shift are your friends.
2023-07-21 09:10:12 -06:00
Joseph T. Lyons
5f89de0b80 Add key binding to close all docks (#2769)
Fixes:
https://linear.app/zed-industries/issue/Z-2680/add-a-close-all-docks-action

I frequently get stuck in this state:

<img width="1608" alt="SCR-20230721-dgvs"
src="https://github.com/zed-industries/zed/assets/19867440/13257e6d-f75a-4d1c-9718-153499e90c60">

I could zoom, but I dont want to in this case, I just want to close
everything, to get back to a truly decluttered state. Running 3 toggle
commands is cumbersome. I'd like to be able to close all docks with one
action.

I added an action with the key binding `alt-cmd-y` (similar
to`alt-cmd-t`, which is used to close all tabs). My original choice was
`alt-cmd-d` (`d` for dock), but that is the default macOS key binding to
hide the system dock.


Release Notes:

- Added a `workspace: close all docks` action (deployed via
`alt-cmd-y`).
2023-07-21 11:08:43 -04:00
Antonio Scandurra
45037eb7a0 WIP 2023-07-21 16:55:31 +02:00
Antonio Scandurra
4e085a6f2d Apply operations only via revision 2023-07-21 12:00:38 +02:00
Antonio Scandurra
517d073806 Remove unused use statement 2023-07-21 11:28:19 +02:00
Antonio Scandurra
cbc4b90df8 Apply missing operations to the common ancestor revision
Interestingly, when applying an `Edit` operation, we need to know the
parent revision, which makes the `revision` method recursive.
2023-07-21 11:19:00 +02:00
Kirill Bulatov
35400d5797 Do not highlight fake URLs in terminal (#2770)
Closes https://github.com/zed-industries/community/issues/1794
See also https://github.com/alacritty/alacritty/pull/7101

Release Notes:

- Fixed terminal incorrectly highlighting certain strings as URLs
2023-07-21 11:57:29 +03:00
Antonio Scandurra
1ddd3971d8 Use the new RepoSnapshot::revision method 2023-07-21 10:50:00 +02:00
Antonio Scandurra
939eaaa973 💄 2023-07-21 10:35:19 +02:00
Antonio Scandurra
baf06043cb Reify a RevisionId struct 2023-07-21 10:30:28 +02:00
Kirill Bulatov
cd3620692b Do not highlight fake URLs in terminal 2023-07-21 11:28:56 +03:00
Antonio Scandurra
12acc7418e Refine finding of common ancestor revision and find missing operations 2023-07-21 09:44:17 +02:00
Joseph T. Lyons
d98fcc4402 Add key binding to close all docks 2023-07-21 02:44:44 -04:00
Nathan Sobo
02ea88aa51 Start on a RepoSnapshot::revision method to find/construct a revision from an id 2023-07-20 21:38:53 -06:00
Conrad Irwin
57b6e25278 Fix enter in search (#2768)
Fixes a regression in non-vim search caused by my changes to vim search.

Release Notes:

- N/A
2023-07-20 20:53:31 -06:00
Conrad Irwin
7337910034 Fix enter in search 2023-07-20 20:48:36 -06:00
Mikayla Maki
76188c9508 Add wrap guides (#2767)
fixes https://github.com/zed-industries/community/issues/48

Release notes
- Added wrap guides and two associated language settings:
`"show_wrap_guides": bool` and `"wrap_guides": [..]`. The first controls
whether wrap guides are shown when `"soft_wrap":
"preferred_line_length"` is enabled and the second allows Zed to show
additional wrap guides at whichever column index you prefer.

Here's a screenshot of Zed with wrap guides at 60 and 90, and soft wrap
active with a preferred_line_length of 80:

<img width="956" alt="Screenshot 2023-07-20 at 4 42 11 PM"
src="https://github.com/zed-industries/zed/assets/2280405/48f36be1-3bdc-48eb-bfca-e61fcfd6dbc2">
2023-07-20 17:15:06 -07:00
Mikayla Maki
05a8409363 bump the brightness of the active wrap guide 2023-07-20 16:45:41 -07:00
Mikayla Maki
a9bfe97361 Add wrap guides and associated settings 2023-07-20 16:39:13 -07:00
Max Brunsfeld
81b05f2a08 Optimize glob filtering of semantic search
Co-authored-by: Kyle <kyle@zed.dev>
2023-07-20 14:23:11 -07:00
Derek Briggs
4557adf693 Icon adjustments (#2766)
Icon tweaks
2023-07-20 15:06:50 -06:00
Derek Briggs
1d1da74d72 Adjustment 2023-07-20 15:05:26 -06:00
Derek Briggs
0769458ae4 Detail adjustments 2023-07-20 15:04:23 -06:00
Mikayla Maki
a85af79892 Folder icons (#2764)
- Updates icons and adds more
- Adds ability to choose folders or chevrons in user settings
- Adds ability to set indent size in user settings
2023-07-20 13:59:21 -07:00
Mikayla Maki
6b95ac9b26 fmt 2023-07-20 13:45:19 -07:00
Joseph T. Lyons
719c56734a Reuse previously-obtained call object 2023-07-20 16:21:21 -04:00
Joseph T. Lyons
6095525b56 Add microphone toggle events (#2765)
Release Notes:

- N/A
2023-07-20 16:10:20 -04:00
Joseph T. Lyons
429daf5f8c Add microphone events to calls 2023-07-20 16:00:11 -04:00
Joseph T. Lyons
7d3d54652b Remove unused method 2023-07-20 15:54:26 -04:00
Derek Briggs
1242b5b4a2 Solid tab on folder icon 2023-07-20 13:13:44 -06:00
Julia
0b6155609d In macOS platform layer map a ctrl-click to a right click (#2755)
Maps a ctrl left down event into a ctrl-less right down and then up pair
and filters out ctrl left up. Hopefully this ensures that mouse down/up
events remain balanced and somewhat matching.

Release Notes:
- Added the ability to ctrl-click in place of right click to summon
context menus
([#1150](https://github.com/zed-industries/community/issues/1150)).
2023-07-20 14:54:55 -04:00
Derek Briggs
abb145da70 add indent size to project panel settings 2023-07-20 12:30:35 -06:00
Derek Briggs
95947f6d3a icon adjustment 2023-07-20 12:29:57 -06:00
Derek Briggs
c56d62fd84 gitmodules to git icon 2023-07-20 12:29:50 -06:00
Derek Briggs
0e068a644f organize settings 2023-07-20 12:23:47 -06:00
Derek Briggs
13ae1249f5 Allow for folders or chevrons 2023-07-20 12:23:28 -06:00
Nate Butler
2f4e5b7e0e Add the local and declare keywords to bash syntax highlighting (#2761)
Release Notes:

- Improved Bash / Shell Script syntax highlighting
2023-07-20 14:17:29 -04:00
Derek Briggs
a7695c47bf Update default settings 2023-07-20 12:03:07 -06:00
Derek Briggs
8f0b24b264 Add moar icons 2023-07-20 12:01:41 -06:00
Mikayla Maki
0e9cad4935 Add a double click to reset resized splits (#2762)
fixes https://github.com/zed-industries/community/issues/1791

Release Notes:

- Double clicking on split resize handles now resets the split's
dimensions
2023-07-20 10:55:19 -07:00
KCaverly
e02d6bc0d4 add glob filtering functionality to semantic search 2023-07-20 13:46:27 -04:00
Mikayla Maki
d84d663ac3 fmt 2023-07-20 10:36:23 -07:00
Mikayla Maki
4d1dbb8aa3 Add a double click to reset resized splits 2023-07-20 10:33:28 -07:00
Nate Butler
5d22a300c3 Add the local and declare keywords to bash syntax highlighting 2023-07-20 13:18:15 -04:00
Conrad Irwin
372f66c88a Add workspace::ActivatePaneInDirection (#2757)
This change adds support for choosing a pane based on direction; and
adds default keybindings (`cmd+k cmd+{left,right,up,down}`) and vim
keybindings.

Release Notes:

- Add support for navigating to the next pane in a given direction using
`cmd+k cmd-{up,down,left,right}`
([#476](https://github.com/zed-industries/community/issues/476),
[#478](https://github.com/zed-industries/community/issues/478))
- Vim: adds support for many window related shortcuts: `ctrl-w
{h,j,k,l,up,down,left,right,w,W,p}` for navigating around panes, `ctrl-w
{q,c}` for closing panes and `ctrl-w {v,s}` for splitting panes.
2023-07-20 11:17:13 -06:00
Conrad Irwin
0e984e1e69 Ignore off-screen cursors 2023-07-20 11:11:47 -06:00
Conrad Irwin
464cc2e71a Assertions for assumptions 2023-07-20 11:11:37 -06:00
Conrad Irwin
d6a463afb8 Better calculation of pane distance 2023-07-20 11:06:16 -06:00
Derek Briggs
f051e66231 code icon adjustment 2023-07-20 10:15:20 -06:00
Derek Briggs
a90b151d52 Updated icons with additions 2023-07-20 10:07:32 -06:00
Antonio Scandurra
9d04228853 Add document_id to Edit operation 2023-07-20 17:45:31 +02:00
Kirill Bulatov
54378a5f57 Keep basic line height for single line editors (#2759) 2023-07-20 17:37:41 +03:00
Kirill Bulatov
0237276557 Fully revert the line height change 2023-07-20 15:39:22 +03:00
Antonio Scandurra
56b1aaa6cb WIP: start on Edit::apply 2023-07-20 14:23:51 +02:00
Antonio Scandurra
e771ede830 Test accessing branches and documents from a different client 2023-07-20 14:12:34 +02:00
Antonio Scandurra
55232486d7 Remove ancestors of the new operation from the head revision 2023-07-20 13:43:03 +02:00
Antonio Scandurra
8c1973c5a2 Make CreateDocument infallible 2023-07-20 13:12:44 +02:00
Antonio Scandurra
287dfc0460 Take a revision instead of a repo snapshot when applying branch ops 2023-07-20 13:11:07 +02:00
Antonio Scandurra
4a8556cd81 Save operation in the DAG only when we're able to apply it 2023-07-20 12:56:46 +02:00
Kirill Bulatov
0e6048a85d Keep basic line height for single line editors 2023-07-20 13:42:11 +03:00
Antonio Scandurra
900deaab50 Apply CreateBranch and CreateDocument operations 2023-07-20 11:56:22 +02:00
Kirill Bulatov
257dd57fe4 Properly display keybindings in context menus (#2758)
Fixes https://github.com/zed-industries/community/issues/1751


![image](https://github.com/zed-industries/zed/assets/2690773/cbf29eca-0fca-4aff-be50-810eb80fdcb5)

![image](https://github.com/zed-industries/zed/assets/2690773/330054eb-ba92-4c8f-862f-06f276cc262b)


Release Notes:

- Fixed context menu keybindings not updating with custom keybinding
values
2023-07-20 12:25:41 +03:00
Kirill Bulatov
a5e63fbf77 Properly display keybindings in context menus 2023-07-20 12:18:04 +03:00
Antonio Scandurra
30bac17749 Save deferred operation ids only and store operations separately 2023-07-20 09:17:55 +02:00
Nathan Sobo
d675f10447 Flush deferred operations 2023-07-19 22:37:56 -06:00
Conrad Irwin
15dc8b43c4 Default keybindings for activating pane by direction
Breaking change: previously cmd-k cmd-{left,right} moved to the
{previous,next} pane; now they will move in the specified direction.
2023-07-19 18:33:08 -06:00
Conrad Irwin
2762f9b1c6 vim: Add support for ctrl-w commands
Primarily {h,j,k,l,left,right,up,down} for moving to a pane by
direction; but also {w,W,p} for going forward/back, and {v,s} for
splitting a pane vertically/horizontally, and {c,q} to close a pane.

There are a large number of ctrl-w commands that are not supported, and
which fall into three buckets:

* switch this pane with that one (VScode also has this, and it's a
  requested feature)
* move to top/bottom/leftmost/rightmost
* counts on any of these
* jump to "definition/file-under-cursor/etc.etc." in a new pane.
2023-07-19 18:29:13 -06:00
Conrad Irwin
e1379f0ef0 Add support for activating a pane by direction
Contributes: zed-industries/community#476
Contributes: zed-industries/community#478
2023-07-19 18:29:11 -06:00
Mikayla Maki
6f1dcb4e94 Fix buffer_line_height bugs (#2756)
Release Notes:

- Bug fix: Raise minimum line height to 1.1
- Bug fix: Disable buffer_line_height setting in non-buffer UI
2023-07-19 17:11:45 -07:00
Mikayla Maki
cb97f5a69c fmt 2023-07-19 16:56:49 -07:00
Mikayla Maki
aa67413abc Raise minimum line height to 1.1
Disable buffer_line_height setting in non-buffer editors
2023-07-19 16:55:28 -07:00
Conrad Irwin
b13e86aba6 Make tab non-functional in vim mode (#2753)
Make tab do nothing (a surprisingly common vim request).

- Fixes
([#988](https://github.com/zed-industries/community/issues/988)).
- Fixes
([#897](https://github.com/zed-industries/community/issues/897)).
2023-07-19 16:26:32 -06:00
Nathan Sobo
b774d83a50 Map sum_tree types to crdb::btree::{Map, Set, Sequence} 2023-07-19 15:49:52 -06:00
Nathan Sobo
b636398093 WIP 2023-07-19 15:38:16 -06:00
Nathan Sobo
88c46e091e Defer operations when their parent is missing 2023-07-19 15:28:22 -06:00
KCaverly
efe973ebe2 add embedding query for json with nested arrays and strings
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-07-19 16:52:44 -04:00
Joseph T. Lyons
7e904183bf Fix return type in watch_file_types() 2023-07-19 16:24:29 -04:00
KCaverly
9809ec3d70 update treesitter parsing to accomodate for collapsed nested functions
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-07-19 15:47:05 -04:00
Julia
2e3aa703d9 In macOS platform layer map a ctrl-click to a right click 2023-07-19 15:43:45 -04:00
Mikayla Maki
491b3d5515 Mute mics by default (#2754)
This adds a setting to mute mics by default.

fixes https://github.com/zed-industries/community/issues/1769

Release notes:

- Fixed a bug with gutter spacing on files that end on a new significant
digit
- Added a setting for muting on join, and set it to true by default.
2023-07-19 12:42:30 -07:00
Mikayla Maki
1e4bddd276 fmt 2023-07-19 12:34:56 -07:00
Mikayla Maki
5ceb258b3e Mute mics by default
Fix bug when file ends in line with 1 more digit displayed than previous lines
Remove stale UI elements from voice call development
2023-07-19 12:34:24 -07:00
Joseph T. Lyons
34488ca863 v0.97.x dev 2023-07-19 15:33:58 -04:00
Joseph T. Lyons
64d134a0dc Update Cargo.lock 2023-07-19 15:32:41 -04:00
Mikayla Maki
07dc82409b File icons (#2719)
This PR adds the next most requested editor feature.

TODO:
- [x] Figure out styles and icons for supported file types with

fixes https://github.com/zed-industries/community/issues/206

Release Notes:

- Added file icons
2023-07-19 11:17:01 -07:00
Mikayla Maki
9c9ce15afc Add a few more spare associations 2023-07-19 11:14:31 -07:00
Mikayla Maki
e3f9a01f6b fmt 2023-07-19 11:10:31 -07:00
Derek Briggs
f4413b0969 Fix files that don’t have a prefix 2023-07-19 11:10:30 -07:00
Derek Briggs
c754c1e9e2 Update icons to new zed file icon set 2023-07-19 11:10:30 -07:00
Mikayla Maki
aacc4bb8b0 fmt 2023-07-19 11:10:30 -07:00
Mikayla Maki
8c855680e7 Make file types live reload 2023-07-19 11:10:30 -07:00
Mikayla Maki
96ef6ab326 Add willow license 2023-07-19 11:10:30 -07:00
Mikayla Maki
929a9f97b2 Fix tests 2023-07-19 11:10:30 -07:00
Mikayla Maki
fd72f4526d Added file suffix and icon associations data 2023-07-19 11:10:30 -07:00
Mikayla Maki
d023189bda Add settings 2023-07-19 11:10:30 -07:00
Mikayla Maki
d26f76ba90 Add suffix based file icons 2023-07-19 11:10:30 -07:00
Antonio Scandurra
8003e84d11 WIP 2023-07-19 19:41:12 +02:00
Antonio Scandurra
2c27e875e5 Move apply_operations to Repo
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-07-19 19:40:58 +02:00
Antonio Scandurra
9e03e9d6df Sketch in a bi-directional sync (not yet tested) 2023-07-19 10:25:18 -06:00
Conrad Irwin
dd8863d0de Make tab non-functional in vim mode
Fixes: zed-industries/community#988
Fixes: zed-industries/community#897
2023-07-19 10:25:17 -06:00
Conrad Irwin
843e74689d Vim search (#2657)
This PR makes searching in vim mode significantly more like vim.

I re-used search to implement "go to next instance of word under cursor"
as this is how it works in vim (for integration with other
search-related keyboard shortcuts) and to avoid having to rewrite all
the logic to be vim-specific; but that did mean I had to make some
changes to the way search works (in particular to allow different
searches to run with specific options).

Release Notes:
- vim: `<enter>` in search now puts you back in normal mode
([#1583](https://github.com/zed-industries/community/issues/1583))
- vim: `?` now works to search backwards.
- vim: jumping to definitions or search results keeps you in normal mode
([#1284](https://github.com/zed-industries/community/issues/1284))
([#1514](https://github.com/zed-industries/community/issues/1514))
- vim: `n`/`N` are now supported to jump to next/previous match after a
search
([#1583](https://github.com/zed-industries/community/issues/1583))
- vim: `*`/`#`/`g*`/`g#` are now supported to jump to the next/previous
occurrence of the word under the cursor.
- vim: `gD` now jumps to type definition
2023-07-19 10:15:23 -06:00
Conrad Irwin
98b8008bcc Merge branch 'main' into vim-search 2023-07-19 09:48:25 -06:00
Antonio Scandurra
27b06c1d09 Implement clone_repo and start handling synchronization requests 2023-07-19 16:04:44 +02:00
Kirill Bulatov
c528880155 Clean up stale conflicting hints (#2751)
Closes
https://linear.app/zed-industries/issue/Z-2618/thread-main-panicked-at-excerpt-not-found-crateseditorsrcmulti
Closes
https://linear.app/zed-industries/issue/Z-2616/thread-main-panicked-at-excerpt-not-found-crateseditorsrcmulti

Fixes inlay hints cache not removing stale hints on invalidating
refreshes.

Release Notes:

- Fixes inlay hint panics after visible kinds settings update
2023-07-19 15:38:27 +03:00
Kirill Bulatov
3058a96dee Clean up stale conflicting hints 2023-07-19 15:29:00 +03:00
Antonio Scandurra
e6b7bbee25 Fix errors in message/request deserialization code 2023-07-19 10:47:06 +02:00
Kirill Bulatov
c5e47f27f5 Rework terminal highlight mechanism (#2743)
<img width="807" alt="image"
src="https://github.com/zed-industries/zed/assets/2690773/ef3bfeef-28f5-458f-abe6-7c19bf820106">

Closes https://github.com/zed-industries/community/issues/10
Closes https://github.com/zed-industries/community/issues/560

Initial version of improved terminal highlights and "open link"
functionality: drops old behavior where URLs were highlighted on hover.
Now, Cmd + hover is needed to highlight the links and click opens both
URLs and files that exist (either abs paths, or anything relative to the
project workspace worktree roots).
Only paths eligible for opening are highlighted.

Release Notes:

- Improved terminal highlights and selections: Cmd+Click opens local
files and links
2023-07-19 09:05:48 +03:00
Nathan Sobo
afb0329914 Rework networking code and serialization
Tests aren't passing yet, but I need to wind down for the night.

Decide to try out `serde_bare`.

From GPT: `serde_bare` is a Rust library that provides a fast and efficient Serializer and
Deserializer for the "BARE" (Basic Ad-hoc Runtime Encoding) data format. This
format focuses on being simple, small, fast and working well with anonymous
types, making it useful for sending small ad-hoc messages between systems.

To type messages on the wire, I'm wrapping them in "envelope" enums. These envelopes
then implement an unwrap method that returns a Box<dyn Any>, and we require messages
to be Into their envelope type. It's some boilerplate, but I ultimately like leaning
on Rust more than an external schema, which adds complexity.

I also reworked network abstraction to be just in terms of bytes. Typed handlers
are moved into network-neutral code. It's still broken, but hopefully the direction
is clear.

Heads up: I turned on the `backtrace` feature for `anyhow`.
2023-07-18 23:40:17 -06:00
Nathan Sobo
8deafe90fc Start on sync module with FibDescending iterator 2023-07-18 16:52:55 -06:00
KCaverly
0e071919a0 parellelize embedding api calls 2023-07-18 16:09:44 -04:00
Kirill Bulatov
33921183dc Avoid extra blinking on mouse moves 2023-07-18 22:59:41 +03:00
Kirill Bulatov
6ed7820f7c Consider all terminal when searching for words 2023-07-18 22:59:41 +03:00
Kirill Bulatov
10db05f87f Rework terminal highlight event flow 2023-07-18 22:59:41 +03:00
Kirill Bulatov
6f7a6e57fc Avoid excessive blinking on cmd-hover 2023-07-18 22:59:41 +03:00
Kirill Bulatov
94358ffb16 Use lines and columns from the file url strings 2023-07-18 22:59:41 +03:00
Kirill Bulatov
82a9d53c8a Only highlight the openable things 2023-07-18 22:59:41 +03:00
Kirill Bulatov
6349d90cac Properly open project directories 2023-07-18 22:59:41 +03:00
Kirill Bulatov
6123c67de9 Detect and open URLs properly 2023-07-18 22:59:41 +03:00
Kirill Bulatov
23f25562b5 Map initial approach to string opening 2023-07-18 22:59:41 +03:00
Kirill Bulatov
f52722b6a4 Properly handle Cmd press for terminal highlights 2023-07-18 22:59:41 +03:00
Kirill Bulatov
75d900704e Refactor terminal highlights and open mechanisms
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-07-18 22:59:41 +03:00
Kirill Bulatov
91ba80ae98 Ignore empty hover contents, trim final hover label text (#2747)
Removes empty hovers from appearing:

![image](https://github.com/zed-industries/zed/assets/2690773/b8a8af17-e20f-4d87-8782-465dfbf9b561)

And trims final hover label to ensure no trailing whitespaces are
present:

![image](https://github.com/zed-industries/zed/assets/2690773/24aeb0f0-d4f0-4e2b-9265-53694bfec437)


Release Notes:

- Tidies up hover elements by trimming them and removing the empty ones
2023-07-18 22:59:24 +03:00
Kirill Bulatov
9aeb970f09 Ignore empty hover contents, trim final hover label text 2023-07-18 22:53:44 +03:00
Max Brunsfeld
342dbc6945 Fix rendering of project search while semantic index is indexing or running
Co-authored-by: Kyle <kyle@zed.dev>
2023-07-18 12:01:42 -07:00
Max Brunsfeld
8d0614ce74 Populate project search results multi-buffer from semantic search
Co-authored-by: Kyle <kyle@zed.dev>
2023-07-18 11:44:58 -07:00
Antonio Scandurra
0ae7a9974f Wire up creation and joining of rooms
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-07-18 19:30:27 +02:00
Antonio Scandurra
be7d4d6ea9 WIP 2023-07-18 19:10:20 +02:00
Joseph T. Lyons
7cb5326ba0 Fix ZED_SERVER_URL port number
This change accidentally slipped into https://github.com/zed-industries/zed/pull/2746
2023-07-18 12:43:27 -04:00
Joseph T. Lyons
e73f394604 Add is_staff to events (#2746)
Release Notes:

- N/A
2023-07-18 12:41:24 -04:00
Antonio Scandurra
00b0189660 Simulate request/responses and room broadcasts with random network delay
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-07-18 18:33:08 +02:00
Joseph T. Lyons
018eb06091 Add is_staff to events 2023-07-18 12:32:53 -04:00
Nate Butler
b00703a149 Add syntax highlighting for Bash, Shell Scripts (#2722)
Release Notes:

- Added syntax highlighting for Bash, Shell Scripts
2023-07-18 12:21:52 -04:00
Nate Butler
bf2dcd4582 Update cargo.toml 2023-07-18 12:15:03 -04:00
Nate Butler
fab26267db Merge branch 'main' into nate/add-bash-highlighting 2023-07-18 12:08:53 -04:00
KCaverly
80ef92a3e1 fix db schema update process to ensure all tables are dropped 2023-07-18 11:14:13 -04:00
KCaverly
ed1b1a5ccd update logging for open ai embedding and remove redundant truncation 2023-07-18 11:00:21 -04:00
KCaverly
b9fdfd60f0 catch up with main 2023-07-18 10:26:28 -04:00
Julia
192f747bd1 Detect Node broken-ness initially (#2745)
This will help cases where Node is broken causing Copilot to fail to
start but because it doesn't install via NPM we would not have caught it
prior.

Release Notes:
- Improved detection of broken Node installation impacting Copilot
([#1551](https://github.com/zed-industries/community/issues/1551)).
2023-07-18 10:20:47 -04:00
Julia
aee008440b Detect Node broken-ness initially
This will help cases where Node is broken causing Copilot to fail to
start but because it doesn't install via NPM we would not have caught
it prior.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-07-18 10:02:14 -04:00
Antonio Scandurra
5267c6d2cb WIP 2023-07-18 15:11:35 +02:00
Piotr Osiewicz
137734cfcf Piotr/z 2588 php (#2721)
Release Notes:

- Added syntax highlighting & Intelephense LSP support for PHP language.
([#46](https://github.com/zed-industries/community/issues/406)).
2023-07-18 14:57:40 +02:00
Kirill Bulatov
009cf48b26 Slightly tidy up vector_db code (#2744)
Code snippet
```rust
fn main() {
    //√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√√
}
```

has length of 191, but consists of 87 chars, and the debug code with
`.truncate(100)` panicked.
Fixed that issue, cc @KCaverly 


Release Notes:

- N/A
2023-07-18 14:22:34 +03:00
Antonio Scandurra
6205ac27a5 WIP 2023-07-18 13:16:32 +02:00
Kirill Bulatov
a884bd77e1 Slightly tidy up vector_db code
Avoid panicking when truncating code with special chars
2023-07-18 14:06:57 +03:00
Piotr Osiewicz
fa529d9590 Remove redundant debug impl 2023-07-18 12:21:00 +02:00
Piotr Osiewicz
7fde3614fe Remove leftover comment 2023-07-18 12:19:35 +02:00
Max Brunsfeld
afc4c10ec1 Start work on exposing semantic search via project search view
Co-authored-by: Kyle <kyle@zed.dev>
2023-07-17 18:10:51 -07:00
KCaverly
d83c4ffb07 remove debug logging for enabled settings 2023-07-17 17:09:51 -04:00
Conrad Irwin
96abba2b7d vim: Allow ctrl+[ as an alias for escape (#2741)
Also remove unneeded mappings in `g` and `z` modes

Release Notes:

- Adds `ctrl+[` as an alias for escape
([#538](https://github.com/zed-industries/community/issues/538)).
2023-07-17 15:07:53 -06:00
KCaverly
8b42f5b1b3 rename vector_store crate to semantic_index 2023-07-17 17:06:10 -04:00
Conrad Irwin
9e44de90af Allow ctrl+[ as an alias for escape
Also remove unneeded mappings in `g` and `z` modes

Fixes: zed-industries/community#358
2023-07-17 14:59:08 -06:00
KCaverly
e630ff38c4 add embedding treesitter queries for elixir 2023-07-17 16:29:25 -04:00
Joseph T. Lyons
9f650dfa52 Prevent multiple submissions of the same feedback text (#2740)
Fixes:
https://linear.app/zed-industries/issue/Z-2416/improvements-to-feedback-submission

We get a lot of duplicate messages through our in-app feedback. My best
guess is that because we do not tell the user we are doing anything, and
because submission takes awhile, users are hitting the submission button
mutliple times. This PR blocks the submission code, once an initial
submission is sent. If the original submission fails, we unblock the
submission code. The submit button is disabled and enabled accordingly
as well.

Release Notes:

- N/A
2023-07-17 16:15:49 -04:00
Mikayla Maki
1a8bfdfa21 feat(workspace): add option for moving the tab close button to the left (#2739)
Fixes https://github.com/zed-industries/community/issues/1760

Release Notes:

- Add option for chosing where the close button should be displayed on
editor tabs
2023-07-17 13:10:42 -07:00
Joseph T. Lyons
ede86a686c Prevent multiple submissions of the same feedback text
Co-Authored-By: Julia <30666851+ForLoveOfCats@users.noreply.github.com>
2023-07-17 16:10:34 -04:00
Alex Viscreanu
4efcf492ee feat(workspace): add option for moving the tab close button to the left 2023-07-17 21:17:28 +02:00
Mikayla Maki
04625fe376 feat(workspace): show git status on editor tabs (#2736)
Fixes https://github.com/zed-industries/community/issues/1674

Release Notes:

- Added option for showing git status on editor tabs
2023-07-17 12:14:39 -07:00
KCaverly
f0bf60fded add css as a embeddable file type in which the entire file is embedded individually 2023-07-17 14:53:57 -04:00
Alex Viscreanu
6793d4b6b8 feat(workspace): show git status on editor tabs 2023-07-17 20:53:42 +02:00
Conrad Irwin
c9bf407431 Avoid optional on select_match 2023-07-17 12:49:59 -06:00
KCaverly
1362c5a3d9 add embedding treesitter query for cpp 2023-07-17 14:43:29 -04:00
Max Brunsfeld
fef73ae921 Make macOS application menu aware of which key bindings are disabled (#2735)
Follow-up of https://github.com/zed-industries/zed/pull/2678
Deals with https://github.com/zed-industries/community/issues/772

Refreshes macOs menu panel on keymap file change and properly ignore
disabled actions.

Release Notes:

- Fixes a bug when disabled actions from macOs menu were still working
2023-07-17 11:20:41 -07:00
Julia
3e136943c0 After first panic, ignore others and tear down process even if in thread (#2725)
Spent a bit in a deep dive into how to handle this and honestly the
situation is rather unfortunate. The core problem is that when we have a
panic anywhere we need to tear down the app, and we'd like to do that as
cleanly as possible, avoiding throwing any other panics along the way if
possible.

We've been seeing a number of panics being reported which are
nonsensical, seemingly pointing to being a fallout panic from a worker
thread panic-ing, at which point we would write multiple panics to the
panic file, and we could possibly upload either both or the wrong panic
causing a wild goose chase. Unfortunately I've been entirely unable to
reproduce the specific panic we've been seeing but I was able to read
through the code responsible and confirm that under specific situations
a panic on one worker can cause another worker or the main thread to
also panic.

An easy solution to this is just to ignore any panics after the first
one. I'm thinking that *hopefully* we can trust the first panic to reach
the panic hook first so that the flag doesn't accidentally filter out
the panic we actually care about.

That being said we were expecting that to have already been the case
about which panic gets written to the panic file first, the first one in
the file being the one we upload, which doesn't seem to have been the
case. I'm hoping it was IO silliness causing that and that the flag
shouldn't be race-y, however this is still a shot in the dark. 🤞

As for cleanly shutting down, there's not really much we can do. One
thread physically cannot cause another to unwind without somehow sending
a message which isn't super useful. The only way for a thread to shut
down all threads and the process is to go nuclear and abort/exit the
process. This will never unwind other threads, effectively having the
same effect on those threads as compiling with `panic = "abort"` would.

With some (mis)use of `std::panic::resume_unwind` we can at least say
that for whatever thread actually panic-ed we will unwind, and any other
threads that panic as a result will probably get at least partway
through unwinding. This is weird, almost a combination of panic
rewinding and aborting, and may actually be worse than just biting the
bullet and aborting immediately.

I'm really not a fan of where I've ended up but it does seem to at the
very least an improvement. The main question in my mind at this point is
whether it would be better to attempt to unwind what we can or go all in
on abort. I'd love some input on that.

Release Notes:
- Improved panic reporting when a background thread panics.
2023-07-17 13:52:33 -04:00
Julia
6770aeeb3c After first panic, ignore others and tear down process even if in thread 2023-07-17 13:43:43 -04:00
Kirill Bulatov
a4bf19c5bd Simplify NoAction filtering logic
co-authored-by: Max Brunsfeld <max@zed.dev>
2023-07-17 20:42:35 +03:00
Kirill Bulatov
4cc06748c9 Ignore keybindings with NoAction in config overrides 2023-07-17 18:34:39 +03:00
Conrad Irwin
f887a17ffe Merge branch 'main' into vim-search 2023-07-17 09:27:02 -06:00
KCaverly
cf0dd09b5c update vector_store to accomodate for full file parsing for JSON, TOML and YAML files 2023-07-17 10:04:32 -04:00
KCaverly
4bece54655 update jsx family of languages for preceeding comments and nested exports 2023-07-17 09:22:37 -04:00
Piotr Osiewicz
dd6b674e7e Remove dbg calls 2023-07-17 13:08:41 +02:00
Piotr Osiewicz
8642a1d074 Remove dbg! calls 2023-07-17 13:03:57 +02:00
Piotr Osiewicz
ee9123a7da Remove test 2023-07-17 12:56:25 +02:00
Piotr Osiewicz
5b6582a7c2 rustfmt 2023-07-17 12:51:00 +02:00
Piotr Osiewicz
6c7a6d43fc Cargo fix 2023-07-17 12:38:35 +02:00
Piotr Osiewicz
94796e943b Set language id for PHP. LSP works! 2023-07-17 12:36:08 +02:00
Piotr Osiewicz
965cc2efbc Fix a crash in tree-sitter-php 2023-07-17 12:07:25 +02:00
Piotr Osiewicz
11173b2199 Merge branch 'main' into piotr/z-2588-php 2023-07-17 11:47:08 +02:00
Piotr Osiewicz
dc557e1647 Add scaffolding of php language server 2023-07-17 11:43:32 +02:00
Kirill Bulatov
f5eac82e81 Reload menu after keybindings change 2023-07-17 12:30:42 +03:00
Kirill Bulatov
eaa8224076 Use id instead of type_id for actions
Currently, both are the same thing, so the logic is not changed.
2023-07-17 12:24:56 +03:00
Mikayla Maki
10a1df3faa Fix fold indicator active hover style (#2731)
Release Notes:

- Fix: adjusted fold indicator styles
2023-07-15 23:06:01 -07:00
Mikayla Maki
419cbcbaf8 Fix fold indicator active hover style 2023-07-15 22:51:04 -07:00
Mikayla Maki
f24001c130 Simplify db tests (#2730)
The open_db function I wrote was doing far more than it needed to to
preserve the database and it was doing it badly. It no longer does all
of that.
2023-07-14 16:16:33 -07:00
Mikayla Maki
322ebc33d1 Simplify db tests 2023-07-14 16:09:02 -07:00
Joseph T. Lyons
4d91409bbc Require only a single click to split pane when using cmd in project panel (#2729)
Release Notes:

- N/A
2023-07-14 18:31:38 -04:00
Joseph T. Lyons
c3e8ea304a Require only a single click to split pane when using cmd in project panel 2023-07-14 18:27:40 -04:00
Max Brunsfeld
dcc2cd8dff Optimize two slow code paths (#2728)
Linear:
https://linear.app/zed-industries/issue/Z-2578/zed-launches-very-slow-for-user

I was searching for the cause of a slow startup time reported in the
above issue, and I don't think I found it, but I did find two very
noticeable slow code paths while profiling, and fixed them.

###  Notes

1. When starting the JSON language server, we provide it with a JSON
schema for our settings. For the `theme` setting, the JSON schema needs
to read all of the themes in the registry, to generate a list of valid
theme names. Previously, as part of this, we were deserializing each
theme from JSON, which took a lot of CPU. Now, we don't do that.
2. When an FS event occurs within a git repository, we reload the git
status for all entries in that git repository. Previously, we did that
via a separate `libgit2` call per FS entry (including ignored entries,
so many thousands in the case of the `zed` repo). Now we do one
`libgit2` call, asking for all of the statuses. Git carries an index of
all of the files with statuses, so this is fast.

Release Notes:

- Improved the the performance of starting up a  JSON language server.
- Improved the performance of handling changes to git repositories, such
as changing branches or committing.
2023-07-14 14:38:55 -07:00
Max Brunsfeld
b9e0074793 Perform only one git statuses call when reloading a git repo after it changes 2023-07-14 14:29:22 -07:00
Max Brunsfeld
c69d0d50cd Avoid deserializing all themes to compute settings JSON schema 2023-07-14 14:29:22 -07:00
Alex Viscreanu
031172d3f2 file/symbol navigation modifiers (#2727)
Fixes https://github.com/zed-industries/community/issues/54

Release Notes:

- Added modifiers for opening files and symbols on a split
- Added modifiers for navigating to definition and type definitions on a
split
2023-07-14 22:03:48 +02:00
Alex Viscreanu
c0b2326053 fix(flexes): reset flexes when collapsing axis
Co-authored-by: Mikayla Maki <mikayla@zed.dev>
2023-07-14 21:49:33 +02:00
Alex Viscreanu
c7669317ec feat(workspace): allow alternative actions to open files and symbols in split
Co-authored-by: Mikayla Maki <mikayla@zed.dev>
2023-07-14 21:49:15 +02:00
Piotr Osiewicz
369ccc725c branch_list: Bail in case of missing worktrees. (#2726)
Z-2632

Release Notes:
- Fixed a crash that occurred when opening a modal branch picker without
a corktree.
2023-07-14 21:41:11 +02:00
Kirill Bulatov
cde5b3952d Select all matches (#2717)
Closes https://github.com/zed-industries/community/issues/75
Closes https://github.com/zed-industries/community/issues/1749

The PR 

* changes keybindings for `Editor && mode == auto_height` context:
before, `alt-enter` and `alt-shift-enter` added new lines in such
editors, including the one from buffer search.

New bindings are the same as in `Editor && mode == full` context.

* adds `search::SelectAllMatches` action and binds it to `Alt + Enter`
by default, to select all matches of a buffer search

The behavior mimics VSCode: we do not move the screen even if all
selections are out of the visible range (Cmd+G will navigate there) and
allow reselecting the results from both pane and search field, as long
as the search is not dismissed.

Release Notes:

- Added `search::SelectAllMatches` (`Alt + Enter` default) action to
place carets and select all buffer search results
([#75](https://github.com/zed-industries/community/issues/75),
[#1749](https://github.com/zed-industries/community/issues/1749)).
2023-07-14 21:37:04 +03:00
KCaverly
2dae42b1ba update embedding query for tsx to accomodate for leading comments 2023-07-14 14:25:08 -04:00
KCaverly
d4971e9ead update typescript parsing to manage for leading tsdoc comments 2023-07-14 13:47:10 -04:00
Piotr Osiewicz
c6195e6176 branch_list: Bail in case of missing worktrees.
Z-2632
2023-07-14 19:33:27 +02:00
Max Brunsfeld
0f5489397f Fix syntax map issues that caused bugs in editing HEEx (#2723)
Fixes [Z-2575 : HEEX files are using deprecated commenting
sytle](https://linear.app/zed-industries/issue/Z-2575/heex-files-are-using-deprecated-commenting-sytle)

- Fixed a bug where comment toggling and bracket matching used the wrong
characters in templating languages like ERB and HEEx
([#1724](https://github.com/zed-industries/community/issues/1724)).
- Fixed a bug where interpolated code was sometimes not parsed correctly
within templating languages like ERB and HEEx.
2023-07-14 10:23:25 -07:00
Piotr Osiewicz
c466711cd1 branch_list: Ensure index is within list bounds. (#2724)
Z-2630


Release Notes:
- Fixed a crash in branch list that occurred when confirming a match in
empty list.
2023-07-14 19:11:24 +02:00
Piotr Osiewicz
9c150252aa branch_list: Ensure index is within list bounds.
Z-2630
2023-07-14 19:00:14 +02:00
Max Brunsfeld
31720d8825 Add randomized syntax map test with elixir within heex within elixir 2023-07-14 09:58:34 -07:00
Max Brunsfeld
21e7e35e73 Include newlines in between combined injection ranges on different lines 2023-07-14 09:25:56 -07:00
Max Brunsfeld
2f2ef7c165 Use workspace dependencies for tree-sitter grammars 2023-07-14 09:25:51 -07:00
Max Brunsfeld
2e2333107a Find the layer with the smallest enclosing node in language_scope_at 2023-07-14 09:11:56 -07:00
KCaverly
3a625d15d3 update c embedding query for preceding comments 2023-07-14 11:33:49 -04:00
Kirill Bulatov
b14cd5f56d Add a new button for the action 2023-07-14 17:32:10 +03:00
Kirill Bulatov
ccc78000bd Preserve serach index for multicaret selection editor events 2023-07-14 14:47:12 +03:00
Nate Butler
c130dd6b47 Add styles for an action_button ahead of the "Select all matches" UI button 2023-07-14 14:47:12 +03:00
Kirill Bulatov
f710efca3b Use a better name 2023-07-14 14:47:12 +03:00
Kirill Bulatov
2053418f21 Use VSCode-like shortcuts by default 2023-07-14 14:47:12 +03:00
Kirill Bulatov
29cbeb39bd Allow selecting all search matches in buffer 2023-07-14 14:47:12 +03:00
Mikayla Maki
bf9dfa3b51 Add Svelte support (#2720)
fixes https://github.com/zed-industries/community/issues/432

Release Notes:

- Added support for the svelte language
2023-07-13 22:43:46 -07:00
Mikayla Maki
f1b034d4f8 fmt 2023-07-13 22:32:29 -07:00
Mikayla Maki
ff8a89a075 Refine svelte queries to work with zed-style highlights
Bump scheme dependency:
2023-07-13 22:30:58 -07:00
Mikayla Maki
1424a7a56a Add svelte language server
Add svelte tree sitter
Add svelte config file
Add svelte highlighting
2023-07-13 21:43:53 -07:00
Mikayla Maki
415b8f0147 Add line height settings for the editor (#2718)
I'm a bit tired of the complaining for this feature. But also, we should
have it. Hence, this PR.

fixes:
https://github.com/zed-industries/community/issues/304#issue-1305112032

Release Notes:
- Added a `buffer_line_height` setting
2023-07-13 16:21:47 -07:00
Mikayla Maki
77c4fc98bd Add line height settings for the editor 2023-07-13 16:14:33 -07:00
Mikayla Maki
b7ed467690 WIP: Resizing splits (#2715)
We're finally doing the thing. 


TODO:
- [x] Choose an approach 
- Decided to add a new element just for the pane axis, containing a
slimmed down copy of the flex code.
- [x] Wire through callbacks and pointers so that data goes where it
needs to
- [x] Do the flex juggling math on resize
- [x] Update the flexes when updating the split tree
- [x] Restore the active_pane_magnification setting
- [x] Serialize an axis' flexes

Release Notes:
- Made the center pane group splits resizable. Note that resizing is
disabled if the `active_pane_magnification` setting is changed from
default.
2023-07-13 15:29:34 -07:00
KCaverly
b38e3b804c remove reindexing subscription, and add status methods for vector store
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-07-13 18:14:44 -04:00
Mikayla Maki
50623c018c Fix serialization error 2023-07-13 14:48:56 -07:00
Mikayla Maki
9da8f609cf tidy up names 2023-07-13 14:34:32 -07:00
Mikayla Maki
331fd896b5 fmt 2023-07-13 14:21:30 -07:00
Mikayla Maki
5797282b98 Add resising serialization 2023-07-13 14:21:14 -07:00
KCaverly
d8fd0be598 update vector store to remove dummy embeddings 2023-07-13 17:01:56 -04:00
KCaverly
623cb9833c add tests for rust context parsing, and update rust embedding query
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-07-13 16:58:42 -04:00
KCaverly
0a0e40fb24 refactored code context retrieval and standardized database migration
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-07-13 16:34:32 -04:00
Mikayla Maki
00b04f1c85 Restore active pane magnification 2023-07-13 13:10:36 -07:00
KCaverly
5eab628580 Added go parsing for semantic search, and added preceeding comments on go and rust.
Co-authored-by: Alex <alexviscreanu@gmail.com>
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-07-13 14:33:31 -04:00
Mikayla Maki
d5f7ad08fa Styled and refined behavior for split resizing 2023-07-13 11:28:21 -07:00
Nate Butler
ef7aa66959 Add first line pattern 2023-07-13 12:09:43 -04:00
Nate Butler
9a1a9813cb WIP 2023-07-13 11:56:53 -04:00
KCaverly
a56d454a07 added semantic search support for c 2023-07-13 10:10:24 -04:00
Piotr Osiewicz
608c16342c Update outline queries; add enum as a highlighted keyword 2023-07-13 12:23:49 +02:00
Kirill Bulatov
c2ffd8975b Update another deprecated plugin (#2716)
Follow-up of https://github.com/zed-industries/zed/pull/2713, fixing the
same for the bundling part of the pipeline.

Release Notes:

- N/A
2023-07-13 12:12:42 +03:00
Kirill Bulatov
8cce403c11 Update another deprecated plugin 2023-07-13 11:52:35 +03:00
Mikayla Maki
26b9be628e Add the math for pane resizing 2023-07-12 22:35:51 -07:00
Mikayla Maki
5385ca411b Added the new elements and wired through the pointers to update the pane axis ratios 2023-07-12 17:53:01 -07:00
Joseph T. Lyons
c9ba4c764a Fix screen sharing panic introduced by call events (#2714)
Release Notes:

- Fixed a bug where Zed would crash when enabling screen share.
2023-07-12 16:22:42 -04:00
Joseph T. Lyons
6da5008f32 Fix screen sharing panic introduced by call events
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2023-07-12 16:12:07 -04:00
Mikayla Maki
488b41826b WIP 2023-07-12 12:46:56 -07:00
Kirill Bulatov
1e8ee5361d Update GH Actions (#2713)
Fixes deprecation warnings the CI jobs started to have:

https://github.com/zed-industries/zed/actions/runs/5535503789

<img width="1383" alt="image"
src="https://github.com/zed-industries/zed/assets/2690773/a33ecc2a-d6d3-451d-8033-da5754df4731">

Release Notes:

- N/A
2023-07-12 22:25:59 +03:00
Kirill Bulatov
7cbcc28b1b Update checkout actions 2023-07-12 22:18:37 +03:00
Kirill Bulatov
d164034198 Allow all completions with preresolved additional text edits (#2711)
Deals with https://github.com/zed-industries/community/issues/752
Deals with https://github.com/zed-industries/community/issues/566

Currently, when converting from LSP to Zed objects, completions with
non-empty `additional_text_edits` are filtered out.
Later, all other completions form a list and the selected one gets the
`Editor::confirm_completion` call, which always queries an LSP
completion resolve request to get the `additional_text_edits` field.

Otherwise, `additional_text_edits` field is ignored entirely for the
rest of the completion lifetime — and we always pass the selected
completion through the resolve request.

The PR changes the logic, removing the `additional_text_edits` filtering
and instead of resolving every completion, now we check for
`additional_text_edits` in the completion before resolving: resolve
happens only if the data is absent.

Generally, feels like resolve has to happen before the completion
selection: LSP servers may send us markdown for completion documentation
preview pop ups and similar extra info.
Also, the server may lack resolve capabilities entirely, always sending
the request seems dangerous.
For now, the PR does not attempt to change either.

Release Notes:

- Brings rust-analyzer's postfix completions and others completions with
preresolved additional text edits
2023-07-12 22:10:18 +03:00
Nate Butler
ad4f5e55cb Update docs (#2712)
Update docs

Release Notes:

- N/A
2023-07-12 15:00:11 -04:00
Kirill Bulatov
0c7949bdee Force resolve all completions, to ensure their edits are up-to-date
co-authored-by: Max Brunsfeld <max@zed.dev>
2023-07-12 21:10:01 +03:00
Nate Butler
6297675055 Update building-zed.md
Co-Authored-By: Derek Briggs <1648941+PixelJanitor@users.noreply.github.com>
2023-07-12 14:09:21 -04:00
Derek Briggs
0e600ad2a4 Update README.md 2023-07-12 11:35:38 -06:00
Piotr Osiewicz
1cc8ecad12 Fix HTML injections (Thanks Max!)
Co-authored-by: Max <max@zed.dev>
2023-07-12 19:33:09 +02:00
Joseph T. Lyons
af9506b21d v0.96.x dev 2023-07-12 13:30:28 -04:00
Kirill Bulatov
c732aa1617 Do not resolve completions if extra edits are available 2023-07-12 20:28:16 +03:00
Kyle Caverly
37568ccbf0 Vector store (#2658)
This PR includes a new crate, aimed at maintaining a consistent semantic
embedding database, for any project opened with Zed. At a high level,
for each file in a project, we parse the file with treesitter, embed the
symbol "document" objects with OpenAI, and maintain a consistent
database of these embeddings and offset locations in a sqlite database.
Once stored, we have built a simple modal interface for querying on
these symbols embeddings using natural language, offering the
opportunity to navigate to the selected symbol.

This initial PR is intended to provide this functionality only in preview,
as we explore, evaluate and iterate on the vector store.

- Full task details are provided in the [Semantic Search Linear
Project](https://linear.app/zed-industries/project/semantic-search-7c787d198ebe/Z)
2023-07-12 13:26:17 -04:00
KCaverly
c141519dba merged with main 2023-07-12 13:15:23 -04:00
Derek Briggs
dc09a11090 Update README.md 2023-07-12 10:58:39 -06:00
Derek Briggs
2cb7d8aa96 Update README.md 2023-07-12 10:51:09 -06:00
Piotr Osiewicz
e69240cf13 Piotr/z 2556 add create branch button (#2696)
Release Notes:

- N/A
2023-07-12 18:46:33 +02:00
Nate Butler
001e848393 Update picker footer button style
Co-Authored-By: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
2023-07-12 12:40:37 -04:00
Piotr Osiewicz
2ac485a6ec Merge branch 'main' into piotr/z-2556-add-create-branch-button 2023-07-12 18:11:52 +02:00
Piotr Osiewicz
c12821f6c5 Increase trailoff limit for modal branch picker. (#2710)
Z-2601

Follow-up to modal branch picker, this is the updated version:

![image](https://github.com/zed-industries/zed/assets/24362066/1017e2d9-7107-4e4c-805e-bae46412079a)
Previously a trail off limit was much smaller:

![image](https://github.com/zed-industries/zed/assets/24362066/efb6c7cf-d90d-4fbc-8c28-84872f215ac5)

Release notes:
- N/A
2023-07-12 18:07:54 +02:00
Piotr Osiewicz
6260d977fb Increase trailoff limit for modal branch picker.
Z-2601
2023-07-12 17:58:00 +02:00
Kirill Bulatov
6d96c6ef51 Draft the postfix completions support 2023-07-12 18:32:03 +03:00
Julia
3db1aac119 Avoid user menu toggle button overlapping with tab bar top border (#2707)
Something little I noticed today

| | Normal  | Hovered |
| ------------- | ------------- | - |
| Before | ![CleanShot 2023-07-11 at 16 57
37](https://github.com/zed-industries/zed/assets/30666851/30769d09-678e-4d66-96de-df51c6d030cc)
![CleanShot 2023-07-12 at 10 17
20](https://github.com/zed-industries/zed/assets/30666851/801e1f26-1cea-45a7-8a50-b620095e2131)
| ![CleanShot 2023-07-11 at 16 59
46](https://github.com/zed-industries/zed/assets/30666851/fd1324c2-669f-42f8-96b3-4d65b555fb6e)
![CleanShot 2023-07-12 at 10 17
39](https://github.com/zed-industries/zed/assets/30666851/b286488d-b81e-44d5-a67c-dd816c072f86)
|
| After | ![CleanShot 2023-07-11 at 16 59
25](https://github.com/zed-industries/zed/assets/30666851/9942733f-8129-4854-bbfe-9a292b0e2c0e)
![CleanShot 2023-07-12 at 10 18
52](https://github.com/zed-industries/zed/assets/30666851/0b0f5fec-4c44-4c4f-8921-3b8a2cfff38c)
| ![CleanShot 2023-07-11 at 17 02
19](https://github.com/zed-industries/zed/assets/30666851/6ab82b26-0548-4ce7-8fdc-38ae561d26aa)
![CleanShot 2023-07-12 at 10 19
28](https://github.com/zed-industries/zed/assets/30666851/a024f6e8-f0f4-4d81-9f90-38a655a09031)
|

Also makes it match the contacts button and seems to more closely
resemble the mockups as far as I can tell

![CleanShot 2023-07-11 at 17 02
55](https://github.com/zed-industries/zed/assets/30666851/07fb1dea-5922-4bdc-9a3b-f7c1b105d017)

Release Notes:

- Fixed the titlebar user menu button obscuring part of the border below
it.
2023-07-12 11:31:42 -04:00
Piotr Osiewicz
99c2395a86 chore: Disable http2 feature in isahc. (#2709)
This removes transitive dependency on libnghttp2, which is pretty heavy.

Release Notes:

- N/A
2023-07-12 17:24:01 +02:00
Piotr Osiewicz
78c8324698 chore: Disable http2 feature in isahc.
This removes transitive dependency on libnghttp2, which is pretty heavy.
2023-07-12 16:53:01 +02:00
Piotr Osiewicz
10c62779d9 chore: Bump ipc-channel to 0.16.1. (#2708)
Kevin Hovsäter reported a crash in cli when running 'cargo run -p cli --
--bundle-path target/debug/Zed'. It was caused by unaligned pointer
access in ipc-channel library; rustc started generating debug_asserts
for pointer alignment starting with 1.70, which we have
oh-so-conveniently upgraded to shortly before Kevin noticed a crash.
Rust 1.70 did not introduce this panic, it merely started triggering on
UB that was previously ignored.

/cc @hovsater @SomeoneToIgnore 
Release Notes:

- N/A
2023-07-12 13:49:55 +02:00
Piotr Osiewicz
5086e37e73 chore: Bump ipc-channel to 0.16.1.
Kevin Hovsäter reported a crash in cli when running 'cargo run -po cli -- --bundle-path target/debug/Zed'. It was caused by unaligned pointer access in ipc-channel library; rustc started generating debug_asserts for pointer alignment starting with 1.70, which we have oh-so-conveniently upgraded to shortly before Kevin noticed a fix.
Rust 1.70 did not introduce this panic, it merely started triggering on UB that was previously ignored.
2023-07-12 13:27:14 +02:00
Piotr Osiewicz
b9f5cb0301 recent_projects: Perform fuzzy search on compacted paths. (#2703)
Match highlighting for recent projects picker was off, because the path
representation was compacted - for a path '/Users/hiro/Projects/zed' we
compact it to use a tilde instead of home directory. However, the
highlight positions were always calculated for a full path, leading to a
mismatch in highlights. This commit addresses this by running fuzzy
search on compacted paths instead of using long paths. This might lead
to a slight performance hit, but given that recent projects modal
shouldn't have that many items in the first place, it should be okay.

Z-2546

Release Notes:

- Fixed result highlighting in "Recent projects" modal.
2023-07-12 11:47:28 +02:00
KCaverly
33e2b52a01 added test registration for project settings 2023-07-11 20:12:43 -04:00
KCaverly
297fa029e3 Merge branch 'main' of github.com:zed-industries/zed into vector_store 2023-07-11 20:05:29 -04:00
KCaverly
b68cd58a3b updated vector store settings to remove batch embeddings size 2023-07-11 19:54:03 -04:00
Max Brunsfeld
4b3bb2c661 Define semantic search action regardless of whether the feature is enabled 2023-07-11 15:02:43 -07:00
Max Brunsfeld
4a4dd39875 Fix TSX embedding query 2023-07-11 15:02:19 -07:00
Max Brunsfeld
d244c0fcea Get vector store test passing - wait for indexing
Co-authored-by: Kyle <kyle@zed.dev>
2023-07-11 14:30:11 -07:00
Max Brunsfeld
badf94b097 Update dot product test to use larger vectors
Co-authored-by: Kyle <kyle@zed.dev>
2023-07-11 14:29:48 -07:00
Max Brunsfeld
08e24bbbae Use cmd-ctrl-t for semantic search key binding
Co-authored-by: Kyle <kyle@zed.dev>
2023-07-11 14:29:06 -07:00
KCaverly
af7b2f17ae added initial keymap for toggle semantic search
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-07-11 17:13:58 -04:00
Julia
ef296e46cb Avoid user menu toggle button overlapping with tab bar top border 2023-07-11 16:49:53 -04:00
KCaverly
2ca4b3f4cc cleaned up warnings and added javascript 2023-07-11 16:41:08 -04:00
KCaverly
debe6f107e updated embedding queries for tsx and typescript 2023-07-11 16:22:40 -04:00
KCaverly
02f523094b expanded embeddable context to accomodate for struct context and file paths 2023-07-11 15:58:33 -04:00
Mikayla Maki
9165320390 Fix a bug where the terminal would not be closed by the terminal exiting (#2706)
Release Notes:

- Fixed a bug where terminal tabs in the panel would not close on tty
process exit.
2023-07-11 12:23:26 -07:00
Mikayla Maki
550aa2d6bd fmt 2023-07-11 12:17:50 -07:00
Mikayla Maki
be881369fa Fix a bug where the terminal panel's items wouldn't be hooked up properly to workspace actions 2023-07-11 12:12:37 -07:00
Kirill Bulatov
5483bd1404 Refactor LSP restart logic (#2705)
Instead of storing `initialization_options` in every LSP adapter as
before, store previous LSP settings in `Project` entirely.

This way, we can later have use multiple different project
configurations per single LSP with its associated adapter.

Release Notes:

- N/A
2023-07-11 22:09:40 +03:00
Kirill Bulatov
4b4d049b0a Refactor LSP restart logic
Instead of storing `initialization_options` in every LSP adapter as
before, store previous LSP settings in `Project` entirely.

This way, we can later have use multiple different project
configurations per single LSP with its associated adapter.

co-authored-by: Max Brunsfeld <max@zed.dev>
2023-07-11 21:56:55 +03:00
KCaverly
dd0dbdc5bd brought up to speed with main 2023-07-11 14:50:48 -04:00
KCaverly
1649cf81de added versioning to files table 2023-07-11 14:42:03 -04:00
Joseph T. Lyons
5012d618e6 Add call events (#2704)
Release Notes:

- N/A
2023-07-11 14:40:07 -04:00
Joseph T. Lyons
98a0113ac3 Add call events
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2023-07-11 13:58:55 -04:00
Kirill Bulatov
efe8b8b6d0 Revert "Fix language servers improper restarts"
This reverts commit 91832c8cd8.
2023-07-11 20:46:45 +03:00
KCaverly
298c2213a0 added opt-in default settings for vector store 2023-07-11 12:03:56 -04:00
Kirill Bulatov
8161438a85 Fix language servers improper restarts (#2702)
Fixes
https://linear.app/zed-industries/issue/Z-2595/language-servers-are-unnecessarily-restarted-when-unrelated-settings

Language servers mixed `initialization_options` from hardcodes and user
settings, fix that to ensure we restart servers on their settings
changes only.

Release Notes:

- N/A
2023-07-11 17:15:19 +03:00
Kirill Bulatov
748e7af5a2 Add a test 2023-07-11 17:10:34 +03:00
KCaverly
f5fec55930 updated vector_store to handle for removed files 2023-07-11 10:03:53 -04:00
Kirill Bulatov
91832c8cd8 Fix language servers improper restarts
Language servers mixed `initialization_options` from hardcodes and user
settings, fix that to ensure we restart servers on their settings
changes only.
2023-07-11 16:36:20 +03:00
Piotr Osiewicz
15010e94fd fixup! recent_projects: Perform fuzzy search on compacted paths. 2023-07-11 15:29:15 +02:00
Piotr Osiewicz
f164eb5289 recent_projects: Perform fuzzy search on compacted paths.
Match highlighting for recent projects picker was off, because the path representation was compacted - for a path '/Users/hiro/Projects/zed' we compact it to use a tilde instead of home directory. However, the highlight positions were always calculated for a full path, leading to a mismatch in highlights.
This commit addresses this by running fuzzy search on compacted paths instead of using long paths. This might lead to a slight performance hit, but given that recent projects modal shouldn't have that many items in the first place, it should be okay.

Z-2546
2023-07-11 15:23:17 +02:00
Piotr Osiewicz
1fbf09fe4c branches: Add a modal branch list. (#2697)
Extract branch list into a separate vcs_menu crate akin to
recent_projects. Add current bind for a modal branch to branch popover's
tooltip.

Z-2555

Release Notes:
- N/A
2023-07-11 14:40:00 +02:00
Piotr Osiewicz
a1fe5abeaf Add rudimentary PHP syntax highlighting 2023-07-11 12:31:20 +02:00
Piotr Osiewicz
3c1ab3d0b8 Piotr/z 2590 search result marks jump around in scrollbar as cursor (#2700)
This closes ticket Z-2590 reported by @JosephTLyons . Thanks Joseph =)
Release Notes:

- N/A
2023-07-11 09:40:00 +02:00
Piotr Osiewicz
4125e7eccc editor: Keep scrollbar up if there are selections (#2698)
Z-2556

/cc @JosephTLyons 

Release Notes:

- N/A
2023-07-11 09:32:34 +02:00
Piotr Osiewicz
e83afdc5ab Rename background_highlights_in_range_for_key to background_highlights_in_range_for 2023-07-11 09:31:08 +02:00
Piotr Osiewicz
4f60679861 Highlight only search results 2023-07-11 09:28:34 +02:00
KCaverly
dce72a1ce7 updated tests to accomodate for new dot location 2023-07-10 18:19:29 -04:00
KCaverly
307d8d9c8d Reduced redundant database connections on each worktree change.
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-07-10 17:50:19 -04:00
KCaverly
82079dd422 Updated batching to accomodate for full flushes, and cleaned up reindexing.
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-07-10 16:33:14 -04:00
Piotr Osiewicz
a6d713eb3d editor: Keep scrollbar up if there are selections
Z-2556
2023-07-10 17:44:27 +02:00
Piotr Osiewicz
e00e73f608 branches: Add a modal branch list.
Extract branch list into a separate vcs_menu crate akin to recent_projects.
Add current bind for a modal branch to branch popover's tooltip.

Z-2555
2023-07-10 17:18:12 +02:00
Nate Butler
6739c31594 Update assistant styles (#2665)
Updates the assistant with some style quality of life changes.

## Changes

Restyled the conversation list

<img width="646" alt="CleanShot 2023-07-10 at 10 25 23@2x"
src="https://github.com/zed-industries/zed/assets/1714999/5c9a4f94-11c1-4d28-8aac-4d38141829a9">

Updated the assistant header to be a bit more compact, and use a new tab
bar icon style. The existing tab bar icons will be updated in a later
PR.

<img width="646" alt="CleanShot 2023-07-10 at 10 26 30@2x"
src="https://github.com/zed-industries/zed/assets/1714999/3ef9a053-59fa-4d34-9b76-3bb2701acb33">

Updated the remaining token indicator to have 3 steps:
<img width="662" alt="CleanShot 2023-07-10 at 10 29 51@2x"
src="https://github.com/zed-industries/zed/assets/1714999/13d31545-5b00-427c-b7da-b4dfeac037d6">

Updated role labels, added a hover state to make it more clear these are
interactive
<img width="984" alt="CleanShot 2023-07-10 at 10 32 28@2x"
src="https://github.com/zed-industries/zed/assets/1714999/24748495-dde4-4ee9-98f1-6a082f0c1d4d">


Release Notes:

- Improved the UI of some elements in the Assistant panel.
2023-07-10 10:54:20 -04:00
Piotr Osiewicz
a75a7e2b1d Add tooltip to recent projects button (#2694)
Z-2545

Release Notes:

- N/A
2023-07-10 16:53:50 +02:00
Piotr Osiewicz
92a0a4e367 Add styles for branch create button 2023-07-10 16:51:18 +02:00
Nate Butler
273b9e1636 Avoid overlapping the scrollbar 2023-07-10 10:44:39 -04:00
Nate Butler
9ffe220def Update tab_bar_button.ts 2023-07-10 10:24:24 -04:00
Nate Butler
4029481fd0 Merge branch 'main' into update-assistant-styles 2023-07-10 10:22:18 -04:00
Nate Butler
f0cddeb478 Update zoom icons 2023-07-10 10:09:59 -04:00
KCaverly
0189742497 pulled treesitter parsing to own file for ease of testing and management 2023-07-10 10:06:07 -04:00
Piotr Osiewicz
3318896ad9 Display key bind of a modal project picker 2023-07-10 14:29:30 +02:00
Piotr Osiewicz
6c8cb6b2a9 project_search: display result count on cmd-enter
It also focuses the first result (just like a normal enter).
2023-07-10 14:21:55 +02:00
Piotr Osiewicz
6e24ded2bc collab_ui: Add tooltip to branches popover (#2695)
Z-2554

Release Notes:

- N/A
2023-07-10 14:20:12 +02:00
Joseph T. Lyons
52a497be21 Remove code block for GitHub release notes
Discord can directly render the Markdown now.
2023-07-08 18:03:18 -04:00
Conrad Irwin
b4b0f622de Rebuild vim search experience on refactored code 2023-07-07 15:57:54 -06:00
Conrad Irwin
232d14a3ae Make search less magic
Co-Authored-By: Antonio <antonio@zed.dev>
2023-07-07 15:57:54 -06:00
Conrad Irwin
dea728a7e5 Better waiting in tests 2023-07-07 15:57:54 -06:00
Conrad Irwin
6cf13c62d1 vim: ? to search backwards, and /<enter> to repeat search 2023-07-07 15:57:52 -06:00
Conrad Irwin
d70f415e8e vim: add gD to go to type definition 2023-07-07 15:57:37 -06:00
Conrad Irwin
dbec2ed1f1 vim: add */#/g*/g# for jumping to next word
As in vim, this toggles the normal search experience.
2023-07-07 15:57:35 -06:00
Conrad Irwin
96ce0bb783 vim: Enter/n/N to navigate search results 2023-07-07 15:57:14 -06:00
Conrad Irwin
2ffce24ef0 vim: Don't enter visual mode in search/go to definition
Fixes: zed-industries/community#1514
Contributes: zed-industries/community#1284
2023-07-07 15:56:37 -06:00
Conrad Irwin
75fe77c11d search: Allow running a search with different options
Refactor search options to use bitflags so that we can represent
the entire set of settings in one place.
2023-07-07 15:56:37 -06:00
Conrad Irwin
20d8a2a1ec vim: indent in visual mode uses only one <
Fixes: zed-industries/community#1562
2023-07-07 15:56:35 -06:00
Conrad Irwin
460bf93866 vim: { } to navigate by paragraph (#2668)
As part of this I added `assert_shared_state()` to the
NeovimBackedTestContext so that it is more like a drop-in replacement
for the VimTestContext.

The remaining part of zed-industries/community#682 is adding bracket
matching to plain text. It looks like the current logic requires there
to be a tree sitter language for the language in order to support
bracket matching. I didn't fix this in this PR because I was unsure
whether to try and work around that, or to try and add a plain text tree
sitter language.

Release Notes:

- vim: support `{` and `}` for paragraph motion
([#470](https://github.com/zed-industries/community/issues/470)).
- vim: fix `%` at the end of the line
([#682](https://github.com/zed-industries/community/issues/682)).
2023-07-07 14:59:06 -06:00
Conrad Irwin
362023ccf2 vim: keymap tweaks (#2674)
A few small tweaks to fix some of the community issues

Release Notes:

- vim: Fix `escape` in command palette
([#1347](https://github.com/zed-industries/community/issues/1347)).
- vim: Allow `^` as a motion in actions
([#856](https://github.com/zed-industries/community/issues/856)).
- vim: Allow `ctrl-c` to exit visual mode
([#1447](https://github.com/zed-industries/community/issues/1447)).
2023-07-07 14:58:01 -06:00
Julia
da7dce79f6 Prevent duplicate instances by coordinating via a socket (#2691)
We've been getting a bunch of panics from duplicate app instances
competing over the local sqlite DB. After chatting with @mikayla-maki we
determined it was probably best to add our own mechanism to prevent
duplicates rather than just relying on the OS. My logic is that we'd
need to build a system like this eventually for Windows/Linux anyway so
it's more appealing than reworking our local DB access to be able to
cooperate with another process while likely isn't something we want to
support anyway.

I attempted to keep this mechanism conservative so in the case of
another program interfering with it we should fail somewhat gracefully
and still continue to launch, albeit without the ability to prevent
another instance from launching.

Fixes
https://linear.app/zed-industries/issue/Z-2435/thread-background-executor-1-panicked-at-could-not-send-write-action

Release Notes:
- Added a mechanism to prevent duplicate Zed instances from launching to
avoid a crash.
2023-07-07 14:38:55 -04:00
KCaverly
3f5667b101 merged main 2023-07-07 14:24:29 -04:00
Julia
caa29d57c2 Avoid checking for duplicate instance when local DB is disabled 2023-07-07 14:20:39 -04:00
Julia
b70b76029e Use different port and handshake for different release channels 2023-07-07 14:20:39 -04:00
Julia
66bf56fc4f Prevent duplicate instances by coordinating via a socket 2023-07-07 14:19:44 -04:00
Piotr Osiewicz
4a69c71167 fixup! vcs: Add 'create branch' button 2023-07-07 18:37:53 +02:00
Piotr Osiewicz
cb24cb1ea5 vcs: Add 'create branch' button 2023-07-07 18:36:55 +02:00
Piotr Osiewicz
d69b07bafd Add tooltip to recent projects button
Z-2545
2023-07-07 16:30:19 +02:00
Piotr Osiewicz
abf3b4a54e chore: Replace lazy_static Mutex with const. (#2693)
Mutex::new() is const-stable as of Rust 1.63.

Release Notes:
- N/A
2023-07-07 15:07:12 +02:00
Antonio Scandurra
79ece8a86e Skip key down event if preceded by its key equivalent version (#2692)
Fixes
https://linear.app/zed-industries/issue/Z-2552/pressing-two-keystrokes-in-rapid-succession-ignores-the-latter

Previously, we would only track whether the previous key down event was
a key equivalent. However, this could cause issues when pressing certain
keystrokes in rapid succession, e.g.:

- Pressing `shift-right` (to select a character, dispatched as a key
equivalent)
- Pressing a character (with or without `shift` held down, dispatched as
a key down)

This would cause GPUI to ignore the second event because it was preceded
by a key equivalent event. With this commit, we track the last key
equivalent event, and skip the key down event only if it matches the
last key equivalent event.

Release Notes:

- Fixed a bug that could cause certain keystrokes performed in rapid
succession to incorrectly get ignored.
2023-07-07 12:13:32 +02:00
Antonio Scandurra
318deed25b Skip key down event if preceded by its key equivalent version
Previously, we would only track whether the previous key down event
was a key equivalent. However, this could cause issues when pressing
certain keystrokes in rapid succession, e.g.:

- Pressing `shift-right` (to select a character)
- Pressing a character (with or without `shift` held down)

This would cause GPUI to ignore the second event because it was
preceded by a key equivalent event. With this commit, we track the
last key equivalent event, and skip the key down event only if it
matches the last key equivalent event.
2023-07-07 12:02:08 +02:00
KCaverly
c03dda1a0c fixed bug on absolute vs relative path 2023-07-06 17:15:41 -04:00
KCaverly
6f1e988cb9 updated embedding treesitter query for python 2023-07-06 16:36:28 -04:00
KCaverly
7d634f66e2 updated vector_store to include extra context for semantic search modal 2023-07-06 16:33:54 -04:00
Kirill Bulatov
4ab2b8b24b Restart LSP server on corresponding initialization_options change (#2690)
Inlay hints depend on LSP server settings, but servers do not update the
initialization options and query hints with old settings.

Generally, we cannot know whether a certain option can be changed
without server restart, which the name of the options implies too, so be
on the safe side and restart the server.
Hints will update automatically after the server either sends a /refresh
request or reports its work progress end after startup.

Release Notes:

- Fixed LSP server not restarting after `initialization_options`
settings changes
2023-07-06 23:32:34 +03:00
Kirill Bulatov
e6ec0af743 Remove redundant hint kind checks in tests 2023-07-06 23:27:25 +03:00
Kirill Bulatov
fff65968bf Restart LSP server on initialization options change 2023-07-06 23:27:22 +03:00
KCaverly
e57f6f21fe reindexing update to appropriately accomodate for buffer delay and persistent pending files list 2023-07-06 15:26:43 -04:00
Piotr Osiewicz
3ca0170264 Z 1332/show search results in scrollbar (#2687)
This PR adds highlighting of search results to the scrollbar.

Release Notes:

- Added highlighting of search results to the scrollbar.
2023-07-06 19:28:21 +02:00
KCaverly
a86b6c42c7 corrected batching order and managed for open ai embedding errors 2023-07-06 11:11:39 -04:00
Nate Butler
793eff1695 Update scrollbar selection style 2023-07-06 10:54:47 -04:00
Antonio Scandurra
b4ed0347b4 Filter out non-json files when loading conversations (#2688)
Fixes
https://linear.app/zed-industries/issue/Z-2540/filter-out-non-conversation-files-from-the-assistant-history
2023-07-06 16:51:52 +02:00
Kirill Bulatov
2c7e5e0671 Clip find preceding boundary (#2689)
Fixes inability to do `alt + left arrow` when an inlay with `Bias::Left`
is right to the left of the caret.

Release Notes:

- N/A
2023-07-06 17:24:03 +03:00
Kirill Bulatov
11ae99fbd6 Add a test 2023-07-06 17:16:34 +03:00
Antonio Scandurra
708852aa00 Clip left when finding preceding (line) boundary
This fixes an issue that was causing `alt-left` to not move the cursor
when it was located right after an inlay hint with a `Left` bias.
2023-07-06 16:25:27 +03:00
Kirill Bulatov
348c93e8bb Show inlay hints on startup for every language server with work events (#2686)
Closes https://linear.app/zed-industries/issue/Z-2537/inlay-hint-issues

Language servers such as typescript-language-servers report a single
work event, ending right after server's startup.

Other servers might send more similar event, also during startup. The
rest of the events are diagnostic-related and we filter them out.

React on such events with /refresh-like hint update, that will check
only the visible part of the editor for hints and might be replaced by
other /refresh requests, if needed.

Release Notes:

- N/A
2023-07-06 16:18:22 +03:00
Antonio Scandurra
5408275c7a Filter out non-json files when loading conversations 2023-07-06 14:38:05 +02:00
Piotr Osiewicz
3e245fec90 Save a flushing line instead of discarding it 2023-07-06 13:52:03 +02:00
Piotr Osiewicz
5e7d9dc718 Add hunk merging 2023-07-06 13:31:45 +02:00
Piotr Osiewicz
b66453e771 fixup! Do not render multiple hunks for the same line 2023-07-06 12:11:08 +02:00
Kirill Bulatov
0b0a161626 Show inlay hints on startup for every language server with work events
Language servers such as typescript-language-servers report a single
work event, ending right after server's startup.

Other servers might send more similar event, also during startup.
The rest of the events are diagnostic-related and we filter them out.

React on such events with /refresh-like hint update, that will check
only the visible part of the editor for hints and might be replaced by
other /refresh requests, if needed.
2023-07-06 13:10:59 +03:00
Piotr Osiewicz
492b849ea1 Do not render multiple hunks for the same line 2023-07-06 12:09:33 +02:00
Piotr Osiewicz
8ced7ab00a Merge branch 'main' into Z-1292/show_search_results_in_scrollbar 2023-07-06 11:43:44 +02:00
Kirill Bulatov
c298cf7527 Use less padding for typescript parameter hints (#2684)
Part of https://linear.app/zed-industries/issue/Z-2537/inlay-hint-issues

Release Notes:

- N/A
2023-07-06 11:23:20 +03:00
Kirill Bulatov
1936bdebb3 Use less padding for typescript parameter hints 2023-07-06 11:16:39 +03:00
Antonio Scandurra
dd6629416c Fix panic when saved conversations directory changes (#2685)
Fixes
https://linear.app/zed-industries/issue/Z-2542/deleting-assistant-conversations-with-zed-open-can-cause-a-crash

We were updating the view's state but missed a `notify`, which caused
the `UniformList` responsible for rendering the saved conversations to
panic when some files were deleted.

Release Notes:

- Fixed a crash that could happen when deleting a saved assistant
conversation from the filesystem.
2023-07-06 10:06:43 +02:00
Antonio Scandurra
f6c96ec892 Fix panic when saved conversations directory changes
We were updating the view's state but missed a `notify`, which caused
the `UniformList` responsible for rendering the saved conversations
to panic when some files were deleted.
2023-07-06 09:53:34 +02:00
Mikayla Maki
801f41e68e Move audio dependency to dev 2023-07-05 12:15:56 -07:00
Mikayla Maki
8b8bafef22 Remove spurious audio depedency 2023-07-05 12:05:16 -07:00
Mikayla Maki
594b6e8d64 collab 0.16.0 2023-07-05 11:47:17 -07:00
Joseph T. Lyons
6a15ae9c01 v0.95.x dev 2023-07-05 14:17:37 -04:00
Nate Butler
76873c508a Z-2276/Z-2275: Project & Branch switchers (#2662)
This PR adds project and branch switchers in top left corner. 

Release Notes:
- Added a project & branch switcher under project name.
2023-07-05 13:09:40 -04:00
Piotr Osiewicz
b80281e556 cargo fmt 2023-07-05 18:57:06 +02:00
Nate Butler
1baa13561d Update project & git menus to be Toggleable<Interactive<ContainedText>>
Co-Authored-By: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
2023-07-05 12:50:56 -04:00
KCaverly
afccf608f4 updated both embed and parsing tasks to be multi-threaded. 2023-07-05 12:39:08 -04:00
Nate Butler
de01fa1794 Update collaboration sounds, add sounds to screensharing (#2679)
Updates all collab sounds, add screen sharing sounds.

Release Notes:

- Improved collaboration sounds for joining and leaving a call, muting
and unmuting the mic.
- Added a sound when you start and stop screen sharing.
2023-07-05 12:30:47 -04:00
Piotr Osiewicz
0e0d78df84 Do not render recent paths in toolbar's project switcher 2023-07-05 18:04:40 +02:00
Piotr Osiewicz
ec47464bba branch_list: Show match count on the right hand side of a header.
Co-authored-by: Antonio <antonio@zed.dev>
2023-07-05 16:56:08 +02:00
Piotr Osiewicz
85add260f6 Track regions instead of clicks.
Get rid of superfluous params in RenderParams related to hover & click state.

Co-authored-by: Antonio <antonio@zed.dev>
2023-07-05 16:48:52 +02:00
KCaverly
eff0ee3b60 enabled batching for embedding calls 2023-07-05 10:02:42 -04:00
Kirill Bulatov
91a94d299e Simplify inlay map data (#2683)
Current logic does not need to access inlays by id in O(1), future
dynamic hints would need to know which hint they hover at, but that will
be done using binary search over the position's anchor we hover on;
nothing else seems to need this HashMap in the near future.

Because of that removal, no need to store `InlayId` apart from the
`Inlay`, hence remove the `InlayProperties` struct entirely.
This allows to eliminate a few generics along the way.

Release Notes:

- N/A
2023-07-05 16:31:47 +03:00
Piotr Osiewicz
cc88bff1ff Fix click-through behaviour of git panel
Co-authored-by: Antonio <antonio@zed.dev>
2023-07-05 15:25:33 +02:00
Kirill Bulatov
d7f6b5e1a0 Remove InlayProperties 2023-07-05 16:17:14 +03:00
Kirill Bulatov
6ba1c3071a Simplify inlay map data 2023-07-05 15:23:56 +03:00
Piotr Osiewicz
8b3b1a6074 fixup! Remove stacks from branch list header 2023-07-05 14:08:21 +02:00
Piotr Osiewicz
64b77bfa8d Remove stacks from branch list header
Co-authored-by: Antonio <antonio@zed.dev>
2023-07-05 14:04:16 +02:00
Antonio Scandurra
5505ebf4bc Support assistant: quote selection on multibuffers (#2682)
Fixes
https://linear.app/zed-industries/issue/Z-2430/assistant-quote-selection-does-not-work-in-multi-buffer

Release Notes:

- Added support for invoking `assistant: quote selection` (`cmd->`) when
editing a multi-buffer.
2023-07-05 11:49:03 +02:00
Antonio Scandurra
d5f0df94f7 Support assistant: quote selection on multibuffers 2023-07-05 11:41:24 +02:00
Antonio Scandurra
1914037922 Restore focus to previously focused view when dismissing a modal (#2680)
Fixes
https://linear.app/zed-industries/issue/Z-2500/focus-is-moved-from-the-assistant-panel-when-opening-and-closing

Release Notes:

- Fixed a bug that caused modals (such as the command palette) to not
restore focus when dismissing them.
2023-07-05 11:37:45 +02:00
Antonio Scandurra
03a00df8b1 Restore focus to previously focused view when dismissing a modal 2023-07-05 09:40:26 +02:00
Antonio Scandurra
a8602b2a0c Add Modal::has_focus and introduce a ModalHandle trait object 2023-07-05 09:39:56 +02:00
Antonio Scandurra
25564ea058 Introduce a WindowContext::focus method that implies the window id 2023-07-05 09:39:04 +02:00
Nate Butler
a7ce602bac Update collaboration sounds, add sounds to screensharing 2023-07-04 16:18:42 -04:00
Kirill Bulatov
31483db5d8 Accept null as a valid action, to disable a keystroke (#2678)
Deals with https://github.com/zed-industries/community/issues/772
Closes
https://linear.app/zed-industries/issue/Z-1518/allow-keybindings-to-be-removed

Now, configuration like 
```json5
[
    {
        "context": "Editor",
        "bindings": {
            "alt-v": null,
        }
    }
]
```

will make `alt+v` to print `√` instead of moving the caret one page up.

Release Notes:

- Added a way to disable keybindings with `null` value
2023-07-04 21:51:46 +03:00
KCaverly
b6520a8f1d updated vector_store to reindex on save after timed delay 2023-07-04 14:42:12 -04:00
Kirill Bulatov
4c51ab8a25 Accept null as a valid action, to disable a keystroke
co-authored-by: Mikayla Maki <mikayla@zed.dev>
2023-07-04 21:11:28 +03:00
Nate Butler
76af424d79 Rename color_scheme -> theme (#2677)
Just some theme tidying, renames some things to be more consistent with
our planned naming conventions going forward.

Release Notes:

- N/A (No public facing changes)
2023-07-04 11:56:30 -04:00
KCaverly
e45d3a0a63 WIP: initial reindexing logic worked out 2023-07-04 11:46:09 -04:00
Piotr Osiewicz
48371ab8b2 Remove PickerEvent::Dismiss emission from picker header 2023-07-04 16:30:17 +02:00
Piotr Osiewicz
e9b34de7c8 Fix click behaviour of vcs/project dropdowns 2023-07-04 16:00:59 +02:00
Conrad Irwin
0d18b72cf8 vim: Further improve ~ handling
Now works with Visual{line} mode, collapses selections like nvim,
and doesn't fall off the end of the line.
2023-07-03 23:58:09 -06:00
Nate Butler
f461a70970 Remove unused ts aliases 2023-07-04 01:37:45 -04:00
Nate Butler
65dbb38926 color_scheme -> theme 2023-07-04 01:20:56 -04:00
Nate Butler
c5a42c317a Remove unused color_scheme field in the theme (#2676)
We removed the `theme_testbench` crate a while back - It seems like that
was the only thing using the `color_scheme` field in the exported theme.

Removing this from the theme removes something like 42k lines of
generated JSON every time we build the theme (2k lines / 28% of the
total lines per generated theme!)

Release Notes:

- N/A (No public facing changes)
2023-07-04 00:58:37 -04:00
Nate Butler
a732b2e043 Remove unused color_scheme field in the theme
I totally didn't mean to commit this right to main T_T
2023-07-04 00:44:12 -04:00
Nate Butler
c409059dc4 Revert "Remove unused color_scheme field in the theme"
This reverts commit 5a1476a1e5.
2023-07-04 00:41:13 -04:00
Nate Butler
5a1476a1e5 Remove unused color_scheme field in the theme 2023-07-04 00:40:01 -04:00
Nate Butler
0b4c5db5e2 Use theme store to pass color_scheme directly to components (#2675)
This PR adds a theme store to allow components to directly access the
theme without requiring it to be passed down as props every time it is
used.

So before, you might need to do something like `text(theme, "variant",
"hovered")`, you could now just call `text("variant", "hovered")`.

This also means that style_trees don't need to be called with a theme
either:

```ts
export default function app(): any {
    const theme = useTheme()

    return {
        meta: {
            name: theme.name,
            is_light: theme.is_light,
        },
        command_palette: command_palette(),
        contact_notification: contact_notification(),
        // etc...
    }
}
```

We do this by creating a zustand store to store the theme, and allow it
to be accessed with `useThemeStore.getState().theme`.

```ts
import { create } from "zustand"
import { ColorScheme } from "./color_scheme"

type ThemeState = {
    theme: ColorScheme | undefined
    setTheme: (theme: ColorScheme) => void
}

export const useThemeStore = create<ThemeState>((set) => ({
    theme: undefined,
    setTheme: (theme) => set(() => ({ theme })),
}))

export const useTheme = (): ColorScheme => {
    const { theme } = useThemeStore.getState()

    if (!theme) throw new Error("Tried to use theme before it was loaded")

    return theme
}
```

Release Notes:

- N/A (No public facing changes)
2023-07-04 00:37:45 -04:00
Nate Butler
8a5e7047f0 Update a few more components 2023-07-04 00:32:27 -04:00
Nate Butler
d5acfe8fc1 Use theme store to pass color_scheme directly to components 2023-07-04 00:13:04 -04:00
Conrad Irwin
0733e8d50f Remove editor::Cancel binding from vim
When you hit <escape> in the command palette, it first editor::Cancel
because the command palette is also a focused editor; this binding was
catching before the `menu::Cancel` that you probably want.

From looking at the uses of editor::Cancel it seems like the only way to
trigger this is with <escape> in an editor. Rather than trying to hook
into the existing editor cancel and add vim-specific behaviour, we'll
instead take responsibility for binding directly to <escape> when
necessary.

Fixes: zed-industries/community#1347
2023-07-03 15:26:39 -06:00
Mikayla Maki
f8316dd127 Add sound effects to calls (#2673)
This PR adds joined, leaving, mute, and unmute sound effects to Zed. 

Release Notes:

- Added joined, leaving, mute, and unmute sound effects (preview-only)
2023-07-03 13:55:48 -07:00
Mikayla Maki
c700342a1c Guard against uninstantiated globals in tests 2023-07-03 13:48:17 -07:00
Mikayla Maki
0e4c904091 Add joined sound effect when new participants join the room 2023-07-03 13:36:03 -07:00
Mikayla Maki
d2127825e3 Add first-pass sound support to Zed 2023-07-03 13:30:04 -07:00
Conrad Irwin
fe57e04016 vim: Allow ^ as a motion
Fixes: zed-industries/community#856
2023-07-03 12:55:41 -06:00
Conrad Irwin
b055f594b0 vim: ctrl-c to exit visual mode
Fixes: zed-industries/community#1447
Contributes: zed-industries/community#1089
2023-07-03 12:52:33 -06:00
Piotr Osiewicz
14eab4e94f branch list: dismiss correct window on PickerEvent.
Query proper window
2023-07-03 19:22:43 +02:00
Kirill Bulatov
6c01aeaf77 Do not perform OnTypeFormating after pair brace insert (#2672)
Closes
https://linear.app/zed-industries/issue/Z-2358/ra-brace-auto-surround-causes-duplicate-end-char-with-selection

Release Notes:

- Fixed a bug when duplicate brace appeared after selected text got
surrounded with braces
2023-07-03 17:26:55 +03:00
Piotr Osiewicz
806268f0db Merge branch 'main' into git-menu 2023-07-03 16:25:36 +02:00
Kirill Bulatov
85701c9b80 Do not perform OnTypeFormating after pair brace insert
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-07-03 17:21:44 +03:00
Piotr Osiewicz
4eedc3e646 Remove flex from underneath the pickers 2023-07-03 16:16:14 +02:00
Kirill Bulatov
8efb66be67 Do not add extra spaces to hints (#2671)
Closes
https://linear.app/zed-industries/issue/Z-2526/inlay-hints-in-typescript-types-have-extra-space-before#comment-ac88a101

Release Notes:

- N/A
2023-07-03 11:18:07 +03:00
Kirill Bulatov
43d4f04331 Do not add extra spaces to hints 2023-07-03 11:17:12 +03:00
Conrad Irwin
e36d5f41c8 Fix % when on the last character of the line
Contributes: zed-industries/community#682
2023-07-01 13:51:11 -06:00
Piotr Osiewicz
026ad191eb Dismiss dropdowns on click out 2023-07-01 01:49:00 +02:00
Piotr Osiewicz
525521eeb3 Render match count next to branch label 2023-07-01 01:38:36 +02:00
Mikayla Maki
138de37cbf Add basic sound handling infrastructure 2023-06-30 16:10:49 -07:00
KCaverly
18a5a47f8a moved semantic search model to dev and preview only.
moved db update tasks to long lived persistent task.

Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-06-30 18:41:19 -04:00
KCaverly
3408b98167 updated file compare in the semantic indexing engine, to work off of modified system times as opposed to file hashes
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-06-30 16:53:23 -04:00
KCaverly
36907bb4dc updated vector store indexing to only use languages with an embedding.scm treesitter query
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-06-30 16:14:11 -04:00
Kirill Bulatov
e017d62e92 Remove excessive hint update queries (#2667)
Closes
https://linear.app/zed-industries/issue/Z-2513/panic-in-refresh-inlay-hints

* Filter out queries for outdated buffers just before hint tasks spawn:
  multicaret edits might emit standalone events simultaneously
* Only spawn inlay update tasks for visible buffers with corresponding
  language
* Do not spawn tasks for local projects' buffers without LSP servers

Release Notes:

- N/A
2023-06-30 22:15:36 +03:00
Kirill Bulatov
ae54e1d224 Remove excessive hint update queries
* Filter out queries for outdated buffers just before hint tasks spawn:
  multicared edits might empit standalone events simultaneously
* Only spawn inlay update tasks for visible buffers with corresponding
  language
* Do not spawn tasks for local projects' buffers without LSP servers
2023-06-30 22:03:21 +03:00
Max Brunsfeld
f83514cde4 Fix regression in handling git FS events (#2670)
As part of an optimization in
https://github.com/zed-industries/zed/pull/2663, I changed the way that
the worktree ignores FS events within unloaded directories. But this
accidentally prevented us from detecting some events that occur inside
of `.git` directories.

In this PR, I've made further tweaks to which FS events we can ignore.
We now explicitly opt *in* to scanning `.git` (shallowly) directories
(even though they are ignored). Note that we still don't recursively
scan the git directory (including all of the files inside `objects`
etc). This seems like the correct amount of work to do, and from my
testing (and our unit tests that use the real FS and real git
repositories), it seems to work correctly.

Release Notes:

- Fixed a bug where Zed would not detect some git repository changes
(preview only).
2023-06-30 11:40:49 -07:00
Max Brunsfeld
92df76e632 Fix accidental ignoring of git FS events 2023-06-30 11:20:50 -07:00
Piotr Osiewicz
7c2c1a279b Add missing rust-side definitions 2023-06-30 20:09:30 +02:00
Piotr Osiewicz
cec884b5a5 Add styles for project name/git menu 2023-06-30 20:07:44 +02:00
Piotr Osiewicz
a5d9a10d7b Focus dropdowns on open 2023-06-30 19:48:28 +02:00
Joseph T. Lyons
6042cf928c Fix bug preventing the assist command from working in certain keymaps (#2669)
Fixes: https://github.com/zed-industries/community/issues/1712

The keymaps were adding in a `"cmd-enter": "editor::NewlineBelow",`
entry in the context of `Editor`, and this was clobbering the assist
command in the assistant panel context. Zed now defines this command in
the default keymap under the context of `"context": "Editor && mode ==
full"`. All I needed to basically do was remove that command from the
keymaps. I also removed the `"cmd-shift-enter": "editor::NewlineAbove"
from the `Editor` context in those keymaps as wel, as it is also defined
in the default keymap.

Release Notes:

- Fix bug preventing the `assistant: assist` command from working in
certain keymaps
2023-06-30 13:32:42 -04:00
Joseph T. Lyons
4a654f5252 Fix bug preventing the assist command from working in certain keymaps 2023-06-30 13:27:48 -04:00
Antonio Scandurra
f4d71b2b24 WIP
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-06-30 18:03:43 +02:00
KCaverly
0db0876289 implemented file deletes on project indexing 2023-06-30 11:01:35 -04:00
Mikayla Maki
a9c1395b9b WIP: Add the ability to make new directories by adding slashes to a file name (#2638)
This PR adds a new way to make files / directories in the project panel,
by writing a path instead of a file.

TODO:
- [x] Solve a race condition that sometimes causes the newly created
file to not be selected / expanded correctly.
- [x] Change file refreshes to be minimal

Release Notes:

- Adds the ability to create new folders in the create-file action
([743](https://github.com/zed-industries/community/issues/743))
2023-06-30 07:46:32 -07:00
Piotr Osiewicz
ed75c31640 Improve styling of git menu 2023-06-30 16:38:38 +02:00
Piotr Osiewicz
b699e5c142 Add styles to git menu 2023-06-30 16:23:27 +02:00
KCaverly
e3ab54942e removed sleep from directory scanning as fixes upstream appear to be scanning correctly 2023-06-30 10:17:31 -04:00
KCaverly
1d737e490b Merge branch 'main' of github.com:zed-industries/zed into vector_store 2023-06-30 09:58:13 -04:00
Piotr Osiewicz
3be8977ee8 Switch branches within spawn() 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
c1a6292152 Add missing call to cx.notify 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
081e340d26 Do not query db on foreground thread.
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-06-30 14:05:55 +02:00
Piotr Osiewicz
818ddbc703 Make project dropdown exclusive wrt git menu 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
888d3b3fd6 Project dropdown menu 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
d000ea9739 Fix warning about unused variable 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
1eb0f3d091 Update toast for checkout failure 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
98f71a7fa3 Trail off project/branch name 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
e57364ede6 Remove unnecessary imports 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
aeafa6f6d6 Fix build after rebase 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
c84f3b3bfc Add toast for git checkout failure 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
54fad5969f List recent branches 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
3027e4729a Add timestamps to branches 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
6747acbb84 Trail off branch names 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
ac6e9c88e9 Render header and footer of git menu 2023-06-30 14:05:55 +02:00
Piotr Osiewicz
d8d0bdc479 WIP: git menu 2023-06-30 14:05:55 +02:00
Antonio Scandurra
cdeabcab4e Introduce branches and revisions
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-06-30 10:59:23 +02:00
Antonio Scandurra
4070f67f3b Turn visible into a method on DocumentFragment 2023-06-30 09:21:32 +02:00
Mikayla Maki
3d6e063a6d Fix method header 2023-06-29 23:53:57 -07:00
Mikayla Maki
d22a576f5e fix failing test 2023-06-29 23:50:24 -07:00
Conrad Irwin
abb58c41db vim: Fix edge-case in } when trailing newline is absent
Added .assert_shared_state() to NeovimBackedTestContext – although it's
not strictly necessary to show the expected behaviour in the test file
(as we can just compare to neovim's JSON recording), it makes it much
easier to understand what we're testing.
2023-06-29 23:31:22 -06:00
Conrad Irwin
9ee2707d43 vim: Add }/{ for start/end of paragraph
Fixes: zed-industries/community#470
2023-06-29 23:31:22 -06:00
Mikayla Maki
a9a51ab3ad Added more tests and minimal file updates 2023-06-29 18:21:35 -07:00
Mikayla Maki
a6dabf7acf Make path updates minimal 2023-06-29 18:15:40 -07:00
Mikayla Maki
787412b545 fmt and update dependency 2023-06-29 17:49:42 -07:00
Mikayla Maki
cd670e340f Fix edge case with absolute file paths 2023-06-29 17:48:01 -07:00
Mikayla Maki
33f5248d4f Add the ability to make new directories by adding slashes to a file name 2023-06-29 17:35:22 -07:00
Mikayla Maki
f6b64dc67a Add click out events to GPUI (#2659)
This PR adds a new mouse event type for catching when a click happens
outside of a given region.

This was added because I noticed a 'race condition' between the context
menu and the buttons which deploy a context menu. Buttons use on
an`on_click()` handler to deploy the context menu, but the context menu
was closing itself with an `on_down_out()` handler. This meant that the
order of operations was:

0. Context menu is open
1. User presses down on the button, _outside of the context menu_ 
2. `on_down_out()` is fired, closing the context menu
3. User releases the mouse
4. `click()` is fired, checks the state of the context menu, finds that
it's closed, and so opens it

You can see this behavior demonstrated with this video with a long-click
here:


https://github.com/zed-industries/zed/assets/2280405/588234c3-1567-477f-9a12-9e6a70643527

~~Switching from `on_down_out()` to `on_click_out()` means that the
click handler for the button can close the menu before the context menu
gets a chance to close itself.~~

~~However, GPUI does not have an `on_click_out()` event, hence this
PR.~~

~~Here's an example of the new behavior, with the same long-click
action:~~


https://github.com/zed-industries/zed/assets/2280405/a59f4d6f-db24-403f-a281-2c1148499413

Unfortunately, this `click_out` is the incorrect event for this to
happen on. This PR now adds a mechanism for delaying the firing of a
cancel action so that toggle buttons can signal that this on_down event
should not result in a menu closure.

Release Notes:

* Made context menus deployed from buttons toggle, instead of
hide-and-re-show, visibility on click
2023-06-29 17:33:37 -07:00
Mikayla Maki
73b0f3b23d fmt 2023-06-29 17:19:35 -07:00
Mikayla Maki
5366631173 Remove on_click_out handler from context menu
Add 'delay_cancel()' method and on_down handler to relevant buttons
2023-06-29 17:10:51 -07:00
Nate Butler
530561e4eb Extract assistant tool buttons into tab_bar_button 2023-06-29 18:13:31 -04:00
Nate Butler
77b120323b Add low_tokens_remaining case to the assistant 2023-06-29 17:44:47 -04:00
Nate Butler
d6112e4a59 Add doc comments for ColorScheme layer properties 2023-06-29 17:32:19 -04:00
Nate Butler
2678dfdc57 Update assistant styles 2023-06-29 17:32:04 -04:00
Kirill Bulatov
167dd1c5d2 Support basic inlay hints (#2660)
Part of https://github.com/zed-industries/community/issues/138
Part of https://linear.app/zed-industries/issue/Z-477/inlay-hints

Supports LSP requests for inlay hints, LSP /refresh request to reload
them.
Reworks DisplayMap and underlying layer to unite suggestions with inlay
hints into new, `InlayMap`.
Adds a hint cache inside `Editor` that tracks buffer/project/LSP request
events, updates the hints and ensures opened editors are showing up to
date text hints on top.

Things left to do after this PR:
* docs on how to configure inlay hints
* blogpost
* dynamic hints: resolve, hover, navigation on click, etc.

Release Notes:

- Added basic support of inlay hints
2023-06-29 22:49:39 +03:00
Kirill Bulatov
b146762f68 Remove a flacky test, fix the failing one 2023-06-29 22:45:04 +03:00
Kirill Bulatov
652909cdba Post-rebase fixes 2023-06-29 22:39:33 +03:00
Kirill Bulatov
3445bc42b6 Invalidate refresh tasks better 2023-06-29 22:39:18 +03:00
Kirill Bulatov
98edc0f885 Simplify the hint cache code 2023-06-29 22:39:18 +03:00
Kirill Bulatov
083e4e76e2 Better tests, invalidate multibuffer excerpts better 2023-06-29 22:39:18 +03:00
Kirill Bulatov
943c93fda7 Simplify hint task queueing 2023-06-29 22:39:18 +03:00
Kirill Bulatov
30e77aa388 More inlay hint cache tests 2023-06-29 22:39:18 +03:00
Kirill Bulatov
429a9cddae Use fold points to go to display map's prev/next line boundary
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:39:18 +03:00
Kirill Bulatov
bb9ade5b6f Fix wrap map test
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:39:18 +03:00
Kirill Bulatov
2b59f27c3b Fix fold map tests
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:39:18 +03:00
Kirill Bulatov
0972766d1d Add more hint tests 2023-06-29 22:39:18 +03:00
Kirill Bulatov
15e0feb91d Move highlights from fold to inlay randomized tests 2023-06-29 22:39:18 +03:00
Kirill Bulatov
667b70afde Move hint settings on the language level 2023-06-29 22:39:18 +03:00
Kirill Bulatov
480d8c511b Theme hints and suggestions differently 2023-06-29 22:39:18 +03:00
Kirill Bulatov
3312c9114b Improve inlay hint highlights
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:39:18 +03:00
Kirill Bulatov
2c54d926ea Test inlay hint cache 2023-06-29 22:39:18 +03:00
Nate Butler
143a020694 Update Hint Style
zzz
2023-06-29 22:39:17 +03:00
Kirill Bulatov
67214f0e55 Only skip /refresh inlay queries when vislble range is not updated 2023-06-29 22:25:50 +03:00
Kirill Bulatov
096bad1f73 Revert useless changes, simplify 2023-06-29 22:25:50 +03:00
Antonio Scandurra
f77b680db9 Account for inlay biases when clipping a point 2023-06-29 22:25:50 +03:00
Antonio Scandurra
976edfedf7 Add Cursor::next_item 2023-06-29 22:25:50 +03:00
Kirill Bulatov
5c21ed4263 Properly filter out task hints 2023-06-29 22:25:50 +03:00
Kirill Bulatov
dfb30218ca Remove mutex usage from *Map contents 2023-06-29 22:25:50 +03:00
Kirill Bulatov
acef5ff195 Query hints when editors gets open and visible 2023-06-29 22:25:50 +03:00
Kirill Bulatov
11fee4ce42 Do not eagerly cancel running tasks 2023-06-29 22:25:49 +03:00
Kirill Bulatov
4d4544f680 Split excerpts into mutliple ranges for inlay hint queries 2023-06-29 22:25:49 +03:00
Kirill Bulatov
2c7900e11b Use excerpt visible range in query filtering 2023-06-29 22:25:49 +03:00
Kirill Bulatov
83b3a914bc Support better inlay cache parallelization 2023-06-29 22:25:49 +03:00
Kirill Bulatov
890b164278 Forward inlay hint refresh requests to clients, test coop inlay hints 2023-06-29 22:25:49 +03:00
Kirill Bulatov
a68e68a0d9 Properly filter out new hints outside of excerpts' visible ranges 2023-06-29 22:25:49 +03:00
Kirill Bulatov
ba3d1e4dba Deduplicate inlay hints queries with buffer versions 2023-06-29 22:25:49 +03:00
Kirill Bulatov
f25a09bfd8 Avoid excessive allocations with Arc around excerpt cached inlays 2023-06-29 22:25:49 +03:00
Kirill Bulatov
48982c3036 Filter away new hints not in excerpt range 2023-06-29 22:25:49 +03:00
Kirill Bulatov
316e19ce94 Remove stale cancelled inlay hints workaround 2023-06-29 22:25:49 +03:00
Kirill Bulatov
96a34ad0ee Use text anchors as hint position in hints cache
co-authored-by: Max Brunsfeld <max@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
781fa0cff4 Deduplicate LSP requests on multibuffer scroll 2023-06-29 22:25:49 +03:00
Kirill Bulatov
c61de29c11 Use proper anchors for remote LSP queries 2023-06-29 22:25:49 +03:00
Kirill Bulatov
cb4b92aa61 Simplify hint event management slightly 2023-06-29 22:25:49 +03:00
Kirill Bulatov
d59e91aff2 Insert new hints into cache better 2023-06-29 22:25:49 +03:00
Kirill Bulatov
d6828583d8 Box the cache for better performance 2023-06-29 22:25:49 +03:00
Kirill Bulatov
1722d61190 Mitigate odd offset calculations 2023-06-29 22:25:49 +03:00
Kirill Bulatov
7fddc223cd Move away heavy inlay computations into background tasks 2023-06-29 22:25:49 +03:00
Kirill Bulatov
31f0f9f7b1 Forbid extra inlay updates 2023-06-29 22:25:49 +03:00
Kirill Bulatov
97e5d40579 Add snapshot version to use when avoiding wrong state updates 2023-06-29 22:25:49 +03:00
Kirill Bulatov
8d982a6c2d Finish modelling 2023-06-29 22:25:49 +03:00
Kirill Bulatov
4c78019317 Start to model the background threads for InlayHintCache 2023-06-29 22:25:49 +03:00
Kirill Bulatov
2f1a27631e React on multibuffer scrolls again 2023-06-29 22:25:49 +03:00
Kirill Bulatov
a31d3eca45 Spawn cache updates in separate tasks 2023-06-29 22:25:49 +03:00
Antonio Scandurra
9698b51524 Prevent insertion of empty inlays into InlayMap 2023-06-29 22:25:49 +03:00
Kirill Bulatov
3b9a2e3261 Do not track editor ranges in InlayHintCache 2023-06-29 22:25:49 +03:00
Kirill Bulatov
70a45fc800 Fix cache incremental updates 2023-06-29 22:25:49 +03:00
Kirill Bulatov
7ac1885449 Properly refresh hints on editor open 2023-06-29 22:25:49 +03:00
Kirill Bulatov
58343563ba Fix hint querying bugs 2023-06-29 22:25:49 +03:00
Kirill Bulatov
debdc3603e Finish rest of the inlay cache logic 2023-06-29 22:25:49 +03:00
Kirill Bulatov
ddcbc73bf0 Implement inlay hint replaces for conflict-less case 2023-06-29 22:25:49 +03:00
Kirill Bulatov
6368cf1a27 Merge excerpt-related hint data, move next_inlay_id into Editor 2023-06-29 22:25:49 +03:00
Kirill Bulatov
8c03e9e122 Move InlayId generation back to InlayCache 2023-06-29 22:25:49 +03:00
Kirill Bulatov
e82b4d8957 Properly handle hint addition queries 2023-06-29 22:25:49 +03:00
Kirill Bulatov
5322aa09b9 Properly handle settings toggle 2023-06-29 22:25:49 +03:00
Kirill Bulatov
8f68688a64 Allow readding inlays with existing ids, move inlay types 2023-06-29 22:25:49 +03:00
Kirill Bulatov
49c00fd571 Generate InlayIds in InlayMap, prepare InlayCache for refactoring 2023-06-29 22:25:49 +03:00
Kirill Bulatov
e217a95fcc Cleanup the warnings 2023-06-29 22:25:49 +03:00
Kirill Bulatov
76d35b7122 Use proper, limited excerpt ranges and manage inlay cache properly 2023-06-29 22:25:49 +03:00
Kirill Bulatov
2b989a9f12 Fix all the tests
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
d4d88252c3 Fix most of the FoldMap random tests with inlays
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
f2c510000b Fix all FoldMap tests (without real inlays inside)
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
29bb6c67b0 Fix first FoldMap methods after the map move
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
9ae611fa89 Fix InlayMap bugs after the map order revers
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
05dc672c2a Apply questionable changes to make things compile 2023-06-29 22:25:49 +03:00
Kirill Bulatov
10765d69f4 Move inlay map to be the first one
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
e744fb8842 Avoid having carriage returns (\r) in inlays
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
d2fef07782 Remove the SuggestionMap
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
8cdf1a0faf Switch over to inlay map for Copilot suggestions
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Antonio Scandurra
89137e2e83 Fix InlayMap::buffer_rows 2023-06-29 22:25:49 +03:00
Kirill Bulatov
34c6d66d04 Implement InlayBufferRows properly
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
bec9c26fa2 Fix more inlay_map corner cases and hangings
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
02e124cec4 Fix inlay map tests
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
b231fa47af Apply hints setings on startup 2023-06-29 22:25:49 +03:00
Kirill Bulatov
c898298c5c Properly update inlay hints when settings are changed 2023-06-29 22:25:49 +03:00
Kirill Bulatov
1ed52276e0 Add inlay hint settings 2023-06-29 22:25:49 +03:00
Kirill Bulatov
ea837a183b Store inlays per paths and query on editor open 2023-06-29 22:25:49 +03:00
Kirill Bulatov
8acc5cf8f4 Deserialize more LSP inlay hint information 2023-06-29 22:25:49 +03:00
Kirill Bulatov
f155f5ded7 Better rpc inlay hint handling 2023-06-29 22:25:49 +03:00
Kirill Bulatov
b3aa75a363 Refresh inlays on buffer reopens 2023-06-29 22:25:49 +03:00
Kirill Bulatov
e1f22c3684 Cache anchors from all versions, remove out of range hints 2023-06-29 22:25:49 +03:00
Kirill Bulatov
7abaf22b93 Generate proper inlay diffs for splice 2023-06-29 22:25:49 +03:00
Kirill Bulatov
6d1068d1e9 Query inlay hints for excerpt ranges only 2023-06-29 22:25:49 +03:00
Kirill Bulatov
271cd25a1d Display excerpt-ranged hints only 2023-06-29 22:25:49 +03:00
Kirill Bulatov
addb62c1fc Fix the duplicate hints
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
63074c5cd8 Better bias selection for hints that prefix the type
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Antonio Scandurra
2b1b1225f5 Simplify InlayMap::splice interface 2023-06-29 22:25:49 +03:00
Antonio Scandurra
7684a26daa Fix point/offset translation and clipping in the InlayMap
This makes all randomized tests pass. We're only missing `buffer_rows`
now and we should move the map right above `MultiBuffer` and below `FoldMap`.
2023-06-29 22:25:49 +03:00
Kirill Bulatov
c7fa8dbc70 React with inlay updates on excerpt events 2023-06-29 22:25:49 +03:00
Kirill Bulatov
df20a43704 Reuse the copilot suggestion style for inlays 2023-06-29 22:25:49 +03:00
Kirill Bulatov
8a64b07622 Fixed inlay hints' edits generation and moved on with the randomized
test

Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Antonio Scandurra
e280483c5f Make the randomized tests pass
Right now we only check that the text is correct, but I think
we're getting there.
2023-06-29 22:25:49 +03:00
Kirill Bulatov
afa59eed01 Fix the randomized tests
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
f940104b6f Add inlay hint randomization in the text
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
dbd4b33568 Fix splice edits generation
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
9ce9b73879 Generate edits for inlay hints
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
f5f495831a Add inlay hints randomized test, fix the errors
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
2e730d8fa4 Implement initial changes reporting for inlay hints
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
4d76162da8 Report the edits per transform summary generated
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
2ba3262f29 Add line_len snapshot method
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
ab7dd80423 Add more InlaySnapshot text summary impls
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
568a67c4d7 Implement more InlaySnapshot methods
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:49 +03:00
Kirill Bulatov
daa2ebb57f Calculate anchors for new hints 2023-06-29 22:25:49 +03:00
Kirill Bulatov
5fadbf77d4 Implement InlayHint sync method and fix the bugs
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:48 +03:00
Kirill Bulatov
5ad85b44d6 Implement chunks of the InlayMap
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:48 +03:00
Kirill Bulatov
3028767d12 Improve on inlya locations 2023-06-29 22:25:48 +03:00
Kirill Bulatov
b193d62a5d Initial InlayMap tests and splice fn impl
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-29 22:25:48 +03:00
Kirill Bulatov
7397b8028c Simplify inlay hint version handling 2023-06-29 22:25:48 +03:00
Kirill Bulatov
d506522eef Correctly pass inlay hints 2023-06-29 22:25:48 +03:00
Kirill Bulatov
b5233b3ad5 Rename the new map 2023-06-29 22:25:48 +03:00
Kirill Bulatov
9287634548 Prepare to find diffs between inlay hint generations 2023-06-29 22:25:48 +03:00
Kirill Bulatov
78b3c9b88a Store hints in the new map only 2023-06-29 22:25:48 +03:00
Kirill Bulatov
83f4320b60 Replace todo!s with stub calls to make Zed work 2023-06-29 22:25:48 +03:00
Kirill Bulatov
4c3c0eb796 Draft the hint render data flow 2023-06-29 22:25:48 +03:00
Kirill Bulatov
2ead3de7de Add basic infrastructure for inlay hints map 2023-06-29 22:25:48 +03:00
Kirill Bulatov
6e3d1b962a Draft the initial protobuf changes 2023-06-29 22:25:48 +03:00
Kirill Bulatov
387415eb01 Request hints for all buffers in editor 2023-06-29 22:25:48 +03:00
Kirill Bulatov
f83cfda9bc React on message-less LSP requests properly
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-06-29 22:25:48 +03:00
Kirill Bulatov
7a268b1cf6 Improve obvious faults 2023-06-29 22:25:48 +03:00
Kirill Bulatov
79b97f9e75 Stub initial hint requests 2023-06-29 22:25:48 +03:00
Kirill Bulatov
8a3b515f56 Initial protocol check commit 2023-06-29 22:25:48 +03:00
KCaverly
39137fc19f updated vector_store db to leverage EMBEDDINGS_DIR path 2023-06-29 15:18:32 -04:00
Max Brunsfeld
1ae5261024 Avoid redundant FS scans when LSPs changed watched files (#2663)
Release Notes:

- Fixed a performance problem that could occur when a language server
requested to watch a set of files (preview only).
2023-06-29 12:07:24 -07:00
Max Brunsfeld
922d8f30d6 Tweak debug log message when ignoring fs events 2023-06-29 12:01:59 -07:00
Max Brunsfeld
8609ccdcf7 Add test coverage for FS events happening inside unloaded dirs 2023-06-29 11:55:25 -07:00
Nate Butler
ae9eb7c67a Re-add missing active state (#2664)
[[PR Description]]

Release Notes:

- Fixes project panel active state that was incorrectly removed.
2023-06-29 14:45:19 -04:00
Nate Butler
764968e7d0 Re-add missing active state 2023-06-29 14:40:00 -04:00
Max Brunsfeld
ba80c53278 Avoid redundant FS scans when LSPs changed watched files
* Don't scan directories if they were already loaded.
* Do less work when FS events occur inside unloaded directories.
2023-06-29 11:35:49 -07:00
KCaverly
0a7245a583 updated semantic search modal to manage for duplicate queries 2023-06-29 13:50:49 -04:00
Nate Butler
c7c38c7da2 snake_case theme (#2661)
This PR moves the theme / `/styles` typescript app to use snake_case to
better align with the rust app and make it easier to reference things
across both apps.

It also configures ESLint in the styles app and fixes many ESLint
errors.

Going forward from this PR we will use `snake_case` throughout the
theme.

Release Notes:

- N/A (No public facing changes)
2023-06-29 12:47:15 -04:00
KCaverly
a08d60fc61 added navigation on confirm to semantic search modal 2023-06-29 11:58:47 -04:00
Nate Butler
5211328234 Delete snake_case.ts 2023-06-29 11:56:14 -04:00
Nate Butler
d285d56fe3 Update package-lock.json 2023-06-29 11:48:17 -04:00
Nate Butler
8bff641cc4 Organize and update dotfiles 2023-06-29 11:47:58 -04:00
Nate Butler
a6f7e31bb9 Update & format 2023-06-29 11:41:51 -04:00
Nate Butler
97dc7b77f4 WIP snake_case 5/? 2023-06-29 11:31:23 -04:00
Nate Butler
0627c198fd WIP snake_case 4/? 2023-06-29 10:57:19 -04:00
Antonio Scandurra
4bc1b57d8f WIP 2023-06-29 12:06:47 +02:00
Antonio Scandurra
4c672c4e5f Add a basic test that passes when editing two documents
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-06-29 11:23:02 +02:00
Nate Butler
17f2fed3c8 WIP snake_case 3/? 2023-06-29 02:16:21 -04:00
Nate Butler
ba17fae8d9 WIP snake_case 2/? 2023-06-29 01:48:40 -04:00
Nate Butler
b015f506da WIP snake_case 1/?
through `contact_notification`
2023-06-28 22:42:57 -04:00
Julia
14ff411907 Detect and fix broken lsp installations (#2646)
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

Closes
https://linear.app/zed-industries/issue/Z-665/add-a-mechanism-for-detecting-and-fixing-broken-language-server
Fixes https://github.com/zed-industries/community/issues/1671
Fixes https://github.com/zed-industries/community/issues/1691
Fixes https://github.com/zed-industries/community/issues/1524
Fixes https://github.com/zed-industries/community/issues/1352
Fixes https://github.com/zed-industries/community/issues/1109
Fixes https://github.com/zed-industries/community/issues/996
Fixes https://github.com/zed-industries/community/issues/782

Things this PR does:
 - Updates our elixir-ls fetching to use new release name format
 - Detect when a server fails to launch
   - If the adapter claims to be reinstallable, get a test binary
   - If the test binary fails to launch or returns a failure error code
   - Clear container dir and reinstall
 - Detect/fix broken Node
 
Things it does not do:
- Restart server on failure, I have most of the stuff for this already
so it should be a fast follow up
 - Detect/fix broken Copilot

Node and Copilot shouldn't be too bad, they are handled via different
mechanisms. Originally I put effort into detecting failure of the server
during normal operation post launch, but that's not really needed. If
the server gets borked while running then we'll catch that on next
startup. Realizing that allowed for pruning a bunch of the work I did
and made the overall system a lot nicer

Copilot is nominally a language server but does not have an adapter and
does not run through the same mechanism in the project.

We're going to have an issue with multiple language server instances in
different projects once we add a "Reinstall Language Server" action,
which is why it's not in this PR. Each project has its own list of
server instances and is currently vaguely responsible for managing the
installations which means they can step on each others toes. This should
change, probably

Release Notes:
- Added a mechanism to detect and reinstall broken language servers
([#1691](https://github.com/zed-industries/community/issues/1691))
([#1524](https://github.com/zed-industries/community/issues/1524))
([#1352](https://github.com/zed-industries/community/issues/1352))
([#1109](https://github.com/zed-industries/community/issues/1109))
([#996](https://github.com/zed-industries/community/issues/996))
([#782](https://github.com/zed-industries/community/issues/782)).
2023-06-28 21:26:35 -04:00
Mikayla Maki
6ffa6afd20 fmt 2023-06-28 16:35:57 -07:00
Mikayla Maki
e0d618862c Add click out handler
Make all context menus on button click toggles instead of re-shows
2023-06-28 16:23:07 -07:00
Nate Butler
2e162f8af7 WIP convert to snake_case 2023-06-28 18:20:43 -04:00
Max Brunsfeld
fd68a2afae Debounce searches in semantic search modal 2023-06-28 15:02:20 -07:00
Nate Butler
bfdd0824e2 Resolve TS errors and warnings
TODO: Use StyleTree types to remove `any`s from styleTrees.
2023-06-28 17:54:36 -04:00
Julia
2ed0284d49 Stub out for language plugin 2023-06-28 17:06:50 -04:00
Julia
48bed2ee03 Merge branch 'main' into fix-broken-lsp-installations 2023-06-28 16:46:06 -04:00
Nate Butler
1177980172 Fix basic eslint errors 2023-06-28 16:44:18 -04:00
Julia
db2b3e47bc Reinstall Node whenever a NodeRuntime operation has serious error 2023-06-28 16:43:45 -04:00
Nate Butler
e30ad9109c wip 2023-06-28 16:28:46 -04:00
KCaverly
85e71415fe updated embedding database calls to maintain project consistency
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-06-28 16:25:05 -04:00
KCaverly
400d39740c updated both indexing and search method for vector store, to maintain both zed worktree ids and db worktree ids
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-06-28 16:21:03 -04:00
KCaverly
3ca3de807c Merge branch 'main' of github.com:zed-industries/zed into vector_store 2023-06-28 14:42:24 -04:00
Mikayla Maki
0b900f4faf Fix project panel bug (#2656)
Release Notes:

* Fix a bug where project panel entries would not be styled correctly
(preview only)
2023-06-28 10:36:59 -07:00
Mikayla Maki
1d4a922185 prettier format 2023-06-28 10:35:28 -07:00
Mikayla Maki
bf2c2fe242 fix bug with dragged entry 2023-06-28 10:34:47 -07:00
Antonio Scandurra
e6bd85ffa7 WIP
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-06-28 19:28:40 +02:00
Nate Butler
cf8e0befc8 Update 2023-06-28 13:27:41 -04:00
KCaverly
40ff7779bb WIP: Working modal, without navigation and search on every keystroke 2023-06-28 13:27:26 -04:00
Mikayla Maki
4659c34d46 WIP: Fix style overwriting in project panel 2023-06-28 09:55:25 -07:00
Mikayla Maki
18dd3102bf WIP: Add click out event to fix context menus 2023-06-28 09:29:49 -07:00
Joseph T. Lyons
6c53653831 v0.94.x dev 2023-06-28 12:23:42 -04:00
Mikayla Maki
ce52d90a9d Collab UI v2 (#2618)
This PR implements
https://www.figma.com/file/pLq7dvhx2mFeWFOedXpUQ5/Project-%E2%80%93-Collaboration-UI?type=design&node-id=666%3A8610&t=XFGk6KEtTCFXBvCQ-1

Release notes:
- [x] Redesigned collaboration UI
- [x] Added voice support
2023-06-28 09:14:39 -07:00
Mikayla Maki
cb782c5a7b Remove menu tracking state 2023-06-28 09:06:06 -07:00
Max Brunsfeld
34b81e2aab collab 0.15.0 2023-06-28 09:01:07 -07:00
Antonio Scandurra
04cd04ff82 WIP
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-06-28 17:48:27 +02:00
Mikayla Maki
88b30dea10 fmt 2023-06-28 08:44:17 -07:00
Mikayla Maki
9ab0efa1f8 Fix microphone and speaking styles 2023-06-28 08:41:31 -07:00
Julia
00212d4383 Handle new elixir-ls release zip name (#2655)
Fix downloading Elixir being broken

Release Notes:

- N/A
(Should be mentioned in 0.92.x)
2023-06-28 10:28:30 -04:00
Julia
1882ce48be Handle new elixir-ls release zip name 2023-06-28 10:22:39 -04:00
Nate Butler
c381e8821c Update icon sizes 2023-06-28 10:19:30 -04:00
Nate Butler
a889f3db54 Reduce the right spacing of the contacts menu 2023-06-28 10:06:12 -04:00
Piotr Osiewicz
49ce1977e3 Optimize user menu trigger 2023-06-28 15:27:38 +02:00
Piotr Osiewicz
c2f5855fdc Fix warning 2023-06-28 15:22:17 +02:00
Piotr Osiewicz
456be1f86e Hide user menu on second click 2023-06-28 15:19:32 +02:00
Piotr Osiewicz
dddff644ca tests: Test 'db' package sequentially (#2654)
/cc @as-cii  @nathansobo  

Release Notes:

- N/A
2023-06-28 15:00:43 +02:00
KCaverly
9d19dea7dd updated vector_store to remove parsing module 2023-06-28 08:58:50 -04:00
Antonio Scandurra
2cb4616609 Enable assistant on stable
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-06-28 12:09:49 +02:00
Antonio Scandurra
650282f3d0 WIP 2023-06-28 12:05:42 +02:00
Antonio Scandurra
0d0c71e215 Polish assistant (#2653)
This is a mix of styling and behavioral improvements to the assistant
that we wanted to land before shipping today.

Release Notes:

- N/A
2023-06-28 12:02:18 +02:00
Nathan Sobo
3a71894360 Not how we need to do it 2023-06-28 11:51:00 +02:00
Nathan Sobo
2381e3f650 WIP 2023-06-28 11:51:00 +02:00
Nathan Sobo
1cb53805e2 WIP 2023-06-28 11:51:00 +02:00
Nathan Sobo
2791db41d7 WIP 2023-06-28 11:51:00 +02:00
Antonio Scandurra
1578f5fb35 WIP 2023-06-28 11:51:00 +02:00
Nathan Sobo
d09af1948e WIP: Deeper thinking about versions 2023-06-28 11:51:00 +02:00
Nathan Sobo
754cc01f87 WIP 2023-06-28 11:51:00 +02:00
Nathan Sobo
523ea23b10 WIP 2023-06-28 11:51:00 +02:00
Nathan Sobo
f9b5f102f8 Get sketch of major types compiling 2023-06-28 11:51:00 +02:00
Nathan Sobo
7d1b6cb49d Hello CRDB.
Sketch in types with not much implementation.

Does not compile for fairly trivial reasons.
2023-06-28 11:51:00 +02:00
Nathan Sobo
8f8a99d788 Bind cmd-? to assistant::toggle_focus
Bypass system help menu shortcut at the app delegate level to achieve this.

Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-28 11:43:24 +02:00
Piotr Osiewicz
2ddf0e12bf Undeafen: unmute if user was not muted prior to deafening 2023-06-28 11:10:56 +02:00
Nathan Sobo
7efcd60608 Remove border from assistant message header
Also: Increase right margin on token count to space it from the scrollbar.

Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-28 10:54:44 +02:00
Nathan Sobo
83fc7b9b7c Avoid scrolling to the new cursor position so the assistant's output is stable
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-28 10:32:06 +02:00
Nathan Sobo
f52d3ea5ef Clean up tooltips, create conversation on cmd-n
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-28 10:27:29 +02:00
Nathan Sobo
d41a7f41fb Space out assistant icons to match pane icons
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-28 10:00:28 +02:00
Mikayla Maki
749f60ba81 fmt 2023-06-27 19:25:46 -07:00
Mikayla Maki
5d02b49058 Added muted and currently speaking tracking 2023-06-27 19:23:13 -07:00
Max Brunsfeld
f128cf4a33 Defer scanning some worktree subdirectories until they are expanded in the project panel (#2622)
Closes
https://linear.app/zed-industries/issue/Z-352/high-memory-usage-from-fs-scanning-if-project-contains-symlinks-that

### Background

Currently, when you open a project, Zed eagerly scans the directory,
building an in-memory representation of all of the files and directories
within. This scanning includes all git-ignored files and follows any
symlinks. When any directory changes on disk, Zed recursively rescans it
in order to keep its in-memory representation up-to-date. When
collaborating, all of these files are replicated to all guests.

Right now, there are some performance problems associated with the
maintenance of this filesystem state:
* For various reasons, some projects contain symlinks that point out to
large folders like `$HOME`, which itself contains many symlinks that
point to the same large directory. When these projects are opened, the
worktree scans endlessly, using more and more memory.
* Some git-ignored directories (like `target` in a rust project) contain
*many* more files than are actually tracked in the git repository. These
files often change as a result of saving, (e.g. because the compiler
runs). Maintaining in memory all of these paths isn't useful to the
user, and causes significant CPU usage on every save. Most importantly,
when collaborating sending all of these changes to guests can be slow,
and can delay all other RPC messages.

### Change

This PR changes the worktree's filesystem-scanning logic to be *lazy*
about scanning two types of directories:
* git ignored directories
* "external" directories (those that are canonically located outside of
the worktree root, but accessed via symlinks)

The laziness works as follows. When, during a recursive scan, a
directory is found that falls into one of the above 2 categories, that
directory is marked as "unloaded". The directory might later be scanned,
if some explicit operation is performed within it (like opening a
buffer, or creating a file), if any collaborator expands that directory
in their project panel, or if an LSP requests that it be watched.

### Results

When collaborating on the `zed` folder:

| metric | before | after |
|-------|--------|------|
| # `worktree_entries` in collab db initially | 154,763 |  77,679 |
| # `worktree_entries` in collab db after 5 saves | 181,952 | 77,679
(nothing new to scan) |
| app memory footprint (host) | 260MB | 228.5 MB  |

The db thing is a win, because reading and writing to the
`worktree_entries` table is one of the most expensive thing that the
`collab` server does.

There's also generally lower background CPU usage after every save,
because we don't need to recursively rescan directories inside of
`target`.

### Limitations

We still end up scanning some unnecessary directories (like
`target/debug/build/zed-b612db829aeac16e/out`) because the LSP instructs
us to watch those.

### To do:

* [x] Expand parent directories of any path opened via LSP
* [x] Avoid creating orphaned entries when FS events happen inside of
unscanned directories
* [x] Scan any newly-non-ignored directories after gitignore changes
* [x] Emit correct events for newly-discovered paths when expanding dirs
* [x] GC the set of expanded directory ids when dirs are removed
* [x] Don't include "external" entries in file-finder
* [x] Expand any directories watched by LSP
* [ ] manual testing and profiling

### Release Notes:

- Fixed a bug where Zed would use excessive memory when a project folder
contained symlinks pointing to directories outside of the project.
- Reduced Zed's memory and CPU usage when working in folders containing
many git-ignored files.
2023-06-27 17:07:23 -07:00
Max Brunsfeld
201188fdaa Use FakeFs in worktree gitignore test 2023-06-27 15:40:36 -07:00
Max Brunsfeld
fc02381196 Fix bugs in handling combined injections exposed by HEEx (#2652)
Fixes
https://linear.app/zed-industries/issue/Z-2481/heex-this-snippet-triggers-a-hard-crash

Release Notes:

- Fixed a crash that would sometimes occur when editing a HEEx file
([#1703](https://github.com/zed-industries/community/issues/1703)).
2023-06-27 15:17:29 -07:00
Max Brunsfeld
81c26cfea0 Fix bugs in handling combined injections exposed by HEEx 2023-06-27 15:08:26 -07:00
Nate Butler
9a07696240 Update titlebar item spacing 2023-06-27 17:56:44 -04:00
Nate Butler
8b2732c3aa workspace.titlebar -> titlebar in Theme 2023-06-27 17:27:58 -04:00
Mikayla Maki
19ca6a8875 Seperate online and offline 2023-06-27 13:33:04 -07:00
Nate Butler
825a7cb799 Update screenshare toggle, titlebar spacing 2023-06-27 16:20:45 -04:00
Mikayla Maki
60ce584427 WIP: Add mute icons 2023-06-27 13:12:52 -07:00
KCaverly
d1bdfa0be6 Added a dummy action for testing the semantic search functionality in the command palette.
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-06-27 15:53:07 -04:00
KCaverly
4bfe3de1f2 Working incremental index engine, with streaming similarity search!
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-06-27 15:31:21 -04:00
Julia
b2de28ccfc Match original logic when determining server to request formatting 2023-06-27 14:16:01 -04:00
Mikayla Maki
37cb202c93 Rename and toggle screenshare 2023-06-27 09:58:01 -07:00
Nate Butler
b4f9faee3b Update share, call control buttons 2023-06-27 12:24:19 -04:00
Nate Butler
5af33407f0 Add script for building theme types 2023-06-27 11:34:26 -04:00
Nate Butler
331800c14d Use icon_button for leave call 2023-06-27 11:34:12 -04:00
Piotr Osiewicz
3104275d87 Keep users muted once they undeafen themselves 2023-06-27 17:19:18 +02:00
Nate Butler
9389b50646 Update local-collaboration.md
Add missing livekit info
2023-06-27 10:52:38 -04:00
Nate Butler
0548df09d9 Update local-collaboration.md 2023-06-27 10:05:37 -04:00
Nate Butler
f311d307b1 Create local-collaboration.md (#2651)
I forget how to do this every single time 😅 Please update anything that
is incorrect!

[[PR Description]]

Release Notes:

- N/A
2023-06-27 09:52:15 -04:00
Nate Butler
a67eba9fed Create local-collaboration.md
I forget how to do this every single time 😅
2023-06-27 09:51:30 -04:00
Piotr Osiewicz
625814d30a Merge branch 'main' into collab-titlebar-2 2023-06-27 15:40:43 +02:00
Nathan Sobo
04d93dfbd9 vim: indent/outdent (#2644)
Release Notes:

- vim: support indent/outdent
([#832](https://github.com/zed-industries/community/issues/832>)).
2023-06-27 04:15:55 -06:00
Nathan Sobo
fd3ee0ebd0 Vim toggle case (#2648)
Release Notes:

- vim: Add ~ to toggle case
([#1410](https://github.com/zed-industries/community/issues/1410))
2023-06-27 04:13:24 -06:00
Nathan Sobo
29b2639b4c Merge remote-tracking branch 'origin/main' into vim-indent 2023-06-27 12:09:47 +02:00
Nathan Sobo
16c23557b8 vim: Fix scrolling (#2647)
After #2641 we noticed that scrolling didn't take a count parameter, and
a few other issues with the way that we calculated the distance to
scroll.
 
Release Notes:

- Improved distance calculations for page-up/page-down
- vim: Allow counts to work with scrolling shortcuts.
2023-06-27 04:01:14 -06:00
Nathan Sobo
7294314ce7 vim: shortcuts for tab navigation (#2649)
Release Notes:

- vim: added gt/ctrl-pagedown and gT/ctrl-pageup for tab navigation
2023-06-27 03:57:01 -06:00
Nathan Sobo
0fd0b60bd6 vim: Fix code actions menu (#2650)
Fixes: zed-industries/community#1690

I'm not sure this is the correct way to fix this...
* A simpler approach would be to just say `!showing_code_actions` in the
binding file (as `showing_completions` can only happen in insert mode -
and `VimControl` will be false). This seemed a little error prone if
more menus were added in the future.
* A more complicated approach would be to copy the way this is done from
the MouseContextMenu, which registers its own keyboard shortcuts, and as
such uses those when it's open. This seems "more correct", but is a
major refactoring for a very small reward.

Release Notes:

- vim: Fix code actions menu
([#1690](https://github.com/zed-industries/community/issues/1690))
2023-06-27 03:56:08 -06:00
Piotr Osiewicz
71c0b7d74d Add styles for user menu 2023-06-27 11:55:06 +02:00
Conrad Irwin
a1343f0d2c vim: Fix code actions menu
Fixes: zed-industries/community#1690
2023-06-26 21:46:06 -06:00
Conrad Irwin
a9aa5e5196 vim: Add ~ to change case
Fixes: zed-industries/community#1410
2023-06-26 20:22:24 -06:00
Conrad Irwin
77dc22bff6 vim: Fix cursor restoration when undoing substitute 2023-06-26 20:22:24 -06:00
KCaverly
953e928bdb WIP: Got the streaming matrix multiplication working, and started work on file hashing.
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-06-26 19:01:19 -04:00
Conrad Irwin
73920807a9 vim: shortcuts for tab navigation 2023-06-26 15:07:19 -06:00
Conrad Irwin
02fc5dd6c9 vim: Fix scrolling
After #2641 we noticed that scrolling didn't take a count parameter.

The PageDown/PageUp logic was also broken by an additional -1 (for both
vim mode and not).
2023-06-26 13:29:14 -06:00
KCaverly
74b693d6b9 Updated database calls to share single connection, and simplified top_k_search sorting.
Co-authored-by: maxbrunsfeld <max@zed.dev>
2023-06-26 14:57:57 -04:00
Joseph T. Lyons
a09c6b2691 Add installation_id to panic events (#2642)
We want to add installation_id to the panic events so that we can easily
know if multiple panics are coming from the same person or different
people. 5 panics from one person isn't as bad as 5 panics from 5 people.

[zed.dev pr](https://github.com/zed-industries/zed.dev/pull/343)

Release Notes:

- N/A
2023-06-26 13:35:23 -04:00
Joseph T. Lyons
c0fb98cb3f Factor out key name 2023-06-26 13:31:41 -04:00
Joseph T. Lyons
8d1cc8815b Merge branch 'main' into add-installation-id-to-panic-events 2023-06-26 13:27:14 -04:00
Nate Butler
37814bc4fc Fix incorrect ThemeAppearance (#2645)
[[PR Description]]

When we updated the way themes were built it looks like we accidentally
gave `Atelier Forest Light` the wrong `ThemeAppearance`. This PR fixes
that.

Release Notes:

- Fixed the `Atelier Forest Light` theme, which was incorrectly set as a
dark theme.
2023-06-26 13:20:32 -04:00
Antonio Scandurra
0d3e75e873 Introduce the ability to load and save conversations with the assistant (#2623)
Closes
https://linear.app/zed-industries/issue/Z-1890/save-assistant-conversations-to-the-filesystem
Closes
https://linear.app/zed-industries/issue/Z-2459/cycling-message-roles-on-the-last-empty-message-alters-the-message
Closes
https://linear.app/zed-industries/issue/Z-2460/cycling-role-in-an-empty-message-cycles-wrong-messages-role
Closes https://linear.app/zed-industries/issue/Z-2365/assistant-toolbar
Closes
https://linear.app/zed-industries/issue/Z-2461/always-insert-an-empty-message-at-the-end-of-the-conversation

Release Notes:

- You can now save conversations with the assistant to
`~/.config/zed/conversations` with `cmd-s`. Conversations are also
automatically saved as they are edited.
2023-06-26 19:17:16 +02:00
Antonio Scandurra
43723168fc Remove assistant panel zoom test
The test was testing pretty straightforward logic, but for some strange reason
it was failing on CI (but passed locally). I think it's fine to delete it and
make progress, if zooming regresses we'll find out pretty quickly.
2023-06-26 19:10:59 +02:00
Nate Butler
1dc52c7547 Fix incorrect ThemeAppearance 2023-06-26 13:07:33 -04:00
Antonio Scandurra
d46d3e6d15 Try fixing test on CI 2023-06-26 18:18:22 +02:00
Conrad Irwin
c3e8cae20f vim: indent/outdent
Fixes: zed-industries/community#832
2023-06-26 10:08:34 -06:00
Julia
2a8d1343d6 Add installation test binaries for all remaining adapters 2023-06-26 11:54:20 -04:00
Antonio Scandurra
e77abbf64f Add hover state to assistant buttons 2023-06-26 17:48:43 +02:00
Antonio Scandurra
723c8b98b3 Show quote selection button 2023-06-26 17:24:31 +02:00
Antonio Scandurra
e723686b72 Shwo tooltips for assistant buttons 2023-06-26 17:17:45 +02:00
Piotr Osiewicz
f6edc68613 picker: fix warnings 2023-06-26 17:07:33 +02:00
Antonio Scandurra
edc7f30660 Add assistant icons to the toolbar
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-06-26 16:49:33 +02:00
KCaverly
0f232e0ce2 added file metadata retrieval from db 2023-06-26 10:35:56 -04:00
KCaverly
7937a16002 added brute force search and VectorSearch trait 2023-06-26 10:34:12 -04:00
Julia
5632f24d24 Handle new elixir-ls release zip name 2023-06-26 10:18:30 -04:00
Antonio Scandurra
c5b3785be5 Revert "Panic in debug if global settings can't be deserialized from defaults"
This reverts commit 7a051a0dcb.
2023-06-26 16:03:19 +02:00
Antonio Scandurra
00e37bc2a2 Merge remote-tracking branch 'origin/main' into save-conversations 2023-06-26 15:59:19 +02:00
Antonio Scandurra
9d4dd5c42b Insert empty user message when assisting with the current last message
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-06-26 15:57:36 +02:00
Antonio Scandurra
92d7b6aa3b Allow toggling back and forth between conversation list and editor
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-06-26 15:43:21 +02:00
Piotr Osiewicz
55f06dcdb5 Add headers and footers to file finder 2023-06-26 13:31:46 +02:00
Piotr Osiewicz
a9b5c1d867 Remove unnecessary call to context.notify 2023-06-26 12:45:50 +02:00
KCaverly
65bbb7c57b added proper blob serialization for embeddings and vector search trait 2023-06-25 20:02:56 -04:00
Nathan Sobo
3f4a06f576 Add an Element derive macro for building components out of other elements (#2643)
To turn any struct into a composite element, you can implement a render
method with the following signature:

```rs
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. Instead of calling functions that
return elements, we can now make any struct into an element fairly
easily. The advantage is that we can use method chaining to express
optional state on these components, and they blend in better with other
elements.

cc @mikayla-maki @osiewicz @iamnbutler 

Release Notes:

- N/A
2023-06-25 08:12:02 -06:00
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
Julia
c4b83c86cc Avoid validating/reinstalling server which refuses will_fetch/start
These adapters have indicated some broader reason to the user why
they cannot be started, don't waste time/bandwidth attempting to
validate and reinstall them
2023-06-24 22:42:06 -04:00
Kirill Bulatov
82bd5fb564 Fix main compilation 2023-06-25 01:43:58 +03:00
Joseph T. Lyons
7d065fa14e Add installation_id to panic events
Co-Authored-By: Julia <30666851+ForLoveOfCats@users.noreply.github.com>
2023-06-23 21:02:01 -04: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
Max Brunsfeld
91f87bb31f Scan any external/ignored directories needed for LSP watchers
Also, don't include "external" files in project searches. Treat them
the same as ignored files.

Co-authored-by: Nathan Sobo <nathan@zed.dev>
2023-06-23 12:53:25 -07:00
Julia
7caa096bd0 Remove installation test binary from language server instance 2023-06-23 13:24:50 -04:00
Max Brunsfeld
27b74e9ea1 Prune the set of expanded dir ids as entries are removed 2023-06-23 10:23:21 -07:00
Max Brunsfeld
b22a18345e Emit loaded events for lazily loaded paths in worktree 2023-06-23 09:39:37 -07:00
KCaverly
c071b271be removed tokio and sqlx dependency, added dummy embeddings provider to save on open ai costs when testing 2023-06-23 10:25:12 -04:00
Piotr Osiewicz
4b52ff65c1 Add styles for button 2023-06-23 13:30:40 +02:00
Piotr Osiewicz
6c676121f2 Fixed mic's state not being updated in titlebar if user mutes a mic via command palette 2023-06-23 13:22:33 +02:00
Piotr Osiewicz
62786cd508 Add button 2023-06-23 13:15:25 +02:00
Piotr Osiewicz
437e41f99d Add styles for microphone and speakers buttons 2023-06-23 11:52:06 +02:00
Antonio Scandurra
5c5d598623 Insert new message right before the next valid one 2023-06-23 11:13:52 +02:00
Antonio Scandurra
6c7271c633 Test serialization roundtrip 2023-06-23 10:42:15 +02:00
Antonio Scandurra
c38bf2de33 Sort conversations in descending chronological order 2023-06-23 10:05:21 +02:00
Antonio Scandurra
5ea5368c07 Re-enable buffer search in assistant 2023-06-23 09:57:31 +02:00
Antonio Scandurra
ed88f52619 Remove double constrained call 2023-06-23 09:23:52 +02:00
Antonio Scandurra
6f0efec146 Merge remote-tracking branch 'origin/main' into save-conversations 2023-06-23 09:09:42 +02:00
Antonio Scandurra
ff07d0c2ed Fix Conversation::messages_for_offsets with empty message at the end 2023-06-23 08:58:30 +02:00
Julia
374c1a3a3e Remove some status stuff 2023-06-23 00:17:27 -04:00
Julia
3302e1133f Whoops 2023-06-22 20:22:05 -04:00
Julia
a8acf28989 Remove now-unnecessary complexity 2023-06-22 20:19:07 -04:00
Max Brunsfeld
9ad1ebf387 Fix project panel test helper 2023-06-22 17:02:01 -07:00
Max Brunsfeld
ffb0a215ea Fix randomized worktree test failures
* Distinguish between unloaded and pending directories via separate entry kind.
* Scan directories before updating ignore statuses after fs events.
2023-06-22 16:52:04 -07:00
KCaverly
dd309070eb open ai indexing on open for rust files 2023-06-22 16:50:07 -04: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
Piotr Osiewicz
8bd9fe1fb0 Deafen now also mutes microphone 2023-06-22 20:05:06 +02: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
Max Brunsfeld
5350164db9 Get integration test passing. Wait for expand entry on remote projects. 2023-06-22 10:34:28 -07:00
Max Brunsfeld
400e3cda32 Scan directories when they stop being ignored 2023-06-22 10:34:28 -07:00
Max Brunsfeld
bfc90f4502 Add failing test for changing a gitignore so a pending dir is no longer ignored 2023-06-22 10:34:28 -07:00
Max Brunsfeld
d3477f75ac Fix reloading of git repositories
Also, clean up logic for reloading git repositories.
2023-06-22 10:34:28 -07:00
Max Brunsfeld
4424dafcd7 Fix expansion of ancestor directories when refreshing a path 2023-06-22 10:34:28 -07:00
Max Brunsfeld
3e6aedfc69 Expand dirs on-demand when opening buffers inside unloaded dirs 2023-06-22 10:34:28 -07:00
Max Brunsfeld
cd823ede4d Add a bit to each entry indicating if it's outside of the worktree root 2023-06-22 10:34:28 -07:00
Max Brunsfeld
1b71589514 Fix confusion between canonical vs non-canonical paths when rescanning, expanding paths 2023-06-22 10:34:28 -07:00
Max Brunsfeld
3c06bd056a Load git repositories when inserting the entry for the .git
Don't wait until populating that directory entry, for two reasons:
* In the case of submodules, .git is not a directory
* We don't eagerly populate .git directories, since their contents
  are automatically ignored.
2023-06-22 10:34:28 -07:00
Max Brunsfeld
6fe74602ac Fix detection of when refreshed paths are outside of worktree root 2023-06-22 10:34:28 -07:00
Max Brunsfeld
205c758e4e Wait for ignored directory to be expanded in descendant entries test 2023-06-22 10:34:28 -07:00
Max Brunsfeld
aa6f2f1816 Remove logic for marking worktree entries as collapsed 2023-06-22 10:34:28 -07:00
Max Brunsfeld
f910d8fe3e Only scan ignored or externals paths if expanded in a project panel 2023-06-22 10:34:28 -07:00
Max Brunsfeld
55f1a6647f Model symlinks better in FakeFs, add read_link Fs method 2023-06-22 10:34:28 -07:00
Max Brunsfeld
4c03231863 Maintain on the background scanner a set of expanded directories 2023-06-22 10:34:28 -07:00
KCaverly
d4a4db42aa WIP: started DB creating and naive inserts 2023-06-22 13:25:33 -04:00
Piotr Osiewicz
f774dbfe2e Use new icons, delete old ones 2023-06-22 18:58:11 +02:00
Piotr Osiewicz
18c4d43ee7 Add deafen button 2023-06-22 18:51:26 +02: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
Nate Butler
1a0b2bfef8 Update stream control icons 2023-06-22 12:21:59 -04: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
Nate Butler
1079838443 Add mic and mic-mute icons 2023-06-22 12:00:42 -04: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
Nate Butler
05730afdf0 Add radix icons
There are a lot of them, but they add less than 350kb to the app
2023-06-22 11:58:51 -04:00
Julia
0abda54d3c Remove individual location's request error handling 2023-06-22 11:43:26 -04:00
Piotr Osiewicz
1a55b687b0 Merge branch 'main' into collab-titlebar-2 2023-06-22 17:41:00 +02:00
Piotr Osiewicz
b16b6dcec7 Render microphone toggle 2023-06-22 17:40:29 +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
Julia
e1cd6cebb9 Revert "Route language server requests through wrapper object"
This reverts commit 9b63d6f832.
2023-06-22 10:45:08 -04:00
Piotr Osiewicz
bee6c59154 Add caret next to user avatar 2023-06-22 16:28:05 +02:00
Nathan Sobo
1707652643 Always focus a panel when zooming it
This allows us to zoom a panel when clicking a button, even if the
panel isn't currently focused.
2023-06-22 06:55:31 -06: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
Piotr Osiewicz
bdccdaca1c Remove unused variable 2023-06-22 13:57:41 +02:00
Piotr Osiewicz
85d1c89d34 Remove unused import 2023-06-22 13:52:21 +02:00
Piotr Osiewicz
4583d22ede cargo fmt 2023-06-22 13:49:36 +02:00
Piotr Osiewicz
76366422a6 Merge branch 'main' into collab-titlebar-2 2023-06-22 13:48:16 +02:00
Julia
9b63d6f832 Route language server requests through wrapper object 2023-06-21 23:05:37 -04:00
Nathan Sobo
a49189a704 Add Zoom button to assistant panel 2023-06-21 19:50:22 -06:00
Nathan Sobo
a75341db97 Move model and remaining tokens to assistant toolbar 2023-06-21 19:01:30 -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
KCaverly
80a894b829 WIP: started work on vector store db, by walking project worktrees.\n\nCo-Authored-By: Max <max@zed.dev> 2023-06-21 14:53: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
Julia
e15be61ded The log-ification 2023-06-21 14:02:21 -04: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
Mikayla Maki
05c97ed355 Fix segfault with remote track publications
co-authored-by: antonio <antonio@zed.dev>
2023-06-21 09:05:36 -07:00
Nathan Sobo
d78fbbc63e Add title to assistant panel and move + to right 2023-06-21 09:54:49 -06:00
Mikayla Maki
5ffe74f47e Fix race condition in sharing mic on connection
co-authored-by: antonio <antonio@zed.dev>
2023-06-21 08:50:38 -07: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
Antonio Scandurra
a011ced698 Allow loading a previously-saved conversation 2023-06-21 16:06:09 +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
Antonio Scandurra
06701e78aa WIP 2023-06-21 11:44:32 +02:00
Antonio Scandurra
9217224fa6 Finish renaming AssistantEditor to ConversationEditor 2023-06-21 09:00:26 +02:00
Nathan Sobo
0932149c48 Fix filename 2023-06-20 20:21:43 -06:00
Nathan Sobo
3a61fd503f WIP: Trying to display the toolbar but tired. May be worth discarding this. 2023-06-20 20:11:37 -06:00
Nathan Sobo
23bc11f8b3 Remove the nested Pane from the assistant
Since we don't want tabs, I think it would be better to render the toolbar
for ourselves directly and handle switching between conversations.

Co-Authored-By: Julia Risley <julia@zed.dev>
2023-06-20 18:52:48 -06:00
Nathan Sobo
7a051a0dcb Panic in debug if global settings can't be deserialized from defaults
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-06-20 18:12:59 -06: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
Mikayla Maki
b1b4b563c2 Add zed typescript settings
Remove 2 space indent
2023-06-20 16:05:23 -07:00
Mikayla Maki
da94014141 Fix flipped boolean 2023-06-20 16:05:23 -07:00
Mikayla Maki
dacfd70fb4 Remove unescessary enum 2023-06-20 16:05:23 -07:00
Piotr Osiewicz
60b4054b0a Fix up toggles 2023-06-20 16:05:23 -07:00
Nate Butler
ae53c3e623 WIP: Start updating style trees to new toggle() format. 2023-06-20 16:05:23 -07:00
Nate Butler
61535ed41f Update toggle, add tests 2023-06-20 16:05:23 -07:00
Nate Butler
040881df3f Update toggle 2023-06-20 16:05:23 -07:00
Nate Butler
5c034ab63c Format 2023-06-20 16:05:23 -07:00
Nate Butler
1f3feacb21 Add path aliases 2023-06-20 16:05:23 -07:00
Nate Butler
5369f2c25a Set up vitest and add tests for interactive 2023-06-20 16:05:23 -07:00
Piotr Osiewicz
4bd89c4c8c further style adjustments; cargo-run works 2023-06-20 16:05:23 -07:00
Piotr Osiewicz
63630949ba Fix up uses of interactive 2023-06-20 16:05:23 -07:00
Nate Butler
247f618d4f Update the interactive function 2023-06-20 16:05:23 -07:00
Nate Butler
16564707df Use TS-flavored doc comments 2023-06-20 16:05:23 -07:00
Piotr Osiewicz
31c1177737 Adjust some of the styles to the new Toggleable format 2023-06-20 16:05:23 -07:00
Piotr Osiewicz
198a446b03 Implement Toggleable<T> and Interactive<T> properly 2023-06-20 16:05:23 -07:00
Piotr Osiewicz
c47d1e9f51 Add toggle.ts and interactive.ts 2023-06-20 16:05:23 -07:00
Piotr Osiewicz
b9959ffdc0 Do not flatten Interactive::default 2023-06-20 16:05:23 -07:00
Piotr Osiewicz
0256f89dd6 Rename on/off states to active/inactive 2023-06-20 16:05:23 -07:00
Piotr Osiewicz
e92015b12f Split out Interactive<T> into Toggle<T> and Interactive<T> 2023-06-20 16:05:20 -07:00
Mikayla Maki
9b77cafd7b Add a mic sharing to room joining 2023-06-20 15:35:19 -07:00
Mikayla Maki
8273e08d4a Add is_muted and is_deafened 2023-06-20 15:23:06 -07:00
Nathan Sobo
bd7f8e8b38 Scan conversations dir on assistant panel open and on changes
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-06-20 16:19:43 -06:00
Mikayla Maki
cf4251fb55 Fix deafened -> enabled mistranslation
Fix mislocation of caller query in detach_and_log_error
Fix incorrect wording on livekit integration
Add share_mic action for manually enabling the microphone
Make mic sharing wait until the room has been fully established
2023-06-20 15:17:49 -07:00
Julia
f91e95f24a Merge branch 'main' into fix-broken-lsp-installations 2023-06-20 17:23:34 -04:00
Mikayla Maki
dbd95e35cf fmt 2023-06-20 12:36:36 -07:00
Mikayla Maki
b828a74ad6 Add deafen controls 2023-06-20 12:34:32 -07:00
Nathan Sobo
230b4d237e Add SavedConversation::list() method
Co-Authored-By: Kyle Caverly <kyle@zed.dev>
2023-06-20 13:29:34 -06:00
Nathan Sobo
9f783944a7 Wait until we have a summary before saving a conversation
Also, avoid collisions by adding a discriminant.

Co-Authored-By: Kyle Caverly <kyle@zed.dev>
2023-06-20 13:03:23 -06:00
Antonio Scandurra
c416551318 Don't use the summary as the filename if it's not done yet 2023-06-20 19:19:02 +02:00
Antonio Scandurra
f904698457 Use the OPENAI_API_KEY environment variable when present 2023-06-20 19:18:49 +02:00
Antonio Scandurra
31a70efe66 Autosave conversations 2023-06-20 19:10:52 +02:00
Mikayla Maki
e58f0ac72f Add mute toggling controls 2023-06-20 09:35:57 -07:00
Antonio Scandurra
c83a918a7e Merge remote-tracking branch 'origin/main' into save-conversations 2023-06-20 18:16:40 +02:00
Antonio Scandurra
6ed86781b2 Instruct the assistant to reply to a specific message (#2631)
Closes
https://linear.app/zed-industries/issue/Z-2384/hitting-cmd-enter-in-a-user-or-system-message-should-generate-a

Release Notes:

- Introduced the ability to generate assistant messages for any
user/system message, as well as generating multiple assists at the same
time, one for each cursor. (preview-only)
2023-06-20 18:16:23 +02:00
Nathan Sobo
03993ea719 Rename SumTree::push_tree to ::append (#2626)
This is something I've been meaning to rename in SumTree. Was looking at
the code and figure why not now.
2023-06-20 08:37:55 -06:00
Julia
adccfdfbbf Avoid assigning NSCursor style when it already is that style (#2632)
This avoids a high cost which appears to be the system rasterizing the
cursor every time we call this, fixes a slowdown when scrolling rapidly
while mouse motion continually attempted to assign the style

Fixes
https://linear.app/zed-industries/issue/Z-2200/editor-scroll-slowdown

Release Notes:

- Improved the performance of scrolling by avoiding unnecessary cursor
changes
([#1597](https://github.com/zed-industries/community/issues/1597)).
2023-06-20 10:02:04 -04:00
Antonio Scandurra
1d84da1d33 Improve prompt 2023-06-20 15:32:51 +02:00
Julia
dc07b60e40 Avoid assigning NSCursor style when it already is that style
This avoids a high cost which appears to be the system rasterizing the
cursor every time we call this, fixes a slowdown when scrolling rapidly
while mouse motion continually attempted to assign the style

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-06-20 09:31:30 -04:00
Antonio Scandurra
8673b0b75b Avoid including pending or errored messages on assist 2023-06-20 11:59:51 +02:00
Max Brunsfeld
ebf0c96130 Show a notification when a dependency for a language server is missing (#2630)
Closes
https://linear.app/zed-industries/issue/Z-2402/elixir-ls-requires-a-system-elixir-runtime-to-be-installed
Closes
https://linear.app/zed-industries/issue/Z-666/notify-users-that-they-need-go-installed-to-use-go-language-server

Release Notes:

- Added a notification when unable to download the Go language server
because Go is not installed.
- Added a notification when unable to run the Elixir language server
because Elixir is not installed.
2023-06-19 20:03:30 -07:00
Max Brunsfeld
050c22312c Update plugin runtime LspAdapter impl 2023-06-19 19:38:31 -07:00
Nathan Sobo
8c298a9da5 Rename SumTree::push_tree to ::append 2023-06-19 19:49:33 -06:00
Max Brunsfeld
1215de0c42 Show a notification when unable to start elixir-ls 2023-06-19 18:05:30 -07:00
Max Brunsfeld
57c2d85c66 Show a notification that gopls can't be installed without go 2023-06-19 18:05:12 -07:00
Max Brunsfeld
360bbebbd9 Introduce LspAdapterDelegate trait, passed to LspDelegates 2023-06-19 16:12:25 -07:00
Julia
7e70e24bfc Remove server from both hashmaps 2023-06-19 18:02:57 -04:00
Julia
afa1434aa9 Get further reinstalling a server which died on startup 2023-06-19 17:45:27 -04:00
Max Brunsfeld
05d69c804c Fix issues with syntax highlighting in elixir and heex (#2629)
Fixes
https://linear.app/zed-industries/issue/Z-2391/text-within-h-isnt-highlighted-the-same-as-in-heex-files
Fixes
https://linear.app/zed-industries/issue/Z-2415/syntax-highlighting-bug-in-strings

Release Notes:

- Fixed some issues with syntax highlighting in Elixir and Heex.

If the release notes are only intended for a specific release channel
only, add `(<release_channel>-only)` to the end of the release note
line.
These will be removed by the person making the release.
2023-06-19 12:56:09 -07:00
Max Brunsfeld
04430fdbd6 Fix issues with syntax highlighting in elixir and heex 2023-06-19 12:34:46 -07:00
Julia
da2ee55013 Route some more information for reinstall after startup failure
Doesn't actually reinstall on that particular failure due to wrong
variant in hashmap
2023-06-19 15:18:12 -04:00
Mikayla Maki
6ad0b5d79f Change color representation in json schema 2023-06-19 11:47:11 -07:00
Mikayla Maki
ea46947489 Tidy up font schema a little 2023-06-19 11:36:42 -07:00
Mikayla Maki
193ad64d18 Add JsonSchema to container style and fix compile errors 2023-06-19 11:31:17 -07:00
Piotr Osiewicz
2a3c660d1f settings: accept trailing commas (#2606)
Z-2357

I've found a crate that handles both comments and trailing commas in
JSON. It is a fork of `serde_json`, but it is maintained & up-to-date.
Sadly RawValue seems to not play nicely with it; I've ran into
deserialisation issues around use of RawValue. For this PR I've migrated
to `Value` API.

Obviously this is just a point of discussion, not something I'd merge
straight away. There may be better solutions to this particular problem.

I've also noticed that `serde_json_lenient` does not handle trailing
commas after bindings array. I'm not sure how big of an issue that is.

Release Notes:
- Improved handling of trailing commas in settings files.
[#1322](https://github.com/zed-industries/community/issues/1322)
2023-06-19 18:29:03 +02:00
Antonio Scandurra
cb55356106 WIP 2023-06-19 17:53:05 +02:00
Antonio Scandurra
75e2329028 Allow for multi-cursor assist and cycle_role actions
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Kyle Caverly <kyle@zed.dev>
2023-06-19 17:23:40 +02:00
Antonio Scandurra
9191a82447 Remove Assistant::open_ai_request_messages 2023-06-19 14:35:33 +02:00
Antonio Scandurra
dc9231d5a3 Merge remote-tracking branch 'origin/main' into replies 2023-06-19 14:28:21 +02:00
Antonio Scandurra
70ccbbafc1 Allow message splitting with multiple cursors (#2627)
Closes
https://linear.app/zed-industries/issue/Z-2408/make-block-splitting-work-with-multiple-cursors
2023-06-19 12:07:16 +02:00
Piotr Osiewicz
3e3079b513 cargo fmt 2023-06-19 12:07:02 +02:00
Piotr Osiewicz
91f2f31daa Split git/project label into a flex row 2023-06-19 12:06:42 +02:00
Antonio Scandurra
c9df963142 Allow message splitting with multiple cursors 2023-06-19 12:00:45 +02:00
Joseph T. Lyons
c858ab263c Add pane activation bindings for Atom keymap (#2625)
Release Notes:

- N/A
2023-06-18 02:09:26 -04:00
Joseph T. Lyons
bb04d65b8e Add pane activation bindings for Atom keymap 2023-06-18 02:05:25 -04:00
Nate Butler
ffd1190cca Update rose pine theme family 2023-06-16 23:02:32 -04:00
Nathan Sobo
882009bc75 Save conversations to ~/.config/zed/conversations
Still need to implement loading / listing.
I'd really be rather write operations to a database. Maybe we
should be auto-saving? Integrating with panes? I just did
the simple thing for now.
2023-06-16 16:15:07 -06:00
Nathan Sobo
c3b2b4c4e3 Cycle message roles on ctrl-r (#2619)
I'd like to follow up to allow roles to be cycled for the selected range
and support multi-cursors, but this is a start and contains a
refactoring, so going to merge.

Release Notes:

- Added the ability to cycle roles in the assistant with `ctrl-r`
2023-06-16 14:11:01 -06:00
Kirill Bulatov
7ff194f21f React on message-less LSP requests properly (#2620) 2023-06-16 23:00:14 +03:00
Sergey Onufrienko
ac42522987 chore: remove ts-rs 2023-06-16 21:45:37 +02:00
Sergey Onufrienko
4badef19f1 feat: add Nodejs script to convert Json to TS 2023-06-16 21:39:22 +02:00
Sergey Onufrienko
6d6b7020a0 feat: export_schema 2023-06-16 21:38:06 +02:00
Sergey Onufrienko
a87b39a2d1 feat: add JsonSchema to Theme 2023-06-16 21:37:56 +02:00
Sergey Onufrienko
b45f5f0489 feat: add JsonSchema to gpui 2023-06-16 21:36:42 +02:00
Kirill Bulatov
77f5b5a80d React on message-less LSP requests properly
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-06-16 22:02:29 +03:00
Nathan Sobo
54c71c1a35 Insert reply after the currently selected user message 2023-06-16 12:41:07 -06:00
Mikayla Maki
ecd2129c2f Add deafen and mute stubs 2023-06-16 11:16:36 -07:00
Nathan Sobo
11f318566e Allow splitting of messages using shift-enter (#2613)
Closes
https://linear.app/zed-industries/issue/Z-2364/allow-splitting-blocks

Release Notes:

- Added support for splitting messages in the assistant panel using
`shift-enter`. (preview-only)
2023-06-16 11:50:50 -06:00
Nathan Sobo
75b5ac8488 Cycle message roles on ctrl-r 2023-06-16 11:50:18 -06:00
Mikayla Maki
53062e8422 turn mic off by default in dev builds, add enviroment variable for turning it back on 2023-06-16 10:44:31 -07:00
Nathan Sobo
c179dd9990 Remove redundant tests 2023-06-16 11:43:16 -06:00
Mikayla Maki
dedc117cca Add audio APIs to Zed
Share mic on joining room
2023-06-16 10:13:27 -07:00
Nathan Sobo
6c0f65cfe0 Avoid inserting redundant newlines
Co-Authored-By: Piotr Osiewicz <piotr@zed.dev>
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-06-16 10:36:42 -06:00
Piotr Osiewicz
ef6cb11d5c Emit editor event whether we insert a newline or not. 2023-06-16 13:29:12 +02:00
Piotr Osiewicz
ae68be64c0 Move share button to the right hand side 2023-06-15 22:05:43 -07:00
Piotr Osiewicz
d079a0eb20 Render user avatar only if an user is not in a call 2023-06-15 22:05:43 -07:00
Piotr Osiewicz
83c1bb07bb Add background to user avatar 2023-06-15 22:05:43 -07:00
Piotr Osiewicz
433c5d30f5 Add Sign in button for an unregistered user 2023-06-15 22:05:43 -07:00
Piotr Osiewicz
092cf93dae Move zed actions to zed-actions 2023-06-15 22:05:43 -07:00
Piotr Osiewicz
4b87ce8952 add zed-actions crate 2023-06-15 22:05:43 -07:00
Piotr Osiewicz
0fe65b945f Remove user avatar from dropdown menu
Add new options in context menu
2023-06-15 22:05:43 -07:00
Piotr Osiewicz
5f7fdd25eb Fix compile error (use of moved value) 2023-06-15 22:05:43 -07:00
Mikayla Maki
47ef800dc6 WIP: Add face to right hand menu 2023-06-15 22:05:43 -07:00
Mikayla Maki
aac71fdcfe Remove border from sign in button
Co-authored-by: Piotr <piotr@zed.dev>
2023-06-15 22:05:43 -07:00
Mikayla Maki
8235d78afe Voice support (#2602)
This PR adds APIs for voice chat to our live kit integration

Release Notes:

- N/A
2023-06-15 19:40:01 -07:00
Mikayla Maki
d7dbc3b5d3 Implement test stubs 2023-06-15 19:28:59 -07:00
Max Brunsfeld
8592208d3a Fix failure to upload panics when multiple panics happen at the same time (#2616)
When multiple panics occur at the same time (usually because one thread
panics, and another thread joins it), multiple panic JSON objects can
get written to the same panic file. The resulting file won't be valid
JSON.

This PR addresses that problem via two changes:
* Format panic files as single-line JSON objects
* When a panic file  isn't valid JSON, try taking the first line

In the future, we could try combining all of the backtraces, but for
now, I just want to avoid a problem of not reporting a panic at all.

Release Notes:

- Fixed a problem with Zed's internal crash reporting.
2023-06-15 15:31:49 -07:00
Mikayla Maki
b9270925dd Focus on toggle dock (#2612)
This PR updates some dock behaviors. Now the toggle-dock commands
(cmd-j/b/r) also toggle focus. This also adds zoom serialization to the
docks.

Release Notes:
- Bug fix: Toggle dock commands (cmd-j/b/r) now move focus 
- Bug fix: Dock zoom is now restored with the rest of the workspace
2023-06-15 15:20:20 -07:00
Max Brunsfeld
e525706581 Fix failure to upload panics when multiple panics happen at the same time 2023-06-15 15:16:26 -07:00
Mikayla Maki
b156644daf fixed tests to match new behavior 2023-06-15 15:09:37 -07:00
Mikayla Maki
b7e3ac5bf4 Fix bug on workspace deserialization 2023-06-15 14:56:37 -07:00
Mikayla Maki
b9cb594626 Fix fmt 2023-06-15 14:51:38 -07:00
Max Brunsfeld
5f93a4effd Don't rely on debug symbols for panic reporting (#2615)
This fixes a regression introduced in
https://github.com/zed-industries/zed/pull/2560, where panic reports did
not include backtraces. The problem was that in that PR, I assumed we
could retrieve file paths for symbols in our backtraces. But actually,
that functionality only works when the app is built locally, and a
`.dSYM` file can be magically found by the OS. We don't ship those dSYM
files with Zed, so panic symbols do not have file paths available.

Panic backtraces will still be more useful and less noisy than before
though: we will strip out frames for which we don't have symbol names,
and remove leading panic-handling stack frames from the backtraces.

Release Notes:

- N/A
2023-06-15 14:09:42 -07:00
Max Brunsfeld
e7e0f2183f Don't rely on debug symbols for panic reporting 2023-06-15 12:27:39 -07:00
Julia
abe5ecc5ec Actually fully start reinstalled language server 2023-06-15 13:56:07 -04:00
Julia
f81ccbd652 Setup C adapter with test binary 2023-06-15 12:18:34 -04:00
Julia
4d24eae901 Actually check and reinstall broken server 2023-06-15 12:18:34 -04:00
Julia
bca625a197 Many steps toward validating and reinstalling server after failure 2023-06-15 12:18:34 -04:00
Julia
ec0409a3d1 Detect LSP startup failure 2023-06-15 12:18:34 -04:00
Antonio Scandurra
0a8d67c4ca Activate screen-sharing when leader activates a panel (#2614)
Fixes
https://linear.app/zed-industries/issue/Z-1875/screen-sharing-tab-is-not-activated-when-leader-is-on-a-panel

Release Notes:

- Fixed a bug that caused followers to not see the leader's screen when
they activated a panel.
2023-06-15 18:13:07 +02:00
Antonio Scandurra
f068712a0a Activate screen-sharing when leader activates a panel 2023-06-15 18:01:30 +02:00
Nathan Sobo
8c6ba13fef Never insert an empty prefix when splitting a message with a non-empty range
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
Co-Authored-By: Piotr Osiewicz <piotr@zed.dev>
2023-06-15 09:02:15 -06:00
Nate Butler
0863486803 Add internal markdown docs (#2598)
This PR adds internal docs directly to the codebase.

There are a few goals here:

- Make it easier to document our internal processes
- Put the documentation where people already are
- Allow changes to be in sync with PRs
- Make it easier for people coming in to discover our docs and onboard
faster.

With 2 more people joining us in the next few weeks it would be great to
get these up.

Release Notes:

- N/A (No public facing changes)
2023-06-15 10:55:55 -04:00
Nate Butler
87c3216236 Fix design tools link 2023-06-15 10:38:15 -04:00
Nate Butler
5149db6acd Update docs/index.md
Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
2023-06-15 10:36:53 -04:00
Antonio Scandurra
21e8e8763e Allow splitting of messages using shift-enter 2023-06-15 14:05:26 +02:00
Piotr Osiewicz
86247bf657 editor: Highlight search results
Z-1292
2023-06-15 09:44:44 +02:00
Mikayla Maki
6662066821 Add zoom serialization to the workspace 2023-06-14 23:43:45 -07:00
Mikayla Maki
790d995381 Add focusing into the toggle dock commands 2023-06-14 23:04:41 -07:00
Mikayla Maki
a4b009a497 Update test-app sound 2023-06-14 18:40:45 -07:00
Mikayla Maki
ce3847c9fc WIP: Use audio support to send live data 2023-06-14 18:40:45 -07:00
Mikayla Maki
bbf05c8eac Wire in audio APIs from swift
co-authored-by: nathan <nathan@zed.dev>
2023-06-14 18:40:45 -07:00
Mikayla Maki
8ccb75029f Add entitlements file to bundle step (#2611)
This completes the bundle changes that will be needed to access voice,
as well as adds permissions for accessing other MacOS services, the
camera, and the necessary permissions for plugins. This was developed by
combining the entitlements of iTerm and VSCode, cross-referenced with
the entitlements of Firefox. 

Release Notes:

- Fixed a bug in enabling authorization for macOS services (preview
only)
2023-06-14 18:06:55 -07:00
Mikayla Maki
b481e383ce Update bundle 2023-06-14 17:37:47 -07:00
Mikayla Maki
493e489c51 Add entitlements file to bundle step 2023-06-14 17:34:48 -07:00
Joseph Lyons
2e723cac62 v0.92.x dev 2023-06-14 13:27:36 -04:00
Sergey Onufrienko
cfc1856210 feat: add ts export 2023-06-12 22:13:19 +02:00
Sergey Onufrienko
b494b43496 chore: add ts-rs 2023-06-12 22:12:24 +02:00
Nate Butler
7f71ee0870 Expand tools doc further 2023-06-12 09:45:42 -04:00
Nate Butler
f142449014 Add back links 2023-06-12 09:02:49 -04:00
Nate Butler
57ae64d44a Use simple markdown 2023-06-12 09:00:59 -04:00
Nate Butler
48dcacc7ce Sort & add some docs 2023-05-22 10:03:10 -04:00
Nate Butler
32849d1e43 Add initial internal docs from Meta 2023-05-19 11:02:18 -04:00
868 changed files with 52993 additions and 11896 deletions

2
.cargo/config.toml Normal file
View File

@@ -0,0 +1,2 @@
[alias]
xtask = "run --package xtask --"

6
.config/nextest.toml Normal file
View File

@@ -0,0 +1,6 @@
[test-groups]
sequential-db-tests = { max-threads = 1 }
[[profile.default.overrides]]
filter = 'package(db)'
test-group = 'sequential-db-tests'

View File

@@ -29,7 +29,7 @@ jobs:
rustup update stable
- name: Checkout repo
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
clean: false
submodules: 'recursive'
@@ -51,14 +51,15 @@ jobs:
rustup set profile minimal
rustup update stable
rustup target add wasm32-wasi
cargo install cargo-nextest
- name: Install Node
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version: '18'
- name: Checkout repo
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
clean: false
submodules: 'recursive'
@@ -70,7 +71,7 @@ jobs:
run: cargo check --workspace
- name: Run tests
run: cargo test --workspace --no-fail-fast
run: cargo nextest run --workspace --no-fail-fast
- name: Build collab
run: cargo build -p collab
@@ -103,12 +104,12 @@ jobs:
rustup target add wasm32-wasi
- name: Install Node
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version: '18'
- name: Checkout repo
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
clean: false
submodules: 'recursive'
@@ -147,8 +148,8 @@ jobs:
- name: Create app bundle
run: script/bundle
- name: Upload app bundle to workflow run if main branch or specifi label
uses: actions/upload-artifact@v2
- name: Upload app bundle to workflow run if main branch or specific label
uses: actions/upload-artifact@v3
if: ${{ github.ref == 'refs/heads/main' }} || contains(github.event.pull_request.labels.*.name, 'run-build-dmg') }}
with:
name: Zed_${{ github.event.pull_request.head.sha || github.sha }}.dmg

View File

@@ -29,12 +29,12 @@ jobs:
rustup update stable
- name: Install Node
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
node-version: '18'
- name: Checkout repo
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
clean: false
submodules: 'recursive'

View File

@@ -16,8 +16,4 @@ jobs:
Restart your Zed or head to https://zed.dev/releases/stable/latest to grab it.
```md
# Changelog
${{ github.event.release.body }}
```

3
.gitignore vendored
View File

@@ -4,6 +4,8 @@
/plugins/bin
/script/node_modules
/styles/node_modules
/styles/src/types/zed.ts
/crates/theme/schemas/theme.json
/crates/collab/static/styles.css
/vendor/bin
/assets/themes/*.json
@@ -18,4 +20,5 @@ DerivedData/
.swiftpm/config/registries.json
.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata
.netrc
.swiftpm
**/*.db

1015
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -2,6 +2,7 @@
members = [
"crates/activity_indicator",
"crates/ai",
"crates/audio",
"crates/auto_update",
"crates/breadcrumbs",
"crates/call",
@@ -15,6 +16,7 @@ members = [
"crates/context_menu",
"crates/copilot",
"crates/copilot_button",
"crates/crdb",
"crates/db",
"crates/diagnostics",
"crates/drag_and_drop",
@@ -61,25 +63,30 @@ members = [
"crates/text",
"crates/theme",
"crates/theme_selector",
"crates/theme_testbench",
"crates/util",
"crates/semantic_index",
"crates/vim",
"crates/vcs_menu",
"crates/workspace",
"crates/welcome",
"crates/xtask",
"crates/zed",
"crates/zed-actions"
]
default-members = ["crates/zed"]
resolver = "2"
[workspace.dependencies]
anyhow = { version = "1.0.57" }
anyhow = { version = "1.0.57", features = ["backtrace"] }
async-recursion = "1.0"
async-trait = { version = "0.1" }
ctor = { version = "0.1" }
env_logger = { version = "0.9" }
futures = { version = "0.3" }
globset = { version = "0.4" }
indoc = "1"
isahc = "1.7.2"
# We explicitly disable a http2 support in isahc.
isahc = { version = "1.7.2", default-features = false, features = ["static-curl", "text-decoding"] }
lazy_static = { version = "1.4.0" }
log = { version = "0.4.16", features = ["kv_unstable_serde"] }
ordered-float = { version = "2.1.1" }
@@ -92,7 +99,7 @@ schemars = { version = "0.8" }
serde = { version = "1.0", features = ["derive", "rc"] }
serde_derive = { version = "1.0", features = ["deserialize_in_place"] }
serde_json = { version = "1.0", features = ["preserve_order", "raw_value"] }
smallvec = { version = "1.6", features = ["union"] }
smallvec = { version = "1.6", features = ["serde", "union"] }
smol = { version = "1.2" }
tempdir = { version = "0.3.7" }
thiserror = { version = "1.0.29" }
@@ -100,9 +107,35 @@ time = { version = "0.3", features = ["serde", "serde-well-known"] }
toml = { version = "0.5" }
tree-sitter = "0.20"
unindent = { version = "0.1.7" }
pretty_assertions = "1.3.0"
tree-sitter-bash = { git = "https://github.com/tree-sitter/tree-sitter-bash", rev = "1b0321ee85701d5036c334a6f04761cdc672e64c" }
tree-sitter-c = "0.20.1"
tree-sitter-cpp = "0.20.0"
tree-sitter-css = { git = "https://github.com/tree-sitter/tree-sitter-css", rev = "769203d0f9abe1a9a691ac2b9fe4bb4397a73c51" }
tree-sitter-elixir = { git = "https://github.com/elixir-lang/tree-sitter-elixir", rev = "4ba9dab6e2602960d95b2b625f3386c27e08084e" }
tree-sitter-elm = { git = "https://github.com/elm-tooling/tree-sitter-elm", rev = "692c50c0b961364c40299e73c1306aecb5d20f40"}
tree-sitter-embedded-template = "0.20.0"
tree-sitter-glsl = { git = "https://github.com/theHamsta/tree-sitter-glsl", rev = "2a56fb7bc8bb03a1892b4741279dd0a8758b7fb3" }
tree-sitter-go = { git = "https://github.com/tree-sitter/tree-sitter-go", rev = "aeb2f33b366fd78d5789ff104956ce23508b85db" }
tree-sitter-heex = { git = "https://github.com/phoenixframework/tree-sitter-heex", rev = "2e1348c3cf2c9323e87c2744796cf3f3868aa82a" }
tree-sitter-json = { git = "https://github.com/tree-sitter/tree-sitter-json", rev = "40a81c01a40ac48744e0c8ccabbaba1920441199" }
tree-sitter-rust = "0.20.3"
tree-sitter-markdown = { git = "https://github.com/MDeiml/tree-sitter-markdown", rev = "330ecab87a3e3a7211ac69bbadc19eabecdb1cca" }
tree-sitter-php = { git = "https://github.com/tree-sitter/tree-sitter-php", rev = "d43130fd1525301e9826f420c5393a4d169819fc" }
tree-sitter-python = "0.20.2"
tree-sitter-toml = { git = "https://github.com/tree-sitter/tree-sitter-toml", rev = "342d9be207c2dba869b9967124c679b5e6fd0ebe" }
tree-sitter-typescript = { git = "https://github.com/tree-sitter/tree-sitter-typescript", rev = "5d20856f34315b068c41edaee2ac8a100081d259" }
tree-sitter-ruby = "0.20.0"
tree-sitter-html = "0.19.0"
tree-sitter-scheme = { git = "https://github.com/6cdh/tree-sitter-scheme", rev = "af0fd1fa452cb2562dc7b5c8a8c55551c39273b9"}
tree-sitter-svelte = { git = "https://github.com/Himujjal/tree-sitter-svelte", rev = "697bb515471871e85ff799ea57a76298a71a9cca"}
tree-sitter-racket = { git = "https://github.com/zed-industries/tree-sitter-racket", rev = "eb010cf2c674c6fd9a6316a84e28ef90190fe51a"}
tree-sitter-yaml = { git = "https://github.com/zed-industries/tree-sitter-yaml", rev = "f545a41f57502e1b5ddf2a6668896c1b0620f930"}
tree-sitter-lua = "0.0.14"
[patch.crates-io]
tree-sitter = { git = "https://github.com/tree-sitter/tree-sitter", rev = "49226023693107fba9a1191136a4f47f38cdca73" }
tree-sitter = { git = "https://github.com/tree-sitter/tree-sitter", rev = "1c65ca24bc9a734ab70115188f465e12eecf224e" }
async-task = { git = "https://github.com/zed-industries/async-task", rev = "341b57d6de98cdfd7b418567b8de2022ca993a6e" }
# TODO - Remove when a version is released with this PR: https://github.com/servo/core-foundation-rs/pull/457
@@ -118,3 +151,4 @@ split-debuginfo = "unpacked"
[profile.release]
debug = true
lto = "thin"
codegen-units = 1

View File

@@ -16,22 +16,25 @@ Welcome to Zed, a lightning-fast, collaborative code editor that makes your drea
brew install foreman
```
* Ensure the Zed.dev website is checked out in a sibling directory:
* Ensure the Zed.dev website is checked out in a sibling directory and install it's dependencies:
```
cd ..
git clone https://github.com/zed-industries/zed.dev
cd zed.dev && npm install
npm install -g vercel
```
* Initialize submodules
* Return to Zed project directory and Initialize submodules
```
cd zed
git submodule update --init --recursive
```
* Set up a local `zed` database and seed it with some initial users:
Create a personal GitHub token to run `script/bootstrap` once successfully: the token needs to have an access to private repositories for the script to work (`repo` OAuth scope).
[Create a personal GitHub token](https://github.com/settings/tokens/new) to run `script/bootstrap` once successfully: the token needs to have an access to private repositories for the script to work (`repo` OAuth scope).
Then delete that token.
```

View File

@@ -1,6 +1,6 @@
User input begins on a line starting with /.
User input begins on a line starting with >.
Your output begins on a line starting with <.
Don't apologize ever.
Never say "I apologize".
Use simple language and don't flatter the users.
Keep it short.
Risk being rude.
Use simple language and don't flatter the users. Spend your tokens on valuable information.

View File

@@ -0,0 +1 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.9 0.499976C13.9 0.279062 13.7209 0.0999756 13.5 0.0999756C13.2791 0.0999756 13.1 0.279062 13.1 0.499976V1.09998H12.5C12.2791 1.09998 12.1 1.27906 12.1 1.49998C12.1 1.72089 12.2791 1.89998 12.5 1.89998H13.1V2.49998C13.1 2.72089 13.2791 2.89998 13.5 2.89998C13.7209 2.89998 13.9 2.72089 13.9 2.49998V1.89998H14.5C14.7209 1.89998 14.9 1.72089 14.9 1.49998C14.9 1.27906 14.7209 1.09998 14.5 1.09998H13.9V0.499976ZM11.8536 3.14642C12.0488 3.34168 12.0488 3.65826 11.8536 3.85353L10.8536 4.85353C10.6583 5.04879 10.3417 5.04879 10.1465 4.85353C9.9512 4.65827 9.9512 4.34169 10.1465 4.14642L11.1464 3.14643C11.3417 2.95116 11.6583 2.95116 11.8536 3.14642ZM9.85357 5.14642C10.0488 5.34168 10.0488 5.65827 9.85357 5.85353L2.85355 12.8535C2.65829 13.0488 2.34171 13.0488 2.14645 12.8535C1.95118 12.6583 1.95118 12.3417 2.14645 12.1464L9.14646 5.14642C9.34172 4.95116 9.65831 4.95116 9.85357 5.14642ZM13.5 5.09998C13.7209 5.09998 13.9 5.27906 13.9 5.49998V6.09998H14.5C14.7209 6.09998 14.9 6.27906 14.9 6.49998C14.9 6.72089 14.7209 6.89998 14.5 6.89998H13.9V7.49998C13.9 7.72089 13.7209 7.89998 13.5 7.89998C13.2791 7.89998 13.1 7.72089 13.1 7.49998V6.89998H12.5C12.2791 6.89998 12.1 6.72089 12.1 6.49998C12.1 6.27906 12.2791 6.09998 12.5 6.09998H13.1V5.49998C13.1 5.27906 13.2791 5.09998 13.5 5.09998ZM8.90002 0.499976C8.90002 0.279062 8.72093 0.0999756 8.50002 0.0999756C8.2791 0.0999756 8.10002 0.279062 8.10002 0.499976V1.09998H7.50002C7.2791 1.09998 7.10002 1.27906 7.10002 1.49998C7.10002 1.72089 7.2791 1.89998 7.50002 1.89998H8.10002V2.49998C8.10002 2.72089 8.2791 2.89998 8.50002 2.89998C8.72093 2.89998 8.90002 2.72089 8.90002 2.49998V1.89998H9.50002C9.72093 1.89998 9.90002 1.72089 9.90002 1.49998C9.90002 1.27906 9.72093 1.09998 9.50002 1.09998H8.90002V0.499976Z" fill="currentColor" fill-rule="evenodd" clip-rule="evenodd"></path></svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -0,0 +1,27 @@
<svg width="14" height="16" viewBox="0 0 14 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.375 8.74577V10.375C7.30597 10.375 6.69403 10.375 4.625 10.375V10.1226L9.375 5.87742V5.625H4.625V7.27717" stroke="black" stroke-width="1.25"/>
<circle cx="0.5" cy="8" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="1.49976" cy="5.82825" r="0.5" fill="black" fill-opacity="0.6"/>
<circle cx="1.49976" cy="10.1719" r="0.5" fill="black" fill-opacity="0.6"/>
<circle cx="13.5" cy="8.01581" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="12.5" cy="5.84387" r="0.5" fill="black" fill-opacity="0.6"/>
<circle cx="12.5" cy="10.1877" r="0.5" fill="black" fill-opacity="0.6"/>
<circle cx="6.99213" cy="1.48438" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="4.50391" cy="2.48438" r="0.5" fill="black" fill-opacity="0.6"/>
<circle cx="2.49976" cy="3.48438" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="2.49976" cy="12.5" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="0.5" cy="12.016" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="0.5" cy="3.98438" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="13.5" cy="12.016" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="13.5" cy="3.98438" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="2.49976" cy="14.516" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="2.48413" cy="1.48438" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="11.5" cy="14.516" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="11.5" cy="1.48438" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="11.5" cy="3.48438" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="11.5" cy="12.516" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="9.49609" cy="2.48438" r="0.5" fill="black" fill-opacity="0.6"/>
<circle cx="6.99213" cy="14.5" r="0.5" fill="black" fill-opacity="0.3"/>
<circle cx="4.50391" cy="13.516" r="0.5" fill="black" fill-opacity="0.6"/>
<circle cx="9.49609" cy="13.5" r="0.5" fill="black" fill-opacity="0.6"/>
</svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@@ -0,0 +1,5 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6 7.63H8" stroke="black" stroke-opacity="0.6" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<rect x="2" y="2" width="10" height="3" rx="0.5" fill="black" fill-opacity="0.3" stroke="black" stroke-width="1.25"/>
<path d="M2.59375 5H11.4375L10.5581 11.5664C10.5248 11.8146 10.313 12 10.0625 12H3.93944C3.68812 12 3.47585 11.8134 3.44358 11.5642L2.59375 5Z" stroke="black" stroke-width="1.25"/>
</svg>

After

Width:  |  Height:  |  Size: 527 B

View File

@@ -0,0 +1,6 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7 11C5.46973 11 4.1268 11.1873 3.31522 11.3327C2.94367 11.3992 2.60079 11.0563 2.66733 10.6848C2.81266 9.8732 3 8.53027 3 7C3 5.8387 2.89211 4.78529 2.77656 3.99011C2.73589 3.71017 3.19546 3.51715 3.36119 3.7464C4.09612 4.76304 5.23301 6.23301 6.5 7.5C7.76699 8.76699 9.23696 9.90388 10.2536 10.6388C10.4828 10.8045 10.2898 11.2641 10.0099 11.2234C9.21472 11.1079 8.1613 11 7 11Z" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M12.365 3.8478L10.3381 1.82088" stroke="black" stroke-opacity="0.3" stroke-width="1.25" stroke-linecap="round"/>
<path d="M11.3516 7.36803L6.64062 2.64155" stroke="black" stroke-opacity="0.6" stroke-width="1.25" stroke-linecap="round"/>
<rect x="2.72266" y="8.73828" width="3.58525" height="2.72899" rx="0.5" transform="rotate(45 2.72266 8.73828)" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 950 B

View File

@@ -0,0 +1,6 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12 10L12 10.8374C12 10.9431 11.9665 11.046 11.9044 11.1315L11.1498 12.1691C11.0557 12.2985 10.9054 12.375 10.7454 12.375L3.25461 12.375C3.09464 12.375 2.94433 12.2985 2.85024 12.1691L2.09563 11.1315C2.03348 11.046 2 10.9431 2 10.8374L2 2" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<path d="M2 12V10L7 11H12V12H2Z" fill="black"/>
<path d="M5.63246 2.04415C6.44914 2.31638 7 3.08066 7 3.94152V10.7306C7 11.0924 6.62757 11.3345 6.29693 11.1875L2.79693 9.63197C2.61637 9.55172 2.5 9.37266 2.5 9.17506V1.69371C2.5 1.35243 2.83435 1.11145 3.15811 1.21937L5.63246 2.04415Z" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M8.5 2C7.67157 2 7 2.67157 7 3.5V12C7 11.1954 10.2366 11.0382 11.5017 11.0075C11.7778 11.0008 12 10.7761 12 10.5V2.5C12 2.22386 11.7761 2 11.5 2H8.5Z" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -0,0 +1,4 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M12 10.5C12 10.7761 11.7761 11 11.5 11H2.5C2.22386 11 2 10.7761 2 10.5V4.88C2 4.60386 2.22386 4.38 2.5 4.38H4.4342C4.61518 4.38 4.78204 4.2822 4.87046 4.12428L5.35681 3.25572C5.44524 3.0978 5.61209 3 5.79308 3H8.20692C8.38791 3 8.55476 3.0978 8.64319 3.25572L9.12954 4.12428C9.21796 4.2822 9.38482 4.38 9.5658 4.38H11.5C11.7761 4.38 12 4.60386 12 4.88V10.5Z" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M7.005 9C7.90246 9 8.63 8.27246 8.63 7.375C8.63 6.47754 7.90246 5.75 7.005 5.75C6.10754 5.75 5.38 6.47754 5.38 7.375C5.38 8.27246 6.10754 9 7.005 9Z" fill="black" fill-opacity="0.3" stroke="black" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 850 B

View File

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M3.63281 5.66406L6.99344 8.89844L10.3672 5.66406" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 246 B

View File

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M8.35938 3.63281L5.125 6.99344L8.35938 10.3672" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 244 B

View File

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.64062 3.64062L8.89062 7.00125L5.64062 10.375" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 245 B

View File

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M3.63281 8.36719L6.99344 5.13281L10.3672 8.36719" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 246 B

View File

@@ -0,0 +1,4 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.375 2C2.5 2 2.5 3.5 2.5 4.5C2.5 5.5 2 6.50106 1 7C2 7.50106 2.5 8.5 2.5 9.5C2.5 10.5 2.5 12 4.375 12" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M9.63281 2C11.5078 2 11.5078 3.5 11.5078 4.5C11.5078 5.5 12.0078 6.50106 13.0078 7C12.0078 7.50106 11.5078 8.5 11.5078 9.5C11.5078 10.5 11.5078 12 9.63281 12" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 553 B

View File

@@ -0,0 +1,4 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.46115 8.43419C7.30678 8.43419 8.92229 7.43411 8.92229 5.21171C8.92229 2.98933 7.30678 1.98926 5.46115 1.98926C3.61553 1.98926 2 2.98933 2 5.21171C2 6.028 2.21794 6.67935 2.58519 7.17685C2.7184 7.35732 2.69033 7.77795 2.58387 7.97539C2.32908 8.44793 2.81048 8.9657 3.33372 8.84571C3.72539 8.75597 4.13621 8.63447 4.49574 8.4715C4.62736 8.41181 4.7727 8.38777 4.91631 8.40402C5.09471 8.42416 5.27678 8.43419 5.46115 8.43419Z" fill="black" fill-opacity="0.33" stroke="black" stroke-width="0.990499" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M11.6055 5.87971C11.4329 5.66762 11.1208 5.6357 10.9088 5.80842C10.6967 5.98114 10.6648 6.29308 10.8375 6.50518L11.6055 5.87971ZM6.4361 10.4149C6.21522 10.2536 5.90539 10.3018 5.74404 10.5226C5.58268 10.7435 5.6309 11.0533 5.85177 11.2147L6.4361 10.4149ZM12.3808 8.25929C12.3808 7.28754 12.1013 6.48847 11.6055 5.87971L10.8375 6.50518C11.1712 6.91492 11.3903 7.48485 11.3903 8.25929H12.3808ZM11.6988 10.5186C12.137 9.92499 12.3808 9.16705 12.3808 8.25929H11.3903C11.3903 8.98414 11.1982 9.52892 10.9019 9.93034L11.6988 10.5186ZM9.1854 11.9702C9.58603 12.1518 10.0316 12.2822 10.4412 12.3761L10.6625 11.4106C10.2888 11.3249 9.91276 11.2124 9.59435 11.068L9.1854 11.9702ZM8.42443 11.977C8.62663 11.977 8.8273 11.9661 9.02494 11.9437L8.91361 10.9595C8.75447 10.9775 8.59097 10.9865 8.42443 10.9865V11.977ZM5.85177 11.2147C6.5749 11.743 7.49105 11.977 8.42443 11.977V10.9865C7.64656 10.9865 6.9503 10.7906 6.4361 10.4149L5.85177 11.2147ZM9.59435 11.068C9.38377 10.9726 9.14869 10.9329 8.91361 10.9595L9.02494 11.9437C9.07704 11.9378 9.13271 11.9463 9.1854 11.9702L9.59435 11.068ZM10.8658 11.2581C10.8784 11.2813 10.8772 11.2932 10.8762 11.2995C10.8746 11.3097 10.8681 11.3291 10.8481 11.3517C10.8049 11.4004 10.7343 11.4271 10.6625 11.4106L10.4412 12.3761C10.8927 12.4796 11.3244 12.3073 11.5891 12.0089C11.8602 11.7033 11.9778 11.2332 11.7377 10.7879L10.8658 11.2581ZM10.9019 9.93034C10.7358 10.1554 10.7116 10.4435 10.7161 10.6293C10.7209 10.8293 10.7634 11.0682 10.8658 11.2581L11.7377 10.7879C11.739 10.7905 11.7304 10.7736 11.7214 10.7331C11.713 10.6954 11.7074 10.6506 11.7063 10.6054C11.7052 10.5594 11.709 10.5234 11.7139 10.5006C11.7196 10.4738 11.7217 10.4876 11.6988 10.5186L10.9019 9.93034Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -0,0 +1,5 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<ellipse cx="7" cy="4" rx="5" ry="2" fill="black" fill-opacity="0.3" stroke="black" stroke-width="1.25"/>
<path d="M12 4V10C12 11.1046 9.76142 12 7 12C4.23858 12 2 11.1046 2 10V4" stroke="black" stroke-width="1.25"/>
<path d="M12 7C12 8.10457 9.76142 9 7 9C4.23858 9 2 8.10457 2 7" stroke="black" stroke-width="1.25"/>
</svg>

After

Width:  |  Height:  |  Size: 422 B

View File

@@ -0,0 +1,4 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12.5413 7.3125C12.6529 7.11913 12.6529 6.88088 12.5413 6.6875L10.0413 2.35738C9.92962 2.164 9.72329 2.04488 9.5 2.04488L4.5 2.04488C4.27671 2.04488 4.07038 2.164 3.95873 2.35738L1.45873 6.6875C1.34709 6.88088 1.34709 7.11913 1.45873 7.3125L3.95873 11.6426C4.07038 11.836 4.27671 11.9551 4.5 11.9551L9.5 11.9551C9.72329 11.9551 9.92962 11.836 10.0413 11.6426L12.5413 7.3125Z" stroke="black" stroke-width="1.25" stroke-linejoin="round"/>
<path d="M6.75 4.14434C6.9047 4.05502 7.0953 4.05502 7.25 4.14434L9.34808 5.35566C9.50278 5.44498 9.59808 5.61004 9.59808 5.78868V8.21132C9.59808 8.38996 9.50278 8.55502 9.34808 8.64434L7.25 9.85566C7.0953 9.94498 6.9047 9.94498 6.75 9.85566L4.65192 8.64434C4.49722 8.55502 4.40192 8.38996 4.40192 8.21132L4.40192 5.78868C4.40192 5.61004 4.49722 5.44498 4.65192 5.35566L6.75 4.14434Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 949 B

View File

@@ -0,0 +1,5 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M2 4H10" stroke="black" stroke-opacity="0.6" stroke-width="1.25" stroke-linecap="round"/>
<path d="M2 7H12" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<path d="M2 10H8" stroke="black" stroke-opacity="0.3" stroke-width="1.25" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 379 B

View File

@@ -0,0 +1,159 @@
{
"suffixes": {
"aac": "audio",
"bash": "terminal",
"bmp": "image",
"c": "code",
"conf": "settings",
"cpp": "code",
"cc": "code",
"css": "code",
"doc": "document",
"docx": "document",
"eslintrc": "eslint",
"eslintrc.js": "eslint",
"eslintrc.json": "eslint",
"flac": "audio",
"fish": "terminal",
"gitattributes": "vcs",
"gitignore": "vcs",
"gitmodules": "vcs",
"gif": "image",
"go": "code",
"h": "code",
"handlebars": "code",
"hbs": "template",
"htm": "template",
"html": "template",
"svelte": "template",
"hpp": "code",
"ico": "image",
"ini": "settings",
"java": "code",
"jpeg": "image",
"jpg": "image",
"js": "code",
"json": "storage",
"lock": "lock",
"log": "log",
"md": "document",
"mdx": "document",
"mp3": "audio",
"mp4": "video",
"ods": "document",
"odp": "document",
"odt": "document",
"ogg": "video",
"pdf": "document",
"php": "code",
"png": "image",
"ppt": "document",
"pptx": "document",
"prettierrc": "prettier",
"prettierignore": "prettier",
"ps1": "terminal",
"psd": "image",
"py": "code",
"rb": "code",
"rkt": "code",
"rs": "rust",
"rtf": "document",
"scm": "code",
"sh": "terminal",
"bashrc": "terminal",
"bash_profile": "terminal",
"bash_aliases": "terminal",
"bash_logout": "terminal",
"profile": "terminal",
"zshrc": "terminal",
"zshenv": "terminal",
"zsh_profile": "terminal",
"zsh_aliases": "terminal",
"zsh_histfile": "terminal",
"zlogin": "terminal",
"sql": "code",
"svg": "image",
"swift": "code",
"tiff": "image",
"toml": "toml",
"ts": "typescript",
"tsx": "code",
"txt": "document",
"wav": "audio",
"webm": "video",
"xls": "document",
"xlsx": "document",
"xml": "template",
"yaml": "settings",
"yml": "settings",
"zsh": "terminal"
},
"types": {
"audio": {
"icon": "icons/file_icons/audio.svg"
},
"code": {
"icon": "icons/file_icons/code.svg"
},
"collapsed_chevron": {
"icon": "icons/file_icons/chevron_right.svg"
},
"collapsed_folder": {
"icon": "icons/file_icons/folder.svg"
},
"default": {
"icon": "icons/file_icons/file.svg"
},
"document": {
"icon": "icons/file_icons/book.svg"
},
"eslint": {
"icon": "icons/file_icons/eslint.svg"
},
"expanded_chevron": {
"icon": "icons/file_icons/chevron_down.svg"
},
"expanded_folder": {
"icon": "icons/file_icons/folder_open.svg"
},
"image": {
"icon": "icons/file_icons/image.svg"
},
"lock": {
"icon": "icons/file_icons/lock.svg"
},
"log": {
"icon": "icons/file_icons/info.svg"
},
"prettier": {
"icon": "icons/file_icons/prettier.svg"
},
"rust": {
"icon": "icons/file_icons/rust.svg"
},
"settings": {
"icon": "icons/file_icons/settings.svg"
},
"storage": {
"icon": "icons/file_icons/database.svg"
},
"template": {
"icon": "icons/file_icons/html.svg"
},
"terminal": {
"icon": "icons/file_icons/terminal.svg"
},
"toml": {
"icon": "icons/file_icons/toml.svg"
},
"typescript": {
"icon": "icons/file_icons/typescript.svg"
},
"vcs": {
"icon": "icons/file_icons/git.svg"
},
"video": {
"icon": "icons/file_icons/video.svg"
}
}
}

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 43 KiB

View File

@@ -0,0 +1,4 @@
<svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M3.49165 6.13802C3.4991 5.86198 3.72386 5.64062 4 5.64062H13C13.2761 5.64062 13.4991 5.86198 13.4916 6.13802C13.4529 7.57407 13.2341 11.625 12 11.625H2C3.23412 11.625 3.45287 7.57407 3.49165 6.13802Z" fill="black" stroke="black" stroke-width="1.25" stroke-linejoin="round"/>
<path d="M4.00781 11.625H2.42841C2.18186 11.625 1.97212 11.4453 1.93432 11.2017L0.651964 2.93603C0.604944 2.63296 0.839355 2.35938 1.14605 2.35938H4.6164C4.95332 2.35938 5.26759 2.52904 5.45244 2.81072L5.8125 3.35938H8.89008C9.37767 3.35938 9.79418 3.71103 9.87593 4.19171L10.125 5.65625" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 760 B

View File

@@ -0,0 +1,6 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="4" cy="10" r="2" stroke="black" stroke-width="1.25"/>
<circle cx="10" cy="4" r="2" fill="black" fill-opacity="0.3" stroke="black" stroke-width="1.25"/>
<line x1="3.625" y1="2.625" x2="3.625" y2="7.375" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<path d="M10 6V6C10 8.20914 8.20914 10 6 10V10" stroke="black" stroke-width="1.25"/>
</svg>

After

Width:  |  Height:  |  Size: 462 B

View File

@@ -0,0 +1,6 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<line x1="10.2795" y1="2.63847" x2="7.74785" y2="11.0142" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<line x1="6.26624" y1="2.99597" x2="3.7346" y2="11.3717" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<line x1="3.15982" y1="5.3799" x2="11.9098" y2="5.3799" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<line x1="2.0983" y1="8.62407" x2="10.8483" y2="8.62407" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 571 B

View File

@@ -0,0 +1,5 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M8.15732 3.17108L5.84268 10.8289" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<path d="M4 5L2 7L4 9" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M10 9L12 7L10 5" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 423 B

View File

@@ -0,0 +1,7 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6.5 3C6.91421 3 7.25 2.66421 7.25 2.25C7.25 1.83579 6.91421 1.5 6.5 1.5C6.08579 1.5 5.75 1.83579 5.75 2.25C5.75 2.66421 6.08579 3 6.5 3Z" fill="black" stroke="black" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M6 8L9 5L12 8H6Z" fill="black" fill-opacity="0.3"/>
<path d="M2 10L5 7L7.375 9.375" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M6 8L7.5 6.5L9 5L10.5 6.5L12 8" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M3.375 2H2.5C2.22386 2 2 2.22386 2 2.5V11.5C2 11.7761 2.22386 12 2.5 12H7.35938M9.64062 2H11.5C11.7761 2 12 2.22386 12 2.5V11.5C12 11.7761 11.7761 12 11.5 12H10.125" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 865 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 46 KiB

View File

@@ -0,0 +1,6 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="3" y="5" width="8" height="7" rx="0.5" stroke="black" stroke-width="1.25"/>
<path d="M4 4C4 2.89543 4.89543 2 6 2H8C9.10457 2 10 2.89543 10 4V5H4V4Z" stroke="black" stroke-opacity="0.6" stroke-width="1.25"/>
<circle cx="7" cy="8" r="1" fill="black"/>
<path d="M7 8V9.375" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 444 B

View File

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12 12L9.41379 9.41379M2 6.31034C2 3.92981 3.92981 2 6.31034 2C8.6909 2 10.6207 3.92981 10.6207 6.31034C10.6207 8.6909 8.6909 10.6207 6.31034 10.6207C3.92981 10.6207 2 8.6909 2 6.31034Z" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 383 B

View File

@@ -0,0 +1,8 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M2.03125 2.96875C2.03125 2.41647 2.47897 1.96875 3.03125 1.96875H5V12H3.03125C2.47897 12 2.03125 11.5523 2.03125 11V2.96875Z" fill="black" fill-opacity="0.3"/>
<rect x="2" y="2" width="10" height="10" rx="0.5" stroke="black" stroke-width="1.25"/>
<path d="M9.5 5L7.5 5" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M9.5 7H7.5" stroke="black" stroke-opacity="0.6" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M9.5 9H7.5" stroke="black" stroke-opacity="0.3" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M5 2V13" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 820 B

View File

@@ -0,0 +1,4 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1.62677 3.88472L6.99983 6.78517M1.62677 3.88472L1.63137 9.90006L7.00442 12.8005M1.62677 3.88472L4.31117 2.54211M6.99983 6.78517L7.00442 12.8005M6.99983 6.78517L9.68414 5.33084M7.00442 12.8005L12.373 9.89186L12.3684 3.87652M4.31117 2.54211L6.99556 1.1995L12.3684 3.87652M4.31117 2.54211L9.68414 5.33084M12.3684 3.87652L9.68414 5.33084" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M7.03125 12.5625V6.78125L1.5625 3.9375V9.75L7.03125 12.5625Z" fill="black" fill-opacity="0.3"/>
</svg>

After

Width:  |  Height:  |  Size: 637 B

View File

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7 3V11M11 7H3" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 188 B

View File

@@ -0,0 +1,12 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M2 2.86328H8.51563" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<path d="M11 2.86328L12 2.86328" stroke="black" stroke-opacity="0.3" stroke-width="1.25" stroke-linecap="round"/>
<path d="M9.64062 5.6263L12 5.6263" stroke="black" stroke-opacity="0.6" stroke-width="1.25" stroke-linecap="round"/>
<path d="M4.79688 5.6263L7.15625 5.6263" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<path d="M2 5.6263L2.35937 5.6263" stroke="black" stroke-opacity="0.3" stroke-width="1.25" stroke-linecap="round"/>
<path d="M7.15625 8.3737L12 8.3737" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<path d="M2 8.3737L4.64062 8.3737" stroke="black" stroke-opacity="0.6" stroke-width="1.25" stroke-linecap="round"/>
<path d="M2 11.1094H3.54687" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<path d="M5.97656 11.1094H8.35938" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<path d="M10.8203 11.1094L12 11.1094" stroke="black" stroke-opacity="0.3" stroke-width="1.25" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,5 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M2.03125 2V2.03125M2.03125 8C2.03125 10 5 10 5 10M2.03125 8V2.03125M2.03125 8L2.03125 11M2.03125 2.03125C2.03125 4 5 4 5 4" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<rect x="7.375" y="2.375" width="4.25" height="3.25" rx="1.125" fill="black" fill-opacity="0.33" stroke="black" stroke-width="1.25"/>
<rect x="7.375" y="8.375" width="4.25" height="3.25" rx="1.125" fill="black" fill-opacity="0.33" stroke="black" stroke-width="1.25"/>
</svg>

After

Width:  |  Height:  |  Size: 588 B

View File

@@ -0,0 +1,11 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7 12C4.97279 12 3.22735 10.7936 2.4425 9.0595M7 2C9.11228 2 10.9186 3.30981 11.6512 5.16152" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<circle cx="1.65625" cy="1.67188" r="0.625" fill="black" fill-opacity="0.5"/>
<circle cx="3.71094" cy="1.67188" r="0.625" fill="black" fill-opacity="0.5"/>
<circle cx="4.96094" cy="3.36719" r="0.625" fill="black" fill-opacity="0.5"/>
<circle cx="3.71094" cy="4.79688" r="0.625" fill="black" fill-opacity="0.5"/>
<circle cx="4.60156" cy="6.67188" r="0.625" fill="black" fill-opacity="0.5"/>
<circle cx="1.65625" cy="4.17188" r="0.625" fill="black" fill-opacity="0.5"/>
<circle cx="1.65625" cy="6.67188" r="0.625" fill="black" fill-opacity="0.5"/>
<path d="M10.7802 10.8195C10.838 10.8195 10.8906 10.8527 10.9155 10.9048L11.7174 12.5811C11.8088 12.7721 12.0017 12.8938 12.2135 12.8938H12.3394C12.7483 12.8938 13.0142 12.4635 12.8314 12.0978L12.1619 10.7589C12.1232 10.6816 12.1582 10.5823 12.241 10.5349C12.7565 10.2397 13.0695 9.66858 13.0695 9.00391C13.0695 8.43361 12.8777 7.97006 12.5248 7.64951C12.1725 7.3295 11.6652 7.15703 11.043 7.15703H9.49609C9.19234 7.15703 8.94609 7.40327 8.94609 7.70703V12.3438C8.94609 12.6475 9.19234 12.8938 9.49609 12.8938H9.60156C9.90532 12.8938 10.1516 12.6475 10.1516 12.3438V10.9695C10.1516 10.8867 10.2187 10.8195 10.3016 10.8195H10.7802ZM10.1516 8.31328C10.1516 8.23044 10.2187 8.16328 10.3016 8.16328H10.8984C11.2023 8.16328 11.4371 8.2449 11.5954 8.38814C11.7529 8.5308 11.8406 8.73993 11.8406 9.00781C11.8406 9.28155 11.751 9.49461 11.5909 9.63971C11.4302 9.7854 11.1925 9.86797 10.8867 9.86797H10.3016C10.2187 9.86797 10.1516 9.80081 10.1516 9.71797V8.31328Z" fill="black" stroke="black" stroke-width="0.1"/>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -0,0 +1,5 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.10517 5.8012C4.07193 5.73172 4.00176 5.6875 3.92475 5.6875H3.44609C3.33564 5.6875 3.24609 5.77704 3.24609 5.8875V7.26172C3.24609 7.53786 3.02224 7.76172 2.74609 7.76172H2.64062C2.36448 7.76172 2.14062 7.53786 2.14062 7.26172V2.625C2.14062 2.34886 2.36448 2.125 2.64062 2.125H4.1875C5.41406 2.125 6.16406 2.80469 6.16406 3.92188C6.16406 4.57081 5.85885 5.12418 5.36073 5.40943C5.25888 5.46775 5.20921 5.59421 5.2617 5.69918L5.93117 7.03811C6.09739 7.37056 5.85564 7.76172 5.48395 7.76172H5.35806C5.16552 7.76172 4.99009 7.65117 4.907 7.47748L4.10517 5.8012ZM3.44609 3.03125C3.33564 3.03125 3.24609 3.12079 3.24609 3.23125V4.63594C3.24609 4.74639 3.33564 4.83594 3.44609 4.83594H4.03125C4.66016 4.83594 5.03516 4.49609 5.03516 3.92578C5.03516 3.36719 4.66797 3.03125 4.04297 3.03125H3.44609Z" fill="black" fill-opacity="0.5"/>
<path d="M3.92475 5.7375C3.98251 5.7375 4.03514 5.77067 4.06006 5.82277L4.8619 7.49905C4.95329 7.69011 5.14627 7.81172 5.35806 7.81172H5.48395C5.89281 7.81172 6.15873 7.38145 5.97589 7.01575L5.30642 5.67682C5.26778 5.59953 5.30269 5.50028 5.38557 5.45282C5.90107 5.15762 6.21406 4.58655 6.21406 3.92188C6.21406 3.35158 6.02226 2.88803 5.66936 2.56748C5.31705 2.24747 4.80973 2.075 4.1875 2.075H2.64062C2.33687 2.075 2.09062 2.32124 2.09062 2.625V7.26172C2.09062 7.56548 2.33687 7.81172 2.64062 7.81172H2.74609C3.04985 7.81172 3.29609 7.56548 3.29609 7.26172V5.8875C3.29609 5.80466 3.36325 5.7375 3.44609 5.7375H3.92475ZM3.29609 3.23125C3.29609 3.14841 3.36325 3.08125 3.44609 3.08125H4.04297C4.34688 3.08125 4.58164 3.16287 4.73988 3.30611C4.89748 3.44876 4.98516 3.6579 4.98516 3.92578C4.98516 4.19952 4.89553 4.41258 4.73546 4.55768C4.57475 4.70337 4.33706 4.78594 4.03125 4.78594H3.44609C3.36325 4.78594 3.29609 4.71878 3.29609 4.63594V3.23125Z" stroke="black" stroke-opacity="0.5" stroke-width="0.1"/>
<path d="M9.32812 6.65625V9.32812M9.32812 12V9.32812M12 9.32812H9.32812M6.65625 9.32812H9.32812M9.32812 9.32812L11.1094 7.54688M9.32812 9.32812L7.54688 11.1094M9.32812 9.32812L11.1094 11.1094M9.32812 9.32812L7.54688 7.54688" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@@ -0,0 +1,5 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M3.96454 5.6762C3.93131 5.60672 3.86114 5.5625 3.78412 5.5625H3.30547C3.19501 5.5625 3.10547 5.65204 3.10547 5.7625V7.13672C3.10547 7.41286 2.88161 7.63672 2.60547 7.63672H2.5C2.22386 7.63672 2 7.41286 2 7.13672V2.5C2 2.22386 2.22386 2 2.5 2H4.04688C5.27344 2 6.02344 2.67969 6.02344 3.79688C6.02344 4.44581 5.71823 4.99918 5.2201 5.28443C5.11826 5.34275 5.06859 5.46921 5.12107 5.57418L5.79054 6.91311C5.95677 7.24556 5.71502 7.63672 5.34333 7.63672H5.21743C5.02489 7.63672 4.84946 7.52617 4.76638 7.35248L3.96454 5.6762ZM3.30547 2.90625C3.19501 2.90625 3.10547 2.99579 3.10547 3.10625V4.51094C3.10547 4.62139 3.19501 4.71094 3.30547 4.71094H3.89062C4.51953 4.71094 4.89453 4.37109 4.89453 3.80078C4.89453 3.24219 4.52734 2.90625 3.90234 2.90625H3.30547Z" fill="black" fill-opacity="0.5"/>
<path d="M3.78412 5.6125C3.84188 5.6125 3.89451 5.64567 3.91944 5.69777L4.72127 7.37405C4.81266 7.56511 5.00564 7.68672 5.21743 7.68672H5.34333C5.75219 7.68672 6.01811 7.25645 5.83526 6.89075L5.1658 5.55182C5.12715 5.47453 5.16207 5.37528 5.24495 5.32782C5.76044 5.03262 6.07344 4.46155 6.07344 3.79688C6.07344 3.22658 5.88164 2.76303 5.52873 2.44248C5.17642 2.12247 4.6691 1.95 4.04688 1.95H2.5C2.19624 1.95 1.95 2.19624 1.95 2.5V7.13672C1.95 7.44048 2.19624 7.68672 2.5 7.68672H2.60547C2.90923 7.68672 3.15547 7.44048 3.15547 7.13672V5.7625C3.15547 5.67966 3.22263 5.6125 3.30547 5.6125H3.78412ZM3.15547 3.10625C3.15547 3.02341 3.22263 2.95625 3.30547 2.95625H3.90234C4.20626 2.95625 4.44101 3.03787 4.59926 3.18111C4.75686 3.32376 4.84453 3.5329 4.84453 3.80078C4.84453 4.07452 4.75491 4.28758 4.59484 4.43268C4.43413 4.57837 4.19643 4.66094 3.89062 4.66094H3.30547C3.22263 4.66094 3.15547 4.59378 3.15547 4.51094V3.10625Z" stroke="black" stroke-opacity="0.5" stroke-width="0.1"/>
<path d="M7.5 5.88672C9.433 5.88672 11 7.45372 11 9.38672V12M11 12L13 10M11 12L9 10" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@@ -0,0 +1,4 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.27935 9.98207C4.32063 9.4038 3.9204 8.89049 3.35998 8.80276L2.60081 8.68387C2.37979 8.64945 2.20167 8.48001 2.15225 8.25614L2.01378 7.63511C1.96382 7.41235 2.05233 7.1807 2.23696 7.05125L2.8631 6.61242C3.33337 6.28297 3.47456 5.6369 3.18621 5.13364L2.79467 4.45092C2.68118 4.25261 2.69801 4.00374 2.83757 3.82321L3.22314 3.32436C3.3627 3.14438 3.59621 3.06994 3.81071 3.13772L4.57531 3.37769C5.11944 3.54879 5.70048 3.26159 5.90683 2.71886L6.1811 1.99782C6.26255 1.78395 6.46345 1.64285 6.68772 1.6423L7.31007 1.64063C7.53434 1.64007 7.73579 1.78006 7.81834 1.99337L8.09965 2.72275C8.30821 3.26214 8.88655 3.54712 9.42903 3.37714L10.1632 3.14716C10.3772 3.07994 10.6096 3.15382 10.7492 3.3327L11.1374 3.83099" stroke="black" stroke-opacity="0.6" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M7.76988 10.5933C7.76988 10.6595 7.8236 10.7133 7.88988 10.7133H7.97588C8.32602 10.7133 8.60988 10.9971 8.60988 11.3472C8.60988 11.6974 8.32602 11.9812 7.97588 11.9812H6.05587C5.70573 11.9812 5.42188 11.6974 5.42188 11.3472C5.42188 10.9971 5.70573 10.7133 6.05587 10.7133H6.14188C6.20815 10.7133 6.26188 10.6595 6.26188 10.5933V6.66925C6.26188 6.60298 6.20815 6.54925 6.14188 6.54925H6.05588C5.70573 6.54925 5.42188 6.2654 5.42188 5.91525C5.42188 5.5651 5.70573 5.28125 6.05588 5.28125H8.89988C10.0518 5.28125 11.8619 5.71487 11.8619 7.15185C11.8619 7.67078 11.7284 8.10362 11.4642 8.45348C11.1981 8.79765 10.8458 9.05637 10.4056 9.22931C10.3782 9.24007 10.3673 9.27304 10.3829 9.29801L11.2163 10.6342C11.247 10.6834 11.3008 10.7133 11.3588 10.7133H11.7319C12.082 10.7133 12.3659 10.9971 12.3659 11.3472C12.3659 11.6974 12.082 11.9812 11.7319 11.9812H10.5637C10.4955 11.9812 10.432 11.9465 10.3952 11.889L8.96523 9.65406C8.92847 9.59661 8.86496 9.56185 8.79676 9.56185H7.96988C7.85942 9.56185 7.76988 9.65139 7.76988 9.76185V10.5933ZM8.61188 6.54925C9.02963 6.54925 10.125 6.54925 10.2339 7.18785C10.2975 7.56123 10.1181 7.86557 9.88118 8.07715C9.64227 8.29046 9.20527 8.38985 8.58788 8.38985H7.86988C7.81465 8.38985 7.76988 8.34508 7.76988 8.28985V6.64925C7.76988 6.59402 7.81465 6.54925 7.86988 6.54925H8.61188Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -0,0 +1,4 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M2.60081 8.94324L3.35998 9.06214C3.9204 9.14986 4.32063 9.66317 4.27935 10.2414L4.22342 11.0252C4.20713 11.2536 4.32877 11.4686 4.53024 11.568L5.09174 11.8446C5.29321 11.9441 5.53379 11.9068 5.69834 11.7519L6.26255 11.2186C6.67855 10.8253 7.32041 10.8253 7.7369 11.2186L8.3011 11.7519C8.46565 11.9074 8.70572 11.9441 8.90772 11.8446L9.47027 11.5674C9.67124 11.4686 9.79234 11.2541 9.77607 11.0264L9.72007 10.2414C9.67883 9.66317 10.079 9.14986 10.6394 9.06214L11.3986 8.94324C11.6197 8.90883 11.7978 8.73938 11.8477 8.51607L11.9862 7.89504C12.0362 7.67172 11.9477 7.44007 11.763 7.31117L11.1293 6.86731C10.6617 6.53959 10.5189 5.89966 10.8013 5.3969L11.1841 4.71586C11.2954 4.51754 11.277 4.26923 11.1374 4.09036L10.7492 3.59207C10.6096 3.41319 10.3772 3.33932 10.1632 3.40653L9.42903 3.63651C8.88655 3.80649 8.30821 3.52152 8.09965 2.98213L7.81834 2.25275C7.73579 2.03944 7.53434 1.89945 7.31007 1.9L6.68772 1.90167C6.46345 1.90222 6.26255 2.04333 6.1811 2.25719L5.90683 2.97824C5.70048 3.52097 5.11944 3.80816 4.57531 3.63706L3.81071 3.39709C3.59621 3.32932 3.3627 3.40375 3.22314 3.58374L2.83757 4.08258C2.69801 4.26312 2.68118 4.51199 2.79467 4.7103L3.18621 5.39302C3.47456 5.89628 3.33337 6.54235 2.8631 6.87179L2.23696 7.31062C2.05233 7.44007 1.96382 7.67173 2.01378 7.89448L2.15225 8.51552C2.20167 8.73938 2.37979 8.90883 2.60081 8.94324Z" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M8.14913 5.85093L8.14909 5.85089C7.51453 5.21637 6.48549 5.21637 5.85092 5.85089L5.85089 5.85092C5.21637 6.48549 5.21637 7.51453 5.85089 8.14909L5.85093 8.14913C6.48549 8.78362 7.51452 8.78362 8.14908 8.14913L8.14913 8.14908C8.78362 7.51452 8.78362 6.48549 8.14913 5.85093Z" fill="black" fill-opacity="0.3" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -0,0 +1,5 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1.65625 2.5C1.65625 2.22386 1.88011 2 2.15625 2H11.8437C12.1199 2 12.3438 2.22386 12.3438 2.5V11.5C12.3438 11.7761 12.1199 12 11.8437 12H2.15625C1.88011 12 1.65625 11.7761 1.65625 11.5V2.5Z" stroke="black" stroke-width="1.25"/>
<path d="M4.375 9L6.375 7L4.375 5" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M7.625 9L9.90625 9" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 549 B

View File

@@ -0,0 +1,5 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5 5H9" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<path d="M7 5L7 10" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<path d="M4 2H2.5C2.22386 2 2 2.22386 2 2.5V11.5C2 11.7761 2.22386 12 2.5 12H4M10 2H11.5C11.7761 2 12 2.22386 12 2.5V11.5C12 11.7761 11.7761 12 11.5 12H10" stroke="black" stroke-opacity="0.6" stroke-width="1.25" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 497 B

View File

@@ -0,0 +1,5 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12 4.375V2.5C12 2.22386 11.7761 2 11.5 2H2.5C2.22386 2 2 2.22386 2 2.5V11.5C2 11.7761 2.22386 12 2.5 12H3.375" stroke="black" stroke-opacity="0.6" stroke-width="1.25" stroke-linecap="round"/>
<path d="M10.6836 7.82805C10.7933 7.65392 10.9823 7.57377 11.174 7.57377C11.2904 7.57377 11.4019 7.59384 11.5092 7.62792C11.8324 7.73069 12.2148 7.63925 12.3392 7.32368L12.3773 7.22707C12.4703 6.99131 12.3823 6.71761 12.1522 6.61154C11.8328 6.46436 11.4984 6.375 11.1262 6.375C9.87708 6.375 8.91935 7.60671 9.4239 8.84869C9.54205 9.13951 9.74219 9.36166 9.9515 9.54337C10.1061 9.6776 10.2858 9.80516 10.4475 9.92002C10.4972 9.95529 10.5452 9.98936 10.5903 10.0221C11.0283 10.34 11.2526 10.5876 11.2526 10.9466C11.2526 11.1518 11.1622 11.3133 11.016 11.4128C10.8777 11.5071 10.7055 11.5357 10.5454 11.5222C10.3931 11.5093 10.2529 11.4717 10.1214 11.4196C9.81633 11.2989 9.45533 11.4015 9.33641 11.7073L9.2814 11.8487C9.19162 12.0796 9.2749 12.3463 9.49799 12.4539C10.0894 12.7391 10.7377 12.8279 11.3915 12.5872C12.0569 12.3423 12.595 11.7708 12.595 10.9068C12.595 10.1301 12.1336 9.69583 11.6966 9.36109C11.606 9.29163 11.5259 9.23292 11.4493 9.17682C11.3259 9.08638 11.1964 8.99109 11.0734 8.88536C10.8937 8.73082 10.7518 8.57274 10.6595 8.38613C10.5746 8.21464 10.5815 7.99013 10.6836 7.82805Z" fill="black"/>
<path d="M6.98644 7.70936H7.69396C7.98162 7.70936 8.21481 7.47617 8.21481 7.18851V7.02346C8.21481 6.73581 7.98162 6.50261 7.69396 6.50261H4.96848C4.68082 6.50261 4.44763 6.73581 4.44763 7.02346V7.18851C4.44763 7.47617 4.68082 7.70936 4.96848 7.70936H5.676V12.102C5.676 12.3896 5.90919 12.6228 6.19685 12.6228H6.46559C6.75325 12.6228 6.98644 12.3896 6.98644 12.102V7.70936Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -0,0 +1,4 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1.65625 2H11.8437C12.1199 2 12.3438 2.22386 12.3438 2.5V9.34375M12.3438 12H2.15625C1.88011 12 1.65625 11.7761 1.65625 11.5V4.65625" stroke="black" stroke-width="1.25" stroke-linecap="round"/>
<path d="M9 7.01562L5.65624 9.3125L5.65624 4.6875L9 7.01562Z" fill="black" fill-opacity="0.3" stroke="black" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 483 B

View File

@@ -0,0 +1,3 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.5 3C1.22386 3 1 3.22386 1 3.5C1 3.77614 1.22386 4 1.5 4H13.5C13.7761 4 14 3.77614 14 3.5C14 3.22386 13.7761 3 13.5 3H1.5ZM1 7.5C1 7.22386 1.22386 7 1.5 7H13.5C13.7761 7 14 7.22386 14 7.5C14 7.77614 13.7761 8 13.5 8H1.5C1.22386 8 1 7.77614 1 7.5ZM1 11.5C1 11.2239 1.22386 11 1.5 11H13.5C13.7761 11 14 11.2239 14 11.5C14 11.7761 13.7761 12 13.5 12H1.5C1.22386 12 1 11.7761 1 11.5Z" fill="#CCCAC2"/>
</svg>

After

Width:  |  Height:  |  Size: 552 B

View File

@@ -0,0 +1 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.42503 3.44136C10.0561 3.23654 10.7837 3.2402 11.3792 3.54623C12.7532 4.25224 13.3477 6.07191 12.7946 8C12.5465 8.8649 12.1102 9.70472 11.1861 10.5524C10.262 11.4 8.98034 11.9 8.38571 11.9C8.17269 11.9 8 11.7321 8 11.525C8 11.3179 8.17644 11.15 8.38571 11.15C9.06497 11.15 9.67189 10.7804 10.3906 10.236C10.9406 9.8193 11.3701 9.28633 11.608 8.82191C12.0628 7.93367 12.0782 6.68174 11.3433 6.34901C10.9904 6.73455 10.5295 6.95946 9.97725 6.95946C8.7773 6.95946 8.0701 5.99412 8.10051 5.12009C8.12957 4.28474 8.66032 3.68954 9.42503 3.44136ZM3.42503 3.44136C4.05614 3.23654 4.78366 3.2402 5.37923 3.54623C6.7532 4.25224 7.34766 6.07191 6.79462 8C6.54654 8.8649 6.11019 9.70472 5.1861 10.5524C4.26201 11.4 2.98034 11.9 2.38571 11.9C2.17269 11.9 2 11.7321 2 11.525C2 11.3179 2.17644 11.15 2.38571 11.15C3.06497 11.15 3.67189 10.7804 4.39058 10.236C4.94065 9.8193 5.37014 9.28633 5.60797 8.82191C6.06282 7.93367 6.07821 6.68174 5.3433 6.34901C4.99037 6.73455 4.52948 6.95946 3.97725 6.95946C2.7773 6.95946 2.0701 5.99412 2.10051 5.12009C2.12957 4.28474 2.66032 3.68954 3.42503 3.44136Z" fill="currentColor" fill-rule="evenodd" clip-rule="evenodd"></path></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M0.877197 7.49984C0.877197 3.84216 3.84234 0.877014 7.50003 0.877014C11.1577 0.877014 14.1229 3.84216 14.1229 7.49984C14.1229 11.1575 11.1577 14.1227 7.50003 14.1227C3.84234 14.1227 0.877197 11.1575 0.877197 7.49984ZM7.50003 1.82701C4.36702 1.82701 1.8272 4.36683 1.8272 7.49984C1.8272 10.6328 4.36702 13.1727 7.50003 13.1727C10.633 13.1727 13.1729 10.6328 13.1729 7.49984C13.1729 4.36683 10.633 1.82701 7.50003 1.82701ZM7.12457 9.00001C7.06994 9.12735 6.33165 11.9592 6.33165 11.9592C6.26018 12.226 5.98601 12.3843 5.71928 12.3128C5.45255 12.2413 5.29425 11.9672 5.36573 11.7004C5.36573 11.7004 6.24661 8.87268 6.24661 8.27007V6.80099L4.28763 6.27608C4.0209 6.20461 3.86261 5.93045 3.93408 5.66371C4.00555 5.39698 4.27972 5.23869 4.54645 5.31016C4.54645 5.31016 6.20042 5.87268 6.84579 5.87268H8.15505C8.80042 5.87268 10.4534 5.31042 10.4534 5.31042C10.7202 5.23895 10.9943 5.39724 11.0658 5.66397C11.1373 5.93071 10.979 6.20487 10.7122 6.27635L8.74661 6.80303V8.27007C8.74661 8.87268 9.62663 11.6971 9.62663 11.6971C9.6981 11.9639 9.5398 12.238 9.27307 12.3095C9.00634 12.381 8.73217 12.2227 8.6607 11.956C8.6607 11.956 7.91994 9.12735 7.86866 9.00001C7.81994 8.87268 7.65006 8.87268 7.65006 8.87268H7.34317C7.34317 8.87268 7.16994 8.87268 7.12457 9.00001ZM7.50043 5.12007C8.12175 5.12007 8.62543 4.61639 8.62543 3.99507C8.62543 3.37375 8.12175 2.87007 7.50043 2.87007C6.87911 2.87007 6.37543 3.37375 6.37543 3.99507C6.37543 4.61639 6.87911 5.12007 7.50043 5.12007Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M0 1.5C0 1.22386 0.223858 1 0.5 1H2.5C2.77614 1 3 1.22386 3 1.5C3 1.77614 2.77614 2 2.5 2H0.5C0.223858 2 0 1.77614 0 1.5ZM4 1.5C4 1.22386 4.22386 1 4.5 1H14.5C14.7761 1 15 1.22386 15 1.5C15 1.77614 14.7761 2 14.5 2H4.5C4.22386 2 4 1.77614 4 1.5ZM4 4.5C4 4.22386 4.22386 4 4.5 4H11.5C11.7761 4 12 4.22386 12 4.5C12 4.77614 11.7761 5 11.5 5H4.5C4.22386 5 4 4.77614 4 4.5ZM0 7.5C0 7.22386 0.223858 7 0.5 7H2.5C2.77614 7 3 7.22386 3 7.5C3 7.77614 2.77614 8 2.5 8H0.5C0.223858 8 0 7.77614 0 7.5ZM4 7.5C4 7.22386 4.22386 7 4.5 7H14.5C14.7761 7 15 7.22386 15 7.5C15 7.77614 14.7761 8 14.5 8H4.5C4.22386 8 4 7.77614 4 7.5ZM4 10.5C4 10.2239 4.22386 10 4.5 10H11.5C11.7761 10 12 10.2239 12 10.5C12 10.7761 11.7761 11 11.5 11H4.5C4.22386 11 4 10.7761 4 10.5ZM0 13.5C0 13.2239 0.223858 13 0.5 13H2.5C2.77614 13 3 13.2239 3 13.5C3 13.7761 2.77614 14 2.5 14H0.5C0.223858 14 0 13.7761 0 13.5ZM4 13.5C4 13.2239 4.22386 13 4.5 13H14.5C14.7761 13 15 13.2239 15 13.5C15 13.7761 14.7761 14 14.5 14H4.5C4.22386 14 4 13.7761 4 13.5Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M10.5 1.75003C10.7107 1.75003 10.8988 1.88217 10.9703 2.08042L13.9703 10.4C14.064 10.6598 13.9293 10.9463 13.6696 11.04C13.4098 11.1336 13.1233 10.999 13.0296 10.7392L12.0477 8.01606H8.95227L7.97031 10.7392C7.87664 10.999 7.59012 11.1336 7.33035 11.04C7.07058 10.9463 6.93593 10.6598 7.0296 10.4L10.0296 2.08042C10.1011 1.88217 10.2892 1.75003 10.5 1.75003ZM10.5 3.72402L11.7411 7.16606H9.25877L10.5 3.72402ZM2.49949 2.09997C2.7204 2.09997 2.89949 2.27906 2.89949 2.49997L2.89949 9.53428L4.21664 8.21713C4.37285 8.06092 4.62612 8.06092 4.78233 8.21713C4.93854 8.37334 4.93854 8.6266 4.78233 8.78281L2.78233 10.7828C2.70732 10.8578 2.60557 10.9 2.49949 10.9C2.3934 10.9 2.29166 10.8578 2.21664 10.7828L0.216645 8.78281C0.0604349 8.6266 0.0604349 8.37334 0.216645 8.21713C0.372854 8.06092 0.62612 8.06092 0.78233 8.21713L2.09949 9.53428L2.09949 2.49997C2.09949 2.27906 2.27857 2.09997 2.49949 2.09997ZM0.0999695 13.5001C0.0999695 13.2791 0.279056 13.1001 0.499969 13.1001H14.5C14.7209 13.1001 14.9 13.2791 14.9 13.5001C14.9 13.721 14.7209 13.9001 14.5 13.9001H0.499969C0.279056 13.9001 0.0999695 13.721 0.0999695 13.5001Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M9 3C9 2.44772 8.55229 2 8 2H7C6.44772 2 6 2.44772 6 3L6 14H1.5C1.22386 14 1 14.2239 1 14.5C1 14.7761 1.22386 15 1.5 15L6 15H9H13.5C13.7761 15 14 14.7761 14 14.5C14 14.2239 13.7761 14 13.5 14H9V3Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 393 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M1.99988 6C1.44759 6 0.999877 6.44772 0.999877 7L0.999877 8C0.999877 8.55228 1.44759 9 1.99988 9L6.99988 9L6.99988 13.5C6.99988 13.7761 7.22374 14 7.49988 14C7.77602 14 7.99988 13.7761 7.99988 13.5L7.99988 9L12.9999 9C13.5522 9 13.9999 8.55228 13.9999 8L13.9999 7C13.9999 6.44772 13.5522 6 12.9999 6L7.99988 6L7.99988 1.5C7.99988 1.22386 7.77602 1 7.49988 1C7.22373 1 6.99988 1.22386 6.99988 1.5L6.99988 6L1.99988 6Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 613 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M6.99988 1C6.44759 1 5.99988 1.44772 5.99988 2V7H1.49988C1.22374 7 0.999878 7.22386 0.999878 7.5C0.999878 7.77614 1.22374 8 1.49988 8H5.99988V13C5.99988 13.5523 6.44759 14 6.99988 14H7.99988C8.55216 14 8.99988 13.5523 8.99988 13V8H13.4999C13.776 8 13.9999 7.77614 13.9999 7.5C13.9999 7.22386 13.776 7 13.4999 7H8.99988V2C8.99988 1.44772 8.55216 1 7.99988 1L6.99988 1Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 564 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M6 7.05002V4H9V7.05002L6 7.05002ZM5 7.05002H1.49919C1.25067 7.05002 1.04919 7.25149 1.04919 7.50002C1.04919 7.74855 1.25067 7.95002 1.49919 7.95002H5V11.25C5 11.6642 5.33579 12 5.75 12H9.25C9.66421 12 10 11.6642 10 11.25V7.95002H13.4992C13.7477 7.95002 13.9492 7.74855 13.9492 7.50002C13.9492 7.2515 13.7477 7.05002 13.4992 7.05002H10V3.75C10 3.33579 9.66421 3 9.25 3H5.75C5.33579 3 5 3.33579 5 3.75V7.05002ZM9 7.95002V11H6V7.95002L9 7.95002Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 639 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M6 11V4H9V11H6ZM5 3.75C5 3.33579 5.33579 3 5.75 3H9.25C9.66421 3 10 3.33579 10 3.75V11.25C10 11.6642 9.66421 12 9.25 12H5.75C5.33579 12 5 11.6642 5 11.25V3.75ZM1.49919 13.05C1.25067 13.05 1.04919 13.2515 1.04919 13.5C1.04919 13.7486 1.25067 13.95 1.49919 13.95L13.4992 13.95C13.7477 13.95 13.9492 13.7486 13.9492 13.5C13.9492 13.2515 13.7477 13.05 13.4992 13.05H1.49919Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 567 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M3.24988 2C2.55952 2 1.99988 2.55964 1.99988 3.25V11.75C1.99988 12.4404 2.55952 13 3.24988 13H5.74988C6.44023 13 6.99988 12.4404 6.99988 11.75V3.25C6.99988 2.55964 6.44023 2 5.74988 2H3.24988ZM2.99988 3.25C2.99988 3.11193 3.11181 3 3.24988 3H5.74988C5.88795 3 5.99988 3.11193 5.99988 3.25V11.75C5.99988 11.8881 5.88795 12 5.74988 12H3.24988C3.11181 12 2.99988 11.8881 2.99988 11.75V3.25ZM9.25 4C8.55964 4 8 4.55964 8 5.25V9.75C8 10.4404 8.55964 11 9.25 11H11.75C12.4404 11 13 10.4404 13 9.75V5.25C13 4.55964 12.4404 4 11.75 4H9.25Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 728 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M0.499995 0.999995C0.223855 0.999995 -5.58458e-07 1.22385 -5.46388e-07 1.49999L-2.18554e-08 13.4999C-9.78492e-09 13.776 0.223855 13.9999 0.499995 13.9999C0.776136 13.9999 0.999991 13.776 0.999991 13.4999L0.999991 8.99993L12 8.99993C12.5523 8.99993 13 8.55222 13 7.99993L13 6.99994C13 6.44766 12.5523 5.99995 12 5.99995L0.999991 5.99995L0.999991 1.49999C0.999991 1.22385 0.776135 0.999995 0.499995 0.999995Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 603 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M14.4999 1C14.2237 1 13.9999 1.22386 13.9999 1.5L13.9999 6L2.99988 6C2.44759 6 1.99988 6.44772 1.99988 7L1.99988 8C1.99988 8.55228 2.44759 9 2.99988 9L13.9999 9L13.9999 13.5C13.9999 13.7761 14.2237 14 14.4999 14C14.776 14 14.9999 13.7761 14.9999 13.5L14.9999 9L14.9999 6L14.9999 1.5C14.9999 1.22386 14.776 1 14.4999 1Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 515 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M1.49956 1.05002C1.25103 1.05002 1.04956 1.25149 1.04956 1.50002C1.04956 1.74855 1.25103 1.95002 1.49956 1.95002L13.4996 1.95002C13.7481 1.95002 13.9496 1.74855 13.9496 1.50002C13.9496 1.25149 13.7481 1.05002 13.4996 1.05002H1.49956ZM6 11V3.99999H9V11H6ZM5 3.74999C5 3.33578 5.33579 2.99999 5.75 2.99999H9.25C9.66421 2.99999 10 3.33578 10 3.74999V11.25C10 11.6642 9.66421 12 9.25 12H5.75C5.33579 12 5 11.6642 5 11.25V3.74999Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 622 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M1.04956 1.50002C1.04956 1.25149 1.25103 1.05002 1.49956 1.05002H13.4996C13.7481 1.05002 13.9496 1.25149 13.9496 1.50002C13.9496 1.74855 13.7481 1.95002 13.4996 1.95002L1.49956 1.95002C1.25103 1.95002 1.04956 1.74855 1.04956 1.50002ZM1.04966 13.5C1.04966 13.2515 1.25113 13.05 1.49966 13.05H13.4997C13.7482 13.05 13.9497 13.2515 13.9497 13.5C13.9497 13.7485 13.7482 13.95 13.4997 13.95L1.49966 13.95C1.25113 13.95 1.04966 13.7485 1.04966 13.5ZM6 11V3.99999H9V11H6ZM5 3.74999C5 3.33578 5.33579 2.99999 5.75 2.99999H9.25C9.66421 2.99999 10 3.33578 10 3.74999V11.25C10 11.6642 9.66421 12 9.25 12H5.75C5.33579 12 5 11.6642 5 11.25V3.74999Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 832 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M1.5 0C1.22386 0 1 0.223858 1 0.5C1 0.776142 1.22386 1 1.5 1H6V12C6 12.5523 6.44772 13 7 13H8C8.55228 13 9 12.5523 9 12V1H13.5C13.7761 1 14 0.776142 14 0.5C14 0.223858 13.7761 0 13.5 0H9H6H1.5Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 390 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M2 3.25C2 2.55964 2.55964 2 3.25 2L11.75 2C12.4404 2 13 2.55964 13 3.25L13 5.75C13 6.44036 12.4404 7 11.75 7L3.25 7C2.55964 7 2 6.44036 2 5.75L2 3.25ZM3.25 3C3.11193 3 3 3.11193 3 3.25L3 5.75C3 5.88807 3.11193 6 3.25 6L11.75 6C11.8881 6 12 5.88807 12 5.75L12 3.25C12 3.11193 11.8881 3 11.75 3L3.25 3ZM4 9.25C4 8.55964 4.55964 8 5.25 8L9.75 8C10.4404 8 11 8.55964 11 9.25L11 11.75C11 12.4404 10.4404 13 9.75 13L5.25 13C4.55964 13 4 12.4404 4 11.75L4 9.25Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 651 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M7.5 0.75L9.75 3H5.25L7.5 0.75ZM7.5 14.25L9.75 12H5.25L7.5 14.25ZM3 5.25L0.75 7.5L3 9.75V5.25ZM14.25 7.5L12 5.25V9.75L14.25 7.5Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 325 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M8.8914 2.1937C9.1158 2.35464 9.16725 2.66701 9.00631 2.89141L2.47388 12H13.5C13.7761 12 14 12.2239 14 12.5C14 12.7762 13.7761 13 13.5 13H1.5C1.31254 13 1.14082 12.8952 1.0552 12.7284C0.969578 12.5616 0.984438 12.361 1.09369 12.2086L8.19369 2.30862C8.35462 2.08422 8.667 2.03277 8.8914 2.1937ZM11.1 6.50001C11.1 6.22387 11.3238 6.00001 11.6 6.00001C11.8761 6.00001 12.1 6.22387 12.1 6.50001C12.1 6.77615 11.8761 7.00001 11.6 7.00001C11.3238 7.00001 11.1 6.77615 11.1 6.50001ZM10.4 4.00001C10.1239 4.00001 9.90003 4.22387 9.90003 4.50001C9.90003 4.77615 10.1239 5.00001 10.4 5.00001C10.6762 5.00001 10.9 4.77615 10.9 4.50001C10.9 4.22387 10.6762 4.00001 10.4 4.00001ZM12.1 8.50001C12.1 8.22387 12.3238 8.00001 12.6 8.00001C12.8761 8.00001 13.1 8.22387 13.1 8.50001C13.1 8.77615 12.8761 9.00001 12.6 9.00001C12.3238 9.00001 12.1 8.77615 12.1 8.50001ZM13.4 10C13.1239 10 12.9 10.2239 12.9 10.5C12.9 10.7761 13.1239 11 13.4 11C13.6762 11 13.9 10.7761 13.9 10.5C13.9 10.2239 13.6762 10 13.4 10Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M3.30902 1C2.93025 1 2.58398 1.214 2.41459 1.55279L1.05279 4.27639C1.01807 4.34582 1 4.42238 1 4.5V13C1 13.5523 1.44772 14 2 14H13C13.5523 14 14 13.5523 14 13V4.5C14 4.42238 13.9819 4.34582 13.9472 4.27639L12.5854 1.55281C12.416 1.21403 12.0698 1.00003 11.691 1.00003L7.5 1.00001L3.30902 1ZM3.30902 2L7 2.00001V4H2.30902L3.30902 2ZM8 4V2.00002L11.691 2.00003L12.691 4H8ZM7.5 5H13V13H2V5H7.5ZM5.5 7C5.22386 7 5 7.22386 5 7.5C5 7.77614 5.22386 8 5.5 8H9.5C9.77614 8 10 7.77614 10 7.5C10 7.22386 9.77614 7 9.5 7H5.5Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 710 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M11.3536 3.64644C11.5488 3.8417 11.5488 4.15828 11.3536 4.35354L4.70711 11L9 11C9.27614 11 9.5 11.2239 9.5 11.5C9.5 11.7761 9.27614 12 9 12L3.5 12C3.36739 12 3.24021 11.9473 3.14645 11.8536C3.05268 11.7598 3 11.6326 3 11.5L3 5.99999C3 5.72385 3.22386 5.49999 3.5 5.49999C3.77614 5.49999 4 5.72385 4 5.99999V10.2929L10.6464 3.64643C10.8417 3.45117 11.1583 3.45117 11.3536 3.64644Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 576 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M3.64645 3.64644C3.45118 3.8417 3.45118 4.15828 3.64645 4.35354L10.2929 11L6 11C5.72386 11 5.5 11.2239 5.5 11.5C5.5 11.7761 5.72386 12 6 12L11.5 12C11.6326 12 11.7598 11.9473 11.8536 11.8536C11.9473 11.7598 12 11.6326 12 11.5L12 5.99999C12 5.72385 11.7761 5.49999 11.5 5.49999C11.2239 5.49999 11 5.72385 11 5.99999V10.2929L4.35355 3.64643C4.15829 3.45117 3.84171 3.45117 3.64645 3.64644Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 584 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M7.5 2C7.77614 2 8 2.22386 8 2.5L8 11.2929L11.1464 8.14645C11.3417 7.95118 11.6583 7.95118 11.8536 8.14645C12.0488 8.34171 12.0488 8.65829 11.8536 8.85355L7.85355 12.8536C7.75979 12.9473 7.63261 13 7.5 13C7.36739 13 7.24021 12.9473 7.14645 12.8536L3.14645 8.85355C2.95118 8.65829 2.95118 8.34171 3.14645 8.14645C3.34171 7.95118 3.65829 7.95118 3.85355 8.14645L7 11.2929L7 2.5C7 2.22386 7.22386 2 7.5 2Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 599 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M6.85355 3.14645C7.04882 3.34171 7.04882 3.65829 6.85355 3.85355L3.70711 7H12.5C12.7761 7 13 7.22386 13 7.5C13 7.77614 12.7761 8 12.5 8H3.70711L6.85355 11.1464C7.04882 11.3417 7.04882 11.6583 6.85355 11.8536C6.65829 12.0488 6.34171 12.0488 6.14645 11.8536L2.14645 7.85355C1.95118 7.65829 1.95118 7.34171 2.14645 7.14645L6.14645 3.14645C6.34171 2.95118 6.65829 2.95118 6.85355 3.14645Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 581 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M8.14645 3.14645C8.34171 2.95118 8.65829 2.95118 8.85355 3.14645L12.8536 7.14645C13.0488 7.34171 13.0488 7.65829 12.8536 7.85355L8.85355 11.8536C8.65829 12.0488 8.34171 12.0488 8.14645 11.8536C7.95118 11.6583 7.95118 11.3417 8.14645 11.1464L11.2929 8H2.5C2.22386 8 2 7.77614 2 7.5C2 7.22386 2.22386 7 2.5 7H11.2929L8.14645 3.85355C7.95118 3.65829 7.95118 3.34171 8.14645 3.14645Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 576 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M11.3536 11.3536C11.5488 11.1583 11.5488 10.8417 11.3536 10.6465L4.70711 4L9 4C9.27614 4 9.5 3.77614 9.5 3.5C9.5 3.22386 9.27614 3 9 3L3.5 3C3.36739 3 3.24021 3.05268 3.14645 3.14645C3.05268 3.24022 3 3.36739 3 3.5L3 9.00001C3 9.27615 3.22386 9.50001 3.5 9.50001C3.77614 9.50001 4 9.27615 4 9.00001V4.70711L10.6464 11.3536C10.8417 11.5488 11.1583 11.5488 11.3536 11.3536Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 568 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M3.64645 11.3536C3.45118 11.1583 3.45118 10.8417 3.64645 10.6465L10.2929 4L6 4C5.72386 4 5.5 3.77614 5.5 3.5C5.5 3.22386 5.72386 3 6 3L11.5 3C11.6326 3 11.7598 3.05268 11.8536 3.14645C11.9473 3.24022 12 3.36739 12 3.5L12 9.00001C12 9.27615 11.7761 9.50001 11.5 9.50001C11.2239 9.50001 11 9.27615 11 9.00001V4.70711L4.35355 11.3536C4.15829 11.5488 3.84171 11.5488 3.64645 11.3536Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 576 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M7.14645 2.14645C7.34171 1.95118 7.65829 1.95118 7.85355 2.14645L11.8536 6.14645C12.0488 6.34171 12.0488 6.65829 11.8536 6.85355C11.6583 7.04882 11.3417 7.04882 11.1464 6.85355L8 3.70711L8 12.5C8 12.7761 7.77614 13 7.5 13C7.22386 13 7 12.7761 7 12.5L7 3.70711L3.85355 6.85355C3.65829 7.04882 3.34171 7.04882 3.14645 6.85355C2.95118 6.65829 2.95118 6.34171 3.14645 6.14645L7.14645 2.14645Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 585 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M2.5 2H12.5C12.7761 2 13 2.22386 13 2.5V12.5C13 12.7761 12.7761 13 12.5 13H2.5C2.22386 13 2 12.7761 2 12.5V2.5C2 2.22386 2.22386 2 2.5 2ZM1 2.5C1 1.67157 1.67157 1 2.5 1H12.5C13.3284 1 14 1.67157 14 2.5V12.5C14 13.3284 13.3284 14 12.5 14H2.5C1.67157 14 1 13.3284 1 12.5V2.5ZM7.5 4C7.77614 4 8 3.77614 8 3.5C8 3.22386 7.77614 3 7.5 3C7.22386 3 7 3.22386 7 3.5C7 3.77614 7.22386 4 7.5 4ZM8 5.5C8 5.77614 7.77614 6 7.5 6C7.22386 6 7 5.77614 7 5.5C7 5.22386 7.22386 5 7.5 5C7.77614 5 8 5.22386 8 5.5ZM7.5 8C7.77614 8 8 7.77614 8 7.5C8 7.22386 7.77614 7 7.5 7C7.22386 7 7 7.22386 7 7.5C7 7.77614 7.22386 8 7.5 8ZM10 7.5C10 7.77614 9.77614 8 9.5 8C9.22386 8 9 7.77614 9 7.5C9 7.22386 9.22386 7 9.5 7C9.77614 7 10 7.22386 10 7.5ZM11.5 8C11.7761 8 12 7.77614 12 7.5C12 7.22386 11.7761 7 11.5 7C11.2239 7 11 7.22386 11 7.5C11 7.77614 11.2239 8 11.5 8Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M0.877014 7.49988C0.877014 3.84219 3.84216 0.877045 7.49985 0.877045C11.1575 0.877045 14.1227 3.84219 14.1227 7.49988C14.1227 11.1575 11.1575 14.1227 7.49985 14.1227C3.84216 14.1227 0.877014 11.1575 0.877014 7.49988ZM7.49985 1.82704C4.36683 1.82704 1.82701 4.36686 1.82701 7.49988C1.82701 8.97196 2.38774 10.3131 3.30727 11.3213C4.19074 9.94119 5.73818 9.02499 7.50023 9.02499C9.26206 9.02499 10.8093 9.94097 11.6929 11.3208C12.6121 10.3127 13.1727 8.97172 13.1727 7.49988C13.1727 4.36686 10.6328 1.82704 7.49985 1.82704ZM10.9818 11.9787C10.2839 10.7795 8.9857 9.97499 7.50023 9.97499C6.01458 9.97499 4.71624 10.7797 4.01845 11.9791C4.97952 12.7272 6.18765 13.1727 7.49985 13.1727C8.81227 13.1727 10.0206 12.727 10.9818 11.9787ZM5.14999 6.50487C5.14999 5.207 6.20212 4.15487 7.49999 4.15487C8.79786 4.15487 9.84999 5.207 9.84999 6.50487C9.84999 7.80274 8.79786 8.85487 7.49999 8.85487C6.20212 8.85487 5.14999 7.80274 5.14999 6.50487ZM7.49999 5.10487C6.72679 5.10487 6.09999 5.73167 6.09999 6.50487C6.09999 7.27807 6.72679 7.90487 7.49999 7.90487C8.27319 7.90487 8.89999 7.27807 8.89999 6.50487C8.89999 5.73167 8.27319 5.10487 7.49999 5.10487Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M5 1C5 0.447715 5.44772 0 6 0H9C9.55228 0 10 0.447715 10 1V2H14C14.5523 2 15 2.44772 15 3V6C15 6.8888 14.6131 7.68734 14 8.23608V11.5C14 12.3284 13.3284 13 12.5 13H2.5C1.67157 13 1 12.3284 1 11.5V8.2359C0.38697 7.68721 0 6.88883 0 6V3C0 2.44772 0.447716 2 1 2H5V1ZM9 1V2H6V1H9ZM1 3H5H5.5H9.5H10H14V6C14 6.654 13.6866 7.23467 13.1997 7.6004C12.8655 7.85144 12.4508 8 12 8H8V7.5C8 7.22386 7.77614 7 7.5 7C7.22386 7 7 7.22386 7 7.5V8H3C2.5493 8 2.1346 7.85133 1.80029 7.60022C1.31335 7.23446 1 6.65396 1 6V3ZM7 9H3C2.64961 9 2.31292 8.93972 2 8.82905V11.5C2 11.7761 2.22386 12 2.5 12H12.5C12.7761 12 13 11.7761 13 11.5V8.82915C12.6871 8.93978 12.3504 9 12 9H8V9.5C8 9.77614 7.77614 10 7.5 10C7.22386 10 7 9.77614 7 9.5V9Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 915 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M3.5 6H11.5C12.3284 6 13 6.67157 13 7.5C13 8.32843 12.3284 9 11.5 9H3.5C2.67157 9 2 8.32843 2 7.5C2 6.67157 2.67157 6 3.5 6ZM1 7.5C1 6.11929 2.11929 5 3.5 5H11.5C12.8807 5 14 6.11929 14 7.5C14 8.88071 12.8807 10 11.5 10H3.5C2.11929 10 1 8.88071 1 7.5ZM4.5 7C4.22386 7 4 7.22386 4 7.5C4 7.77614 4.22386 8 4.5 8H10.5C10.7761 8 11 7.77614 11 7.5C11 7.22386 10.7761 7 10.5 7H4.5Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 572 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M11.5 1C11.7761 1 12 1.22386 12 1.5V13.5C12 13.7761 11.7761 14 11.5 14C11.2239 14 11 13.7761 11 13.5V1.5C11 1.22386 11.2239 1 11.5 1ZM9.5 3C9.77614 3 10 3.22386 10 3.5V13.5C10 13.7761 9.77614 14 9.5 14C9.22386 14 9 13.7761 9 13.5V3.5C9 3.22386 9.22386 3 9.5 3ZM13.5 3C13.7761 3 14 3.22386 14 3.5V13.5C14 13.7761 13.7761 14 13.5 14C13.2239 14 13 13.7761 13 13.5V3.5C13 3.22386 13.2239 3 13.5 3ZM5.5 4C5.77614 4 6 4.22386 6 4.5V13.5C6 13.7761 5.77614 14 5.5 14C5.22386 14 5 13.7761 5 13.5V4.5C5 4.22386 5.22386 4 5.5 4ZM1.5 5C1.77614 5 2 5.22386 2 5.5V13.5C2 13.7761 1.77614 14 1.5 14C1.22386 14 1 13.7761 1 13.5V5.5C1 5.22386 1.22386 5 1.5 5ZM7.5 5C7.77614 5 8 5.22386 8 5.5V13.5C8 13.7761 7.77614 14 7.5 14C7.22386 14 7 13.7761 7 13.5V5.5C7 5.22386 7.22386 5 7.5 5ZM3.5 7C3.77614 7 4 7.22386 4 7.5V13.5C4 13.7761 3.77614 14 3.5 14C3.22386 14 3 13.7761 3 13.5V7.5C3 7.22386 3.22386 7 3.5 7Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M8.60124 1.25086C8.60124 1.75459 8.26278 2.17927 7.80087 2.30989C10.1459 2.4647 12 4.41582 12 6.79999V10.25C12 11.0563 12.0329 11.7074 12.7236 12.0528C12.931 12.1565 13.0399 12.3892 12.9866 12.6149C12.9333 12.8406 12.7319 13 12.5 13H8.16144C8.36904 13.1832 8.49997 13.4513 8.49997 13.75C8.49997 14.3023 8.05226 14.75 7.49997 14.75C6.94769 14.75 6.49997 14.3023 6.49997 13.75C6.49997 13.4513 6.63091 13.1832 6.83851 13H2.49999C2.2681 13 2.06664 12.8406 2.01336 12.6149C1.96009 12.3892 2.06897 12.1565 2.27638 12.0528C2.96708 11.7074 2.99999 11.0563 2.99999 10.25V6.79999C2.99999 4.41537 4.85481 2.46396 7.20042 2.3098C6.73867 2.17908 6.40036 1.75448 6.40036 1.25086C6.40036 0.643104 6.89304 0.150421 7.5008 0.150421C8.10855 0.150421 8.60124 0.643104 8.60124 1.25086ZM7.49999 3.29999C5.56699 3.29999 3.99999 4.86699 3.99999 6.79999V10.25L4.00002 10.3009C4.0005 10.7463 4.00121 11.4084 3.69929 12H11.3007C10.9988 11.4084 10.9995 10.7463 11 10.3009L11 10.25V6.79999C11 4.86699 9.43299 3.29999 7.49999 3.29999Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M3 9C3 6.5 4.5 4.25 7.5 1.5C10.5 4.25 12 6.5 12 9C12 11.4853 9.98528 13.5 7.5 13.5C5.01472 13.5 3 11.4853 3 9ZM10.9524 8.30307C9.67347 7.82121 8.2879 8.46208 6.98956 9.06259C5.9327 9.55142 4.93365 10.0135 4.09695 9.82153C4.03357 9.55804 4 9.28294 4 9C4 7.11203 5.02686 5.27195 7.5 2.87357C9.66837 4.97639 10.725 6.65004 10.9524 8.30307Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 533 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M3.5 2C3.22386 2 3 2.22386 3 2.5V13.5C3 13.6818 3.09864 13.8492 3.25762 13.9373C3.41659 14.0254 3.61087 14.0203 3.765 13.924L7.5 11.5896L11.235 13.924C11.3891 14.0203 11.5834 14.0254 11.7424 13.9373C11.9014 13.8492 12 13.6818 12 13.5V2.5C12 2.22386 11.7761 2 11.5 2H3.5Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 467 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M3 2.5C3 2.22386 3.22386 2 3.5 2H11.5C11.7761 2 12 2.22386 12 2.5V13.5C12 13.6818 11.9014 13.8492 11.7424 13.9373C11.5834 14.0254 11.3891 14.0203 11.235 13.924L7.5 11.5896L3.765 13.924C3.61087 14.0203 3.41659 14.0254 3.25762 13.9373C3.09864 13.8492 3 13.6818 3 13.5V2.5ZM4 3V12.5979L6.97 10.7416C7.29427 10.539 7.70573 10.539 8.03 10.7416L11 12.5979V3H4Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 551 B

View File

@@ -0,0 +1,17 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M0.25 1C0.25 0.585786 0.585786 0.25 1 0.25H14C14.4142 0.25 14.75 0.585786 14.75 1V14C14.75 14.4142 14.4142 14.75 14 14.75H1C0.585786 14.75 0.25 14.4142 0.25 14V1ZM1.75 1.75V13.25H13.25V1.75H1.75Z"
fill="currentColor"
/>
<rect x="7" y="5" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="3" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="7" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="5" y="7" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="3" y="7" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="9" y="7" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="11" y="7" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="9" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="11" width="1" height="1" rx=".5" fill="currentColor" />
</svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -0,0 +1,29 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M1 13.25L14 13.25V14.75L1 14.75V13.25Z" fill="currentColor" />
<rect x="7" y="5" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="5" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="3" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="3" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="7" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="1" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="7" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="1" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="5" y="7" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="5" y="1" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="3" y="7" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="3" y="1" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="9" y="7" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="9" y="1" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="11" y="7" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="11" y="1" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="9" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="9" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="11" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="11" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="5" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="3" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="7" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="1" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="9" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="11" width="1" height="1" rx=".5" fill="currentColor" />
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M0 7.5C0 7.22386 0.223858 7 0.5 7H3C3.27614 7 3.5 7.22386 3.5 7.5C3.5 7.77614 3.27614 8 3 8H0.5C0.223858 8 0 7.77614 0 7.5ZM5.75 7.5C5.75 7.22386 5.97386 7 6.25 7H8.75C9.02614 7 9.25 7.22386 9.25 7.5C9.25 7.77614 9.02614 8 8.75 8H6.25C5.97386 8 5.75 7.77614 5.75 7.5ZM12 7C11.7239 7 11.5 7.22386 11.5 7.5C11.5 7.77614 11.7239 8 12 8H14.5C14.7761 8 15 7.77614 15 7.5C15 7.22386 14.7761 7 14.5 7H12Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 594 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M1.5 6.625C1.01675 6.625 0.625 7.01675 0.625 7.5C0.625 7.98325 1.01675 8.375 1.5 8.375C1.98325 8.375 2.375 7.98325 2.375 7.5C2.375 7.01675 1.98325 6.625 1.5 6.625ZM5.5 6.625C5.01675 6.625 4.625 7.01675 4.625 7.5C4.625 7.98325 5.01675 8.375 5.5 8.375C5.98325 8.375 6.375 7.98325 6.375 7.5C6.375 7.01675 5.98325 6.625 5.5 6.625ZM9.5 6.625C9.01675 6.625 8.625 7.01675 8.625 7.5C8.625 7.98325 9.01675 8.375 9.5 8.375C9.98325 8.375 10.375 7.98325 10.375 7.5C10.375 7.01675 9.98325 6.625 9.5 6.625ZM12.625 7.5C12.625 7.01675 13.0168 6.625 13.5 6.625C13.9832 6.625 14.375 7.01675 14.375 7.5C14.375 7.98325 13.9832 8.375 13.5 8.375C13.0168 8.375 12.625 7.98325 12.625 7.5Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 861 B

View File

@@ -0,0 +1,29 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.75 1L1.75 14L0.249999 14L0.25 1L1.75 1Z" fill="currentColor" />
<rect x="10" y="7" width="1" height="1" rx=".5" transform="rotate(90 10 7)" fill="currentColor" />
<rect x="10" y="13" width="1" height="1" rx=".5" transform="rotate(90 10 13)" fill="currentColor" />
<rect x="12" y="7" width="1" height="1" rx=".5" transform="rotate(90 12 7)" fill="currentColor" />
<rect x="12" y="13" width="1" height="1" rx=".5" transform="rotate(90 12 13)" fill="currentColor" />
<rect x="8" y="7" width="1" height="1" rx=".5" transform="rotate(90 8 7)" fill="currentColor" />
<rect x="14" y="7" width="1" height="1" rx=".5" transform="rotate(90 14 7)" fill="currentColor" />
<rect x="8" y="13" width="1" height="1" rx=".5" transform="rotate(90 8 13)" fill="currentColor" />
<rect x="14" y="13" width="1" height="1" rx=".5" transform="rotate(90 14 13)" fill="currentColor" />
<rect x="8" y="5" width="1" height="1" rx=".5" transform="rotate(90 8 5)" fill="currentColor" />
<rect x="14" y="5" width="1" height="1" rx=".5" transform="rotate(90 14 5)" fill="currentColor" />
<rect x="8" y="3" width="1" height="1" rx=".5" transform="rotate(90 8 3)" fill="currentColor" />
<rect x="14" y="3" width="1" height="1" rx=".5" transform="rotate(90 14 3)" fill="currentColor" />
<rect x="8" y="9" width="1" height="1" rx=".5" transform="rotate(90 8 9)" fill="currentColor" />
<rect x="14" y="9" width="1" height="1" rx=".5" transform="rotate(90 14 9)" fill="currentColor" />
<rect x="8" y="11" width="1" height="1" rx=".5" transform="rotate(90 8 11)" fill="currentColor" />
<rect x="14" y="11" width="1" height="1" rx=".5" transform="rotate(90 14 11)" fill="currentColor" />
<rect x="6" y="7" width="1" height="1" rx=".5" transform="rotate(90 6 7)" fill="currentColor" />
<rect x="6" y="13" width="1" height="1" rx=".5" transform="rotate(90 6 13)" fill="currentColor" />
<rect x="4" y="7" width="1" height="1" rx=".5" transform="rotate(90 4 7)" fill="currentColor" />
<rect x="4" y="13" width="1" height="1" rx=".5" transform="rotate(90 4 13)" fill="currentColor" />
<rect x="10" y="1" width="1" height="1" rx=".5" transform="rotate(90 10 1)" fill="currentColor" />
<rect x="12" y="1" width="1" height="1" rx=".5" transform="rotate(90 12 1)" fill="currentColor" />
<rect x="8" y="1" width="1" height="1" rx=".5" transform="rotate(90 8 1)" fill="currentColor" />
<rect x="14" y="1" width="1" height="1" rx=".5" transform="rotate(90 14 1)" fill="currentColor" />
<rect x="6" y="1" width="1" height="1" rx=".5" transform="rotate(90 6 1)" fill="currentColor" />
<rect x="4" y="1" width="1" height="1" rx=".5" transform="rotate(90 4 1)" fill="currentColor" />
</svg>

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

@@ -0,0 +1,35 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="7" y="5.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="5.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="3.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="3.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="13.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="1.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="13.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="1.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="5" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="5" y="13.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="5" y="1.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="3" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="3" y="13.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="3" y="1.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="9" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="9" y="13.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="9" y="1.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="11" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="11" y="13.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="11" y="1.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="9.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="9.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="11.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="11.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="5.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="3.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="13.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="1.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="9.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="11.025" width="1" height="1" rx=".5" fill="currentColor" />
</svg>

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@@ -0,0 +1,29 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M13.25 1L13.25 14L14.75 14L14.75 1L13.25 1Z" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 5 7)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 5 13)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 3 7)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 3 13)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 7 7)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 1 7)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 7 13)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 1 13)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 7 5)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 1 5)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 7 3)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 1 3)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 7 9)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 1 9)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 7 11)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 1 11)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 9 7)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 9 13)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 11 7)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 11 13)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 5 1)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 3 1)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 7 1)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 1 1)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 9 1)" fill="currentColor" />
<rect width="1" height="1" rx=".5" transform="matrix(0 1 1 0 11 1)" fill="currentColor" />
</svg>

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M1.25 7.5C1.25 7.22386 1.47386 7 1.75 7H13.25C13.5261 7 13.75 7.22386 13.75 7.5C13.75 7.77614 13.5261 8 13.25 8H1.75C1.47386 8 1.25 7.77614 1.25 7.5Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 346 B

View File

@@ -0,0 +1,21 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="7" y="5.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="3.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="13.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="1.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="13" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="5" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="3" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="9" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="11" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="9.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="7" y="11.025" width="1" height="1" rx=".5" fill="currentColor" />
<rect x="1" y="7.025" width="1" height="1" rx=".5" fill="currentColor" />
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M1 1.49994C1 1.2238 1.22386 0.999939 1.5 0.999939H6V1.99994H2V5.99994H1V1.49994ZM13 1.99994H9V0.999939H13.5C13.7761 0.999939 14 1.2238 14 1.49994V5.99994H13V1.99994ZM1 13.4999V8.99994H2V12.9999H6V13.9999H1.5C1.22386 13.9999 1 13.7761 1 13.4999ZM13 12.9999V8.99994H14V13.4999C14 13.7761 13.7761 13.9999 13.5 13.9999H9.5V12.9999H13Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M1.5 3C1.22386 3 1 3.22386 1 3.5C1 3.77614 1.22386 4 1.5 4H13.5C13.7761 4 14 3.77614 14 3.5C14 3.22386 13.7761 3 13.5 3H1.5ZM1 7.5C1 7.22386 1.22386 7 1.5 7H3.5C3.77614 7 4 7.22386 4 7.5C4 7.77614 3.77614 8 3.5 8H1.5C1.22386 8 1 7.77614 1 7.5ZM1 11.5C1 11.2239 1.22386 11 1.5 11C1.77614 11 2 11.2239 2 11.5C2 11.7761 1.77614 12 1.5 12C1.22386 12 1 11.7761 1 11.5ZM3 11.5C3 11.2239 3.22386 11 3.5 11C3.77614 11 4 11.2239 4 11.5C4 11.7761 3.77614 12 3.5 12C3.22386 12 3 11.7761 3 11.5ZM5.5 11C5.22386 11 5 11.2239 5 11.5C5 11.7761 5.22386 12 5.5 12C5.77614 12 6 11.7761 6 11.5C6 11.2239 5.77614 11 5.5 11ZM7 11.5C7 11.2239 7.22386 11 7.5 11C7.77614 11 8 11.2239 8 11.5C8 11.7761 7.77614 12 7.5 12C7.22386 12 7 11.7761 7 11.5ZM9.5 11C9.22386 11 9 11.2239 9 11.5C9 11.7761 9.22386 12 9.5 12C9.77614 12 10 11.7761 10 11.5C10 11.2239 9.77614 11 9.5 11ZM11 11.5C11 11.2239 11.2239 11 11.5 11C11.7761 11 12 11.2239 12 11.5C12 11.7761 11.7761 12 11.5 12C11.2239 12 11 11.7761 11 11.5ZM13.5 11C13.2239 11 13 11.2239 13 11.5C13 11.7761 13.2239 12 13.5 12C13.7761 12 14 11.7761 14 11.5C14 11.2239 13.7761 11 13.5 11ZM6.5 7C6.22386 7 6 7.22386 6 7.5C6 7.77614 6.22386 8 6.5 8H8.5C8.77614 8 9 7.77614 9 7.5C9 7.22386 8.77614 7 8.5 7H6.5ZM11 7.5C11 7.22386 11.2239 7 11.5 7H13.5C13.7761 7 14 7.22386 14 7.5C14 7.77614 13.7761 8 13.5 8H11.5C11.2239 8 11 7.77614 11 7.5Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1,29 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M14 1.75L1 1.75L1 0.249999L14 0.25L14 1.75Z" fill="currentColor" />
<rect x="8" y="10" width="1" height="1" rx=".5" transform="rotate(-180 8 10)" fill="currentColor" />
<rect x="2" y="10" width="1" height="1" rx=".5" transform="rotate(-180 2 10)" fill="currentColor" />
<rect x="8" y="12" width="1" height="1" rx=".5" transform="rotate(-180 8 12)" fill="currentColor" />
<rect x="2" y="12" width="1" height="1" rx=".5" transform="rotate(-180 2 12)" fill="currentColor" />
<rect x="8" y="8" width="1" height="1" rx=".5" transform="rotate(-180 8 8)" fill="currentColor" />
<rect x="8" y="14" width="1" height="1" rx=".5" transform="rotate(-180 8 14)" fill="currentColor" />
<rect x="2" y="8" width="1" height="1" rx=".5" transform="rotate(-180 2 8)" fill="currentColor" />
<rect x="2" y="14" width="1" height="1" rx=".5" transform="rotate(-180 2 14)" fill="currentColor" />
<rect x="10" y="8" width="1" height="1" rx=".5" transform="rotate(-180 10 8)" fill="currentColor" />
<rect x="10" y="14" width="1" height="1" rx=".5" transform="rotate(-180 10 14)" fill="currentColor" />
<rect x="12" y="8" width="1" height="1" rx=".5" transform="rotate(-180 12 8)" fill="currentColor" />
<rect x="12" y="14" width="1" height="1" rx=".5" transform="rotate(-180 12 14)" fill="currentColor" />
<rect x="6" y="8" width="1" height="1" rx=".5" transform="rotate(-180 6 8)" fill="currentColor" />
<rect x="6" y="14" width="1" height="1" rx=".5" transform="rotate(-180 6 14)" fill="currentColor" />
<rect x="4" y="8" width="1" height="1" rx=".5" transform="rotate(-180 4 8)" fill="currentColor" />
<rect x="4" y="14" width="1" height="1" rx=".5" transform="rotate(-180 4 14)" fill="currentColor" />
<rect x="8" y="6" width="1" height="1" rx=".5" transform="rotate(-180 8 6)" fill="currentColor" />
<rect x="2" y="6" width="1" height="1" rx=".5" transform="rotate(-180 2 6)" fill="currentColor" />
<rect x="8" y="4" width="1" height="1" rx=".5" transform="rotate(-180 8 4)" fill="currentColor" />
<rect x="2" y="4" width="1" height="1" rx=".5" transform="rotate(-180 2 4)" fill="currentColor" />
<rect x="14" y="10" width="1" height="1" rx=".5" transform="rotate(-180 14 10)" fill="currentColor" />
<rect x="14" y="12" width="1" height="1" rx=".5" transform="rotate(-180 14 12)" fill="currentColor" />
<rect x="14" y="8" width="1" height="1" rx=".5" transform="rotate(-180 14 8)" fill="currentColor" />
<rect x="14" y="14" width="1" height="1" rx=".5" transform="rotate(-180 14 14)" fill="currentColor" />
<rect x="14" y="6" width="1" height="1" rx=".5" transform="rotate(-180 14 6)" fill="currentColor" />
<rect x="14" y="4" width="1" height="1" rx=".5" transform="rotate(-180 14 4)" fill="currentColor" />
</svg>

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M1 3H14V4H1V3ZM1 6H14V8H1V6ZM14 10.25H1V12.75H14V10.25Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 252 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M1.99998 0.999976C1.44769 0.999976 0.999976 1.44769 0.999976 1.99998V13C0.999976 13.5523 1.44769 14 1.99998 14H13C13.5523 14 14 13.5523 14 13V1.99998C14 1.44769 13.5523 0.999976 13 0.999976H1.99998ZM1.99998 1.99998L13 1.99998V13H1.99998V1.99998ZM4.49996 3.99996C4.22382 3.99996 3.99996 4.22382 3.99996 4.49996V10.5C3.99996 10.7761 4.22382 11 4.49996 11H10.5C10.7761 11 11 10.7761 11 10.5V4.49996C11 4.22382 10.7761 3.99996 10.5 3.99996H4.49996ZM4.99996 9.99996V4.99996H9.99996V9.99996H4.99996Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 690 B

View File

@@ -0,0 +1,8 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M12.5 2H2.5C2.22386 2 2 2.22386 2 2.5V12.5C2 12.7761 2.22386 13 2.5 13H12.5C12.7761 13 13 12.7761 13 12.5V2.5C13 2.22386 12.7761 2 12.5 2ZM2.5 1C1.67157 1 1 1.67157 1 2.5V12.5C1 13.3284 1.67157 14 2.5 14H12.5C13.3284 14 14 13.3284 14 12.5V2.5C14 1.67157 13.3284 1 12.5 1H2.5Z"
fill="currentColor"
/>
</svg>

After

Width:  |  Height:  |  Size: 472 B

Some files were not shown because too many files have changed in this diff Show More