Skip to content

Releases: zed-industries/zed

v0.8.0

22 Nov 22:38
Compare
Choose a tag to compare

Zed now displays detailed diagnostic messages directly in the editor. Because errors in Rust are complex and can refer to multiple lines of code, we display all diagnostics related to an error below their respective lines, aligned with the underlined content. To reveal the next diagnostic in the buffer, hit F8.

v0.7

08 Nov 16:07
Compare
Choose a tag to compare

Zed now uses rust-analyzer to underline errors in rust code. We've added a status bar that shows the cursor's position and the first line of messages for errors under the cursor. We'll be following up with a UI for displaying full individual errors within the buffer in an intuitive way.

We also fixed a bug where the app would hang when hovering on tabs with split panes.

Screen Shot 2021-11-03 at 2 24 02 PM

v0.6

21 Oct 07:21
76774d6
Compare
Choose a tag to compare

Zed now performs auto-indent in Rust files based on the syntax tree. Future improvements to Tree-sitter's error recovery will improve the experience, but it's already pretty good for most real-world editing scenarios.

v0.5

08 Oct 13:19
a0c8b60
Compare
Choose a tag to compare

Zed now automatically inserts matching brackets when editing Rust. When typing a closing bracket on top of one that was auto-inserted, Zed automatically skips it. We still have work to do around deleting matching brackets.

autoclose

v0.4

05 Oct 15:15
Compare
Choose a tag to compare

Zed now has a project panel. For now it's pretty basic. We'll add more features in a second pass later.

v0.3.1

23 Sep 21:29
d2192fd
Compare
Choose a tag to compare
  • Sped up the login process
  • Sped up the process of starting to share a directory
  • Changed word-boundary cursor movement commands to be more consistent with other text editors (#169)
  • Fixed a bug where extra characters were inserted when pasting non-ascii text (#156)
  • Fixed a crash when typing while dragging a selection with the mouse (#155)

v0.3

22 Sep 15:52
796139e
Compare
Choose a tag to compare

We now have a new UI for initiating collaboration.

Screen Shot 2021-09-22 at 17 05 08

To grant other users access to a source tree, you'll need to create a .zed.toml file in the root that lists their GitHub usernames under the collaborators key:

collaborators = ["nathansobo", "as-cii", "maxbrunsfeld"]

You'll then need to authenticate by clicking the avatar icon in the upper right corner of the window. Once you do this, anyone listed as a collaborator in any of your open folders will see you in the people panel.

To start sharing, open your people panel and click the folder you want to share. To join another user's shared folder, simply click it in the people panel. Your avatar will then appear next to it and you'll be able to open files from the remote folder.

Any user you add to the collaborators list will be granted access to download Zed from https://zed.dev if they don't have access already. For now, we only honor the contents of the .zed.toml file when the folder is first opened in Zed. We'll follow up with a release that allows you to change the collaborators on the fly.

v0.2.2

20 Sep 16:31
edfed00
Compare
Choose a tag to compare
  • Only the local cursor blinks when collaborating
  • Apply syntax highlighting to new files when saved
  • Fix a bug that could cause Zed to hang when collaborating

v0.2.1

15 Sep 19:02
Compare
Choose a tag to compare
  • Sign in status is now displayed in the titlebar
  • You now can click the signed out icon in the titlebar to authenticate
  • Connection status is now displayed in the titlebar
  • Fixed a panic that could occur during momentary connection loss
  • Improved logging of panics

v0.2

13 Sep 19:14
Compare
Choose a tag to compare

With 0.2, Zed has matured to the point where we're using it regularly to write prose, and the dogfood is tasting pretty good. We knew Zed would be fast and responsive, but it's hard to understand the difference until you experience it for yourself. We can't wait to start coding in this thing!

Zed's 3 themes: Light, Dark and Black

Here's an overview of what we've added since 0.1.

Collaborative editing

You can now invite guests into any worktree you open in Zed and collaboratively edit text. We're still building out the UX around sharing and joining, but in the meantime, it's based on sharing links.

To try it out, open a folder or file in Zed and select Zed > Share from the application menu. You'll be directed to the browser to authenticate, then a link will be placed on your clipboard. Someone else can then select Zed > Join with that link on their clipboard in order to join you. They can open, edit, and save any file in the tree.

Collaboration should feel fast and stable, but for now, the experience is still pretty barebones. In Zed 0.3, we'll be replacing the link sharing workflow with a "People Panel" where you can see which of your teammates are online and start collaborating directly from within the application. We'll also be adding the ability to see which collaborators are present and follow collaborators as they move their cursor within and between files.

Chat

Our goal with Zed is to move engineering conversations closer to code, and the heart of this experience is a code-aware chat panel embedded directly into the editor. Imagine you're a new engineer on a codebase. You encounter some code that you don't understand and jump directly into the #questions channel and ask about it. Two minutes later a seasoned engineer sees your question and clicks it to jump directly to that location in your copy of the code where you can both converse and edit.

For now, the experience is very basic. You can select a channel, send and receive messages, and load from history as you scroll up. We're planning to link messages to code locations in Zed 0.3. You can't yet create your own channels, but we've added everyone to a channel named #zed-insiders so you can play with it.

Design

Zed's UI is now taking shape thanks to the design work of our new teammate Nate Butler. Our goal with Zed's design is to maximize signal and minimize noise, keeping everything as clean and simple as possible. Of course we want Zed to look good, but the content being edited should always be the main focus.

We've implemented a data-driven theming system that has allowed Nate to begin establishing a design system for Zed. It has also made it possible for him to develop three distinct color themes for Zed that can be switched at runtime: Dark, Black, and Light.

To toggle the theme selector, type cmd-k cmd-t.

Soft wrap

Soft-wrapping is essential for multi-line messages in the chat UI and a reasonable experience writing prose. It may seem simple on the surface, but it's surprisingly complex to implement correctly and even harder to make performant. We're proud of our implementation on both fronts.

We used randomized tests to ensure correctness in even the edgiest of edge cases, and we move work to the background if it ever blocks the main thread for longer than 1ms. Typical files should re-wrap instantaneously when the editor is resized or the font size changes. When editing a 25MiB JSON file, editing feels instant, and the app remains fluid and responsive when resizing thanks to our ability to move blocking work to the background. When you load the same file in VS Code, they refuse to wrap it at all.