Code at the speed of thought – Zed is a high-performance, multiplayer code editor from the creators of Atom and Tree-sitter.
Go to file
Conrad Irwin bffde43c12
Improve vim undo (#9317)
The important change here is to ensure that undo never lands you in
visual mode; but we also take care to restore the selection the same way
vim does (visual line goes to beginning of line, visual block to the top
left, etc.).

To help make this behaviour feel right we also group any deletions that
started insert mode with the first text inserted.

Fixes: #7521

Release Notes:

- vim: Improved undo. It will now restore you to normal mode in the same
position as vim, and group deletions caused by `c` or `s` with the
concomitant insert.
([#7521](https://github.com/zed-industries/zed/issues/7521)).
2024-03-13 23:12:12 -06:00
.cargo Enable tokio-console (#8897) 2024-03-05 10:56:14 -07:00
.config tests: Test 'db' package sequentially (#2654) 2023-06-28 15:00:43 +02:00
.github Provide wasm extensions with APIs needed for using pre-installed LSP binaries (#9085) 2024-03-08 17:18:06 -05:00
.zed Ensure more Zed files are formatted uniformly (#8505) 2024-02-27 23:25:36 +02:00
assets Improve vim undo (#9317) 2024-03-13 23:12:12 -06:00
crates Improve vim undo (#9317) 2024-03-13 23:12:12 -06:00
docs Add a setting for custom associations between languages and files (#9290) 2024-03-13 10:23:30 -07:00
extensions Provide wasm extensions with APIs needed for using pre-installed LSP binaries (#9085) 2024-03-08 17:18:06 -05:00
script fix: vulkan dependencies in script/linux (#9116) 2024-03-11 08:29:06 -07:00
tooling/xtask Add rs-notify implementation of fs::watch (#9040) 2024-03-08 22:18:44 -08:00
.dockerignore Add serialized versions of themes (#6885) 2024-01-27 13:35:43 -05:00
.gitattributes Prevent GitHub from displaying comments within JSON files as errors (#7043) 2024-01-29 23:11:25 -05:00
.gitignore windows: Add file dialog using IFileOpenDialog (#8919) 2024-03-08 20:07:48 -08:00
.gitmodules WIP: start on live_kit_server 2022-10-17 09:59:16 +02:00
.mailmap Update .mailmap (#7871) 2024-02-15 18:35:43 -05:00
Cargo.lock Windows: impl WindowsDisplay (#9287) 2024-03-13 13:08:11 -07:00
Cargo.toml windows: Better keyboard input support (#9180) 2024-03-13 12:10:22 -07:00
CODE_OF_CONDUCT.md Add CODE_OF_CONDUCT.md (#4239) 2024-01-23 22:31:39 -05:00
CONTRIBUTING.md Style crate names in CONTRIBUTING.md (#6939) 2024-01-28 11:07:37 -05:00
debug.plist WIP 2023-12-14 09:25:14 -07:00
docker-compose.sql Add config files for running Postgres inside Docker Compose (#3637) 2023-12-13 17:25:07 -05:00
docker-compose.yml Add LiveKit server to Docker Compose (#7907) 2024-02-16 10:49:48 -05:00
Dockerfile add a script to get a flamegraph of collab in production (#8972) 2024-03-06 16:39:48 -07:00
LICENSE-AGPL chore: Add crate licenses. (#4158) 2024-01-23 16:56:22 +01:00
LICENSE-APACHE chore: Add crate licenses. (#4158) 2024-01-23 16:56:22 +01:00
LICENSE-GPL Licenses: change license fields in Cargo.toml to AGPL-3.0-or-later. (#5535) 2024-01-27 13:51:16 +01:00
livekit.yaml Add LiveKit server to Docker Compose (#7907) 2024-02-16 10:49:48 -05:00
Procfile Make collab quieter on startup (#8685) 2024-03-01 13:39:13 -07:00
README.md docs: Move Linux tracking issue (#9130) 2024-03-11 10:08:14 +02:00
rust-toolchain.toml chore: Bump Rust version to 1.76 (#7592) 2024-02-09 10:45:39 +02:00
typos.toml Impl drag-drop action for Windows (#8959) 2024-03-07 15:59:48 -08:00

Zed

CI

Welcome to Zed, a high-performance, multiplayer code editor from the creators of Atom and Tree-sitter.

Installation

You can download Zed today for macOS (v10.15+).

Support for additional platforms is on our roadmap:

For macOS users, you can also install Zed from Homebrew:

brew install zed

Developing Zed

Contributing

See CONTRIBUTING.md for ways you can contribute to Zed.

Licensing

License information for third party dependencies must be correctly provided for CI to pass.

We use cargo-about to automatically comply with open source licenses. If CI is failing, check the following:

  • Is it showing a no license specified error for a crate you've created? If so, add publish = false under [package] in your crate's Cargo.toml.
  • Is the error failed to satisfy license requirements for a dependency? If so, first determine what license the project has and whether this system is sufficient to comply with this license's requirements. If you're unsure, ask a lawyer. Once you've verified that this system is acceptable add the license's SPDX identifier to the accepted array in script/licenses/zed-licenses.toml.
  • Is cargo-about unable to find the license for a dependency? If so, add a clarification field at the end of script/licenses/zed-licenses.toml, as specified in the cargo-about book.