What an abysmal series of top comments. These guys created a phenomenal product using novel technology, which will only continue to improve. Great work to the Zed team.
Congrats to the Zed team for building the best modern editor I have ever used. I subscribe to the monthly plan just to give you guys the funding you need, even if my funding is a tiny drop in the bucket. I always wanted a feature rich alternative to Sublime Text that can run anywhere and do basically anything I need from it. I've use JetBrains IDEs for years (been subscribed annually since 2017), but since Zed I havent really opened any of those IDEs in a long time, other than maybe Rider but that's due to C# nuances I needed to work with.
This. I tried Zed for an entire month, but this "search thing" drove me nuts. It is also slow. If you work in a large project search is absolutely essential. Too bad.. Back to Visual Studio Code.
Whereas I'm not a great fan of modals for anything where I'd like to refer back to what I'm working on. I guess I'd just prefer some tabs to open as a split by default and close with esc, maybe call them something like "ephemeral tabs"? Basically, steal some ideas from emacs.
I love the search in zed. If it was up to me it would open a new tab on every search rather than reusing the same tab, so that I didn't have to redo past searches.
The multibuffer result is so nice for "hands-on" search and replace.
> Sometimes I just want to have a quick glance at some code and close the search using escape.
How else are you going to have “a quick glance at code” *across* project files without using a new view for that? It sounds like you’re describing something impossible.
Zed’s across files search solves this in a similar way as other tools. Except that in zed you can also edit the code where your search results show up. Zed also has within file search.
yeah its quite silly they decided to mess around with this universally standard behaviour. The search is the reason why i always end up going back to other vs code based IDEs for real work. I open zed for perf reasons and something quick.
Also now they've introduced this "agent first" layout which i cannot undo. They're strength is in perf, idk why try to reinvent the wheel w.r.t DX.
I really want to like Zed because they've clearly put so much work into it, but so far I've been sticking with Sublime. I have several large PHP projects that were started in the 2010-2020 era, and Zed will highlight and complain about all sorts of minor things that were standard PHP fare at the time: functions without return types, for example. My code (which works fine) looks like an ocean of red when I view it with Zed, and turning all those warnings off is not trivial.
For each kind of warning, I wish there was a button that said "don't warn me again about issues like this one in this project." Then I could keep the interesting warnings (like undeclared variable) and ditch the ridiculous ones.
Coming from Sublime, I'd never even heard of a Language Server when I first tried Zed. As I recall, disabling particular kinds of warnings required copy-pasting some pretty exotic incantations into my project config. All of it was poorly documented, and it felt like I was doing something nobody expected me to do. Instead, I should have been able to mouse over a particular warning and say "don't warn me again about things like this", at which point Zed should edit the project config for me.
that does sound like a pretty nice ui idea to add to code actions (command + .), it already lets you one-click add an ignore comment iirc so probably not too hard to wire a global per-project option
however, i think LSP or integrated linters/typecheckers have been standard fare in editors for a while now (zed does seem to have a lot more set up by default, but i like the sane defaults most of the time). The "correct" solution would be to configure whatever lsp zed is running for the project the way you want, and reap the benefits even outside of zed. for php the tools are listed here: https://zed.dev/docs/languages/php the main one seems to be Phpactor and you should be able to configure it globally or per project https://phpactor.readthedocs.io/en/master/usage/configuratio...
but i understand the frustration, sometimes i try to navigate an ancient python codebase and it really is a sea of red
Well, PHPStorm (and the other JetBrains IDEs) does it this way. You can disable a certain "inspection" globally, per project, per file, per method or just for one occurence - the last three work by inserting annotations into the code. Then again, PHPStorm costs money (not just if you want AI assistance), and is based on (drum roll) Java technology (although JetBrains don't advertise this fact a lot nowadays).
While this comment is overly general (some major editors ship without LSP support built in; many more do not have a sane configuration out-of-the-box), it is useful to learn about them and how your editor of choice integrates with them.
The landscape isn't generally intuitive, unfortunately, and while it's getting better, understanding the differences and interop places between LSP, Treesitter, DAP, your editor, and the underlying language-specific tooling can be a big, confusing time hog.
That said, and to be clear: LSP's been a huge boon for me. I used a minimal, kinda-broken configuration for a while with Python, then rebuilt the whole thing when I switched to Rust for work, and holy hell, this thing's awesome.
I love Sublime, but I don't want to pay to upgrade from 3 to whatever version it is now, Zed is everything I wanted Sublime to be. Honestly, I wanted VS Code but fully native, and I feel like that's what I'm getting from Zed.
I feel like some people will be put off by all the "AI" mentioned by Zed, but you're sleeping on a top tier editor where you can just ignore the AI stuff if you don't want it. It's very high quality, and probably the reason I wont be renewing next year for JetBrains, unless JetBrains does something impressive, I thought by now they'd have a more native feeling IDE that handles most / any language instead of so many separate ones.
VS Code has gotten so bloated over the years. The gold standard of ST has spoiled me with simpler editors. Zed is the first time I felt like someone finally built an editor that is modern and has a rich set of features.
> I love Sublime, but I don't want to pay to upgrade from 3 to whatever version it is now
I don't know what your financial situation is, but given that the upgrade is an $80 one off payment (a new license is $99), that it's a per-user license (not per-machine), and that there were 8 years between Sublime Text 3 (2013) and Sublime Text 4 (2021) (only major versions require a new license), I personally think it's very reasonably priced.
Agreed-- Sublime is asking $99 right now, which is quite reasonable for something that you're going to use for hours a day in your professional work. Somebody gave many years of their life to make that tool the best it could be, and as a well-paid professional, I feel it's more than fair. In other high-end professions (like the legal field), I've heard of law firms paying a lot more than $99 for certain software licenses.
That said, there are a lot of reasons why someone might be struggling with money. If I was the creator, I wouldn't object to someone using an unlicensed copy forever in that case.
There isn't any other than the occasional message when you save that tells you to buy the product. It's about as close to freeware as a paid product can get.
I do suggest people pay though, it's cheap for a one-time purchase. The only reason I've ever seen the message at all is because I spent months being too lazy to dig up the license key to send to my work email. (That should also say something about how little I was being bothered by the message too)
I was using JetBrains for more than a decade. Then I got into Python as well and so was juggling between WebStorm, PyCharm, CLion and Intellij Idea. Zed has replaced the first three completely. Put the appropriate config file in project root for whichever LSP/linter/tool is running, and most of these warnings disappear.
Writing C in Zed is a wonderful experience. The LSPs surface errors in an manner that is very easy to view and edit.
My main issues with Zed are:
- Word-wrap: I prefer on-demand, and I haven't been able to figure out which setting triggers that. Of if it is even possible.
- Support for Devanagari and other scripts: I use it as a markdown editor to proofread old texts and it is inadequate for that purpose. Kate/Featherpad offers a superior experience for this, including the ability to zoom to see those visually difficult to parse conjunct consonants.
Had the same experience with a rails project, it injected an LSP+linter we don't use in our project and it has really annoying to figure out how to disable it in a settings. Having to debug an editor's settings JSON the first time you use it is not a good UX, it should be optional to enable it instead of assuming we want aggressive on-save linting/autoformatting (that the repo doesn't even have configuration files).
You should be able to just turn off the language server. Go to the lightning bolt icon in the bottom bar, "Stop all servers" or just the PHP one lighting up your source code.
I'm also sticking with Sublime for many years, and at this point it feels like it is some kind of old man stubbornness (like George R.R. Martin using WordStar 4.0 type thing). I don't know why its ergonomics for me have been just unbeatable. I gave others (VSCode and Zed) good weeks and months of configuring them to my liking and using them exlusively, and always returned to Sublime. All the AI stuff just runs on the side in the terminal (iTerm2 for me, but checking in on Ghostty sometimes too, waiting on them to figure out their minimal text brightness feature).
We use intelphense with vscode and it's only mildly red (zf1 mutant project). It also understands stubs from phpstorm. Default lsp for Zed is phpactor and it was just an inferior experience compared to intelephense (free) in vs code last time I tried. Now there's even a guide for adding intelephense to zed, but I'm yet to try it out.
> I'm sure you can configure whatever language server PHP is using to disable specific warnings, etc
You may be able to do this by editing a language server-specific config file in whatever arcane syntax they decided to offer. But there isn't any editor support for configuring languages servers, so it's a bit of a lift for a newcomer who just wants to turn off some warnings
If you're using zed, couldn't you use AI to fix something like that? Those copy and paste type changes over a code base is something AI assistants are really good at.
I could! I'd probably have to take it piece by piece, rather than telling an AI to edit hundreds of files in one epic session and hoping for the best. Even just reviewing a commit that large feels like it would be a bad use of time. Also, giving every variable a type (or using "mixed" everywhere), and giving every function a return type (more "mixed" or "void") would just make the code more verbose without any justification that I can see.
With Zed, I feel like I'm being dragged into a modern style guide that I never agreed to. It would be nicer if I could make it my own by turning off those parts that I disagree with and keeping the rest. I know this is technically possible, but they've certainly not made it easy.
From what I can gather from a cursory glance at the docs, zed uses intelephense and its diagnostics can be disabled. The whole lsp can be disabled. At the risk of sounding like I'm saying "you're holding it wrong", I have to say that this is an OP problem and not a Zed problem. These are sensible defaults that work for almost everyone, in my opinion.
I have been following zed for quite some time and I use it daily alongside nvim (haven’t yet tried zed vim mode, planning to). I really like the performance and control zed provides, as well as the reduced UI clutter compared to alternatives. The collaborator functionality is not talked enough by the community but I believe it’s an ambitious idea worth pursuing. Wishing the team all the best.
I'd love to see the Alacritty terminal backend swapped out with libghostty (or more likely libghostty-rs). The work Mitchell is doing with Ghostty and the approach Zed has taken seem super aligned.
And Mitchell definitely seems to want to make Alacritty an easy target for conversion, he was just talking about being open to help support Warp with it: https://x.com/mitchellh/status/2049159764261925005
Alacritty is already pretty performant (relative to a lot of the other terminal emulators), but my read is Ghostty has been going hard over performance/standards/protocols (like Kitty).
My daily driver is Zed developing on SSH remote servers on exe.dev.
It's crazy to think of all the dev tools I've churned through over the last 18 months but these two feel sticky.
Zed has everything I need in a unified pane. File editor, terminal, agents, SSH remotes. And it's fast and intuitive
exe.dev is the first "dev container" I've ever *loved*. The remote sandbox means `dangerously-skip-permissions` is safe. Being on the internet with good private / shared / public access saves so much time.
I also use https://conductor.build/ and GitHub but this is starting to feel clunky compared hacking directly against online live reloading apps.
I'm glad to hear the SSH remote editing is working well.
A lot of the time I'm developing on a remote server using VSCode Remote-SSH. I mostly love it. But! It consumes a lot of memory. And not only that. At times it gets stuck in some infinite loop or such, and ends up consuming all memory on the machine, preventing all traffic. Takes a few minutes for the OS to finally kill it, so I can get back in. I'm pretty this is happening due to large collections of symlinks (the subprocess eating up the memory is rg). But also just JavaScript editing at times launches up a bunch of ts-servers consuming everything and more.
This is super scary, if I'm poking around on the prod server.
Using Zed with ssh is an interesting idea. I spend a lot of time mosh/ssh to VPSs, then running 'emacs -nw' locally on the server. This is a great setup since I love Emacs, but I will give Zed/ssh a try. Thanks.
I quite like Zed, I've consistently driven it for months at a time. But there are two things that add enough friction that over that month or so I end up bailing back to one of my other editors (vscode/neovim). The search experience being a new tab with no sidebar option and the diff viewer being a multibuffer view with no option to see the entire contents of a file you are diffing.
That being said, I love the software and will continue to check back on it with the hopes that it sticks one day. Congrats on the 1.0!!
Ever since agents came out I had been lost trying to figure out what I should replace my heavy IntelliJ with. I switched fully over to Zed once they shipped the git graph in stable [0] and couldn't be happier. Congrats on 1.0!
- while faster/more responsive than vscode on large codebases, still pretty heavy compared to its AI-averse fork, gram; thus I can't use it on the macbook neo
Until some/all of that is improved, it's just uncanny valley territory with no particular killer feature to migrate. Appreciate all the work they've put into it (especially remote ssh parity!) though and like what they're doing in broad strokes
The only thing that bothers me about Zed is the theme. It's so bland it actually gives me reading difficulties. I'd be surprised if some of the color combinations don't pose an accessibility issue. Grey text on grey background is quite the choice.
I do agree that Zed's default themes aren't great. They look too 'plain' for my taste. Bit more contrast can't hurt either.
BUT: It's very easy to just choose a different theme and there are plenty to choose from by now. It's even possible to make your own theme and they even have a first-party theme editor (https://zed.dev/theme-builder) which works great. They should maybe include some descriptions for each color instead of just the name but that's the only negative thing I can say right now.
I'd even say that it's easier to theme Zed than VSCode because there are fewer variables.
As far as I can tell you can theme nearly everything in the app. I've got custom colors for diffs and some syntax, and my base theme is ripped from Monokai.
I found it funny when an American customer support person I was talking to over the phone had no idea what "zed" meant. I was reciting some code and they asked, "what is zed"? I said, "uh, the last letter of the alphabet".
I've been using the editor since the early days and have always been a fan of its visual look and feel, so I was pretty happy to see its UI library open sourced.
I wish GPUI could become the go-to Rust UI library and not just an editor backend.
For that, a couple of changes would be highly desirable: being able to switch the GPU backend from Metal to wgpu (so it could be mixed with vello, for instance), and the ability to integrate into an existing event loop like egui allows you to. If this were easy to do, I would switch from egui in a heartbeat.
Have they made a way to move those tiny icons in the lower left (aka "activity bar") to larger icons on the upper left like VsCode? As it stands, I can barely see them on my 4K screen and selecting them with a mouse cursor is like a pixel hunting contest. No go for me until they offer a way to change that. Beyond that it seems like a decent editor, but if I can't switch modes back and forth, that is a deal breaker.
UPDATE: Looks like they haven't yet, bummer, and doesn't seem to have much traction either. They redirect to discord, but AFAIK that doesn't have a way to make a feature request directly?
Just tried it out and it works great and is really fast! It's a breath of fresh air compared to VS Code. Lots of other editors are fast, but this seems feature complete as well as fast.
Migrating from VS Code was also super simple and integrations with AI assistant seem to just work.
I can definitely appreciate the engineering work that went into it. Loving it so far! Thanks!
Congratz to the team. I really like zed and started using it quite early, loved the text threads and was using them a lot as I don't think llms fit in a box of only agents, they were a nice way to manage conversations, work through them, edit responses to lead the agent better, copy-paste full text, sad to see them go (text threads).
I'm trying right now the ACP with my own agent and I'm of mixed opinions but that's maybe because I care how my agent works. I believe that for the agent view a plain buffer with small ui elements would be the best ui for an agent conversation but I may have been spoiled by their text threads. I may spin a personal fork but the thought of tens of mins of compile time isn't that attractive.
Edit: I realized I started moving to terminal based editors like helix due to agents: claude -> codex -> custom pi, with the open sourcing of warp I was considering making a native integration for warp + pi but now I'm thinking zed's text threads (~17k lines) + pi might be a better way, any thoughts or ideas?
I use it for Elixir and ansible stuff. I may eventually be open to using it instead of PyCharm for python and/or Nova for C.
If there's one area I still feel that Zed lets me down is in pane management. Maybe I need to just learn more key shortcuts. But I spend a bit of time "managing" the secondary panes and having to switch back and forth between outline, files, search. I'm not sure what the solution is. Just wish the secondary panes weren't a scarce resource that had to be mux'ed betwixt.
I really like(d) the agent integration, but we're currently experimenting with Claude Code Desktop, and I really miss not having the tight integration. My guess is that I'm going to switch back to using the Pro subsidized version. I was getting by with ~$40-$50 a month. Now the company is paying $125 for Claude Team premium seat, and it's a lesser experience.
Over the years I’ve tried plenty of fast, "snappy" code editors, but always found myself returning to Sublime.
Zed is the first one that got me to actually migrate. It does a great job of staying out of your way. Search and replace works seamlessly across multiple files with regex, and the extremely fast editing experience feels immediately familiar if you’re coming from Sublime. Being open source also gives confidence in its long-term viability.
Shortcuts still don't work on non-Latin keyboard layouts on Linux. For people who use languages with non-Latin writing systems, this is a show-stopper.
(there is, of course, a rich tradition of text editors with the same issue, including Vim and Emacs. They 1) have an excuse; 2) provide both workarounds and their own input method systems. Having this in a new program is nuts.)
Yes that was the primary issue I had when testing Zed in the past. Keyboard layout not working properly, shortcuts being unusable or un-remappable. Sad to see it's still the case for 1.0
I would really love to see an iOS remote control app for zed. I am using it on throw away microvms via ssh. Would love to have the zed server running there, control agents via phone and occasionally use my Mac to connect to the server and use the desktop app as normal for review and hand coding
Zed is a durable piece of software, rather than the current trend of cheap disposable software. Regardless of whether humans or agents use a tool like this, durability is a benefit for both.
I am posting this because I want to like and use Zed because it's so fast and responsive (Especially on my tablet, which JB turns into a space heater), and has neat functionality like being able to switch to whatever set of hotkeys you use. And I greatly respect the small binary/download size and fast install. From experimenting in Python and rust:
- Doesn't highlight typos in variable, functions, class/struct names etc. Doesn't highlight rust borrow-check, invalid method etc errors.
- Doesn't seem to understand either language beyond superficial syntax
- "Go to definition" (Ctrl + B) Doesn't do anything
- Doesn't show which versions are valid in Cargo.toml and pyproject.toml
- No ability to move functions/classes/structs etc to different modules
- Doesn't seem to understand rust feature gates
- Doesn't seem to understand what fields a struct has, or params a function has, let a lone what types are valid in them.
- Rename seems naive
Overall: It is taking a superficial view of the code base, and treating it more as text than a cohesive structure.
edit: Thank you very much for those who have pointed out I needed to disable restricted mode. This has added some introspection and in-line error handling. Some of my concerns are partially-mitigated. It seems when introspection and in-line editing/complete/data appears is inconsistent (But working in many cases), and I do not yet know what rules define this. Refactoring tools like moving are still absent. I will continue to use Zed on my tablet with the LSPs enabled, and observe.
I suspect you may be operating in "Restricted mode," aka it doesn't know if it can trust the directory. In that mode, the main tools like Rust analyzer are quite restricted. All of your complaints should be resolved once Rust Analyzer/basedpyrite are up and running.
I do think they should have a more obvious warning that the current directory is untrusted, right now the little green warning in the corner is way too unobtrusive and will result in many people having the same issue as you.
Did you market the project as trusted? Récent update (à few month) requises the trust to reenable the analyses feature
It took me a while to understand lol
At Somme point I though that the parker were broken in my codebase xD
I thought Zed was using tree-sitter: https://zed.dev/blog/syntax-aware-editing? Shouldn't it address all of these issues? Does tree-sitter not understand Python (basically the most popular language out there) and Rust "beyond superficial syntax"? I thought its whole point was that it understands everything about a language's syntax because it builds a concrete syntax tree?
TreeSitter is an amazing tool but is (purposefully) quite limited compared to an IDE--it doesn't even cross file boundaries, so go to definition is a non-starter. Zed uses LSPs like Rust Analyzer to fill that role.
As for your list of grievances, they all seem to boil down to the respective LSPs not doing their job? Does Ctrl-Alt-l (lowercase L, not Shift+i) include the language's server in the context menu, and are there any errors reported for it if it does?
It sounds like LSP isn’t working for you for some reason. Have you installed the extensions for those languages? These things are definitely supported via LSP
I like Zed but as a user of Scala it is not open-enough of a platform to be useful beyond small projects.
e.g. its "run" gutter icons rely on context free grammar queries, but of course Scala allows to define main methods via inheritance from a class. Zed's extension api should let the extension report entry points via whatever internal mechanism it needs.
This also goes for the various testing libraries in Scala that because only tree-sitter queries are supported therefore need a custom pattern match for each library as they have their own mechanisms, rather than letting the extension provide its own test harness (easily handled by build tools automatically) - Zed should provide something similar to VS Code's Test Explorer and Testing API interface.
Also extensions can't add new UI, so you are stuck fitting to the recipe Zed team provides for you to plug into, and often enough this is not satisfactory.
On MacOS I never really felt there was a noticeable performance difference to using Zed vs VSCode. I still like the idea of it being Rust/GPU based but just like those GPU optimized terminals (Kitty, Alacritty, etc) the difference is usually pretty marginal for day to day stuff.
The only time VSCode gets slow is if you use a bunch of poorly written plugins, which hasn't been an issue for me in years. It's just like Chrome, chrome is extremely fast as a base but you can mess it up by not being careful with what you add to it.
I still plan to revisit Zed in another year or so once it progresses further, as I find it's still behind Cursor in many ways.
Yes - the Claude ACP is nice, as I like to have a view of the code while chatting. Using just the terminal for dense/long running work feels like a handicap imo. It would be great if it supported more commands though!
I feel like it doesn't support some of the commands that manage Claude itself so think `/mcp` `/plugins` etc. Most of the common ones are configured to work though from what I've seen but the ones that do more configuration of Claude seem to be blocked.
That is likely a drawback to their ACP wrapper scheme, it helps exposes IDE functionality but they have to keep up with Claude Code functionality in the other direction. VSCode's Claude code plugin is just like using the CLI.
It works 'well' with Claude Code, but you're going to be missing a lot of features. There's no display for sub-agents/teams, no ability to clear the context without starting a whole new thread window, no ability to view the current context or usage, etc. There's also no built-in ability to view or change the model's current effort level, which I think is a current limitation with the SDK.
I tried it for a bit and it was definitely usable and I got a few features built out, but I eventually moved back to using CC in the terminal. I'm sure they're working on it, though.
Does "local Ollama" or OpenRouter count? I fell into using Zed because there was zero sign-up friction when trying to set up a connection to a local Ollama LLM. Literally "drop-down, select the model you want"
Once I got that running on my machine it was also easy (literally a drop-down+ API key) to switch and explore using models on OpenRouter.
It lacks a lot of features, but IMO feels less "busy" than the terminal version, which I like.
Very recently Zed also gained support for parallel sessions, which is nice.
In general it's very obvious that a lot of effort goes into improving it, and it gets better with every release.
I used to run Claude code on terminal on zed. But the memory usage would balloon eating all my ram 128gb and have to kill the session every other day. I moved back to vscode. I don’t know if they addressed it
Just opened my current TS/TSX project and everything is working as expected.
Performance is fantastic. I used Sublime for a decade and always missed its native performance after switching to VSCode due to needing first class Svelte, Vue, or Astro support.
The only thing that bothered me is that it enabled the Tailwind LSP even though I'm not using TW and I couldn't stop it. Had to disable that LSP completely in the settings:
Thank you, Zed team, for creating Zed. It’s clearly a labor of love, and I really want Zed to work for me. It seems like a quality project, it’s fast, and the base editor is easy to use.
I gave it weeks though, and the surrounding UI just never clicked for me. The various AI panels are confusing, the global search is awkward, and something about the type rendering just didn’t ever look right (maybe I’m hallucinating this?). I use VS Code only grudgingly, but I do think its ergonomics are actually pretty reasonable. I came from Sublime before that. I’ll keep trying Zed, and I hope you succeed.
Zed is a great editor. I think they have done an excellent job and hope they are successful. That said, I do not feel compelled to switch to it. For a pure text editing experience, I've always felt most comfortable with Geany. When I want to extend the editor, I reach for Emacs. AFAICT, extending Zed means using Rust, and that's never going to happen.
Congrats to the Zed team! I've been using a combination of Zed + Gram [1] (which I predict may lag behind this 1.0 release in features/fixes). They are both nice, fast editors. However, I switched to Sublime Text 4 again recently and... I'm surprised to see how much clunkier Zed feels than Sublime. I can't put my finger on it, but Sublime, although lacking in features, feels considerably more polished and performant.
It's all in the details, eg. in sublime if you use the goto panel and highlight a file it will immediately show a preview, in zed you have to click on it, so you lose the snappy feeling.
For better or worse, my current workflow is to do most things through WSL on Windows 11. VSCode supports running the editor natively on Windows, but then having an agent or something inside WSL that lets me remote control what's going on there. Does Zed do anything similar?
Currently I'm just access the workspace in Zed via Windows Explorer, but I wonder if that's going to kneecap some of the integrations.
EDIT: nm, Zed supports exactly the same kind of remote editor session, via hamburger -> File -> Open Remote
I really like Zed but it's most recent big changes to Git integration and Parallel Agents has forced me to disable both of those features as the way they work just didn't suit me and my workflow
I’ve tried it multiple times, but the performance issues on different Macs are too significant to ignore. I appreciate responsive UI, but I also prioritize sufficient battery life.
Feature-wise, Zed is still far from VS Code, but for me, the change has been worth it for the performance increase alone. I'm really happy with Zed, and I think it has a bright future ahead. Congratulations on the 1.0 release!
Congrats to the Zed team! I really like your editor and it works surprisingly well, althought there are a few rough edges still with the python experience.
The debugger in Python FastAPI and mainly Django is not working as expected. Hopefully soon will be fixed.
Good for them, but I wish they'd hurry up and catch up on some of the big missing features. Really hoping they'll accept my PR to add the missing call hierarchy feature before the GitHub issue turns 2 years old :)
Sort of a recurring theme, I find. They have 600+ issues that have been open for over a year, was hoping they'd drive down the backlog a bit before declaring victory
Go look at any large project, they have 500+/1000+ issues and many are ancient. Chrome, Firefox, you name it. I wouldn't be surprised if many issues have even been solved or need new reproduction steps but there's a difficulty to triaging all the issues as well.
I tried zed sometime ago, and the limiting factor was devcontainer support. It looks like they’ve made some progress there https://zed.dev/docs/dev-containers
I hate to dismiss Zed for such a stupid reason, but I have tried to use Zed seriously many times and every time I stop because I can't get over the theme. I've tried basically every single theme I can find that is reasonably popular and they are all equally poor. VSCode and Cursor have vastly better default themes.
Does anyone have any suggestions here? I would love to use Zed more.
What's your favorite theme, maybe we can point you to something close? If you have any special needs or usability issues (colorblindness is common), that's probably relevant too.
Well done. I've been using Zed pretty much full-time for about 6 months now, and am happy with the experience.
There are still a few things PyCharm does better (debugging, for one), but overall Zed is very good and I haven't used PyCharm in months.
I still use CC in the terminal instead of inside Zed, and lazygit for reviewing git changes and other git actions (though Zed now does a decent job of the basics).
Here is a top-level comment for people who want to post the things they wish Zed had.
Request: please be sincere if you claim "the one thing that keeps me from using Zed is X" ... because let's face it, there is probably more than one thing. Editor ecosystems are complex beasts, and it is ok if people are slow to switch, but the "one thing" claims are rarely credible to me. Anyhow, such comments are rarely consistent with how human nature works. People find rationalizations, and that's fine. It would just be nice if people were a little more self-aware. Changing editors is harder for some people more than others.
My suggestion: if you want to make Zed better for your use case, please smart by explaining who you are as a developer, what you've used, what your expectations are. And be intellectually honest about the last time you've made a big change to your development workflow. End soapbox.
I wish Zed had built-in APIs for extension developers to allow for more customizable text transformations. In particular, I want to write tools that have more control over what a buffer displays. Imagine a Markdown extension that gives Zed something close to the WYSIWG experience of Obsidian. To make this happen, I think something like a customizable presentation layer to transform the buffer's contents and adjust cursor movement would be a great start. Vim has a 'conceal' feature that could serve as an inspiration or reference point. [1]
I have no affiliation with Zed, though I have applied to work there, so I'm hardly neutral. I've been an enthusiastic user for probably two years. I don't expect perfect alignment with what I want, and sometimes the team doesn't respond how I would like with particular issues. But man, in a pretty suboptimal world right now, Zed is an amazing thing to have: open source, regular updates, extensions, nice settings. In the past I've used BBEdit, Eclipse, TextEdit, Sublime, Emacs, VS Code, Jetbrains, Helix. Zed is my favorite by far, probably because of the latency. It is an intangible feeling that just clicked immediately for me.
Personally, as a mostly independent developer/researcher, I go through bursts of re-evaluating my tools. To give some context about my newer tools over the last few years: Ghostty, Nushell, Podman, Nix, Mochi, Monodraw, Swish (window manager for macOS), Base (macOS SQLite editor by Menial), LM Studio, (probably obviously) Claude Code. So for a "seasoned" developer, I'm probably more open to new tools than most? Oh, totally off-topic but I think some of the lesser appreciated new open source tools / formats / conventions are: KDL (https://kdl.dev), Typst, and (evaluating) Djot, Cocogitto (Conventional Commits, took me long enough).
Congrats guys! I've been using zed since a few months ago, I would consider myself a "light" user but I do enjoy the experience. My only sour point would be the not so smooth integration with claude code. But I've learmt to live with it for now
Zed is a very polished and nice product. I tried hard to use it, especially when I decided to migrate away from Emacs. But NeoVim gives me everything I was looking for in Zed: Speed, a polished UI, quick startup, not overloaded. So between Zed and NeoVim I decided for the latter. I use Neovide in GUI and neovim in terminal. I don’t use AI alongside nvim, but claude code helps me configure my config file in lua. So my neovim has a 10k lines config spread of several files. It is my simple text editor with super fast movements, and it can become a full blown programmable interface for my Obsidian, for my journal writing, for coding, writing documentation. It can be as complex as I need it to be. And it’s super fast.
How is their emacs keymap support? I tried VSCode for a while but switched back to emacs because it was so slow and the keymap was not very good. I've been intending to try Zed but emacs is working well enough so the motivation isn't really there yet..
I've got emacs keybinds in my muscle memory and Zed works well for me, although there's no kill ring and the macro system is nothing like emacs. The former will be added at some point (there's an open PR), but I do not expect the latter will ever be comparable.
Looking at Zed (and Brave in another thread) I'm really firming up this idea that the "big funded private company model" for essential tech software is just most often idea. They don't know how to add features without also adding bloat and BS.
This is why I say Docker is the only real "success" story here. And note, I mean a success story for the users; Docker tries real hard to enshittify and fails, and that's good.
The only unusual thing is that I use ruby as primary glue language to everything, so in a way that editor (no longer maintained, similar to Linus' editor) is just a wrapper over ruby as such, and functionality in these scripts.
I have also found that it is not the editor that slows me down, but the need to have to think. This is also one reason why I try to make the specification as useful as possible. For instance, in one project that I use to compile everything from source, I use a ton of simple, mostly smallish .yml files that describe everything - allowed keys, allowed values, settings that are mostly just a pointer to where to fetch the source, how, how to compile it then and so forth. The ruby code then is mostly just a glue over that data. And that approach, while very simple, works quite well. Users can also modify settings, by modifying the .yml file or via commandline flags. And if need be, I could also use and populate a SQL database with that data (but for the most part, yaml actually suffices; I don't understand why people are so upset about yaml, and then only point at use cases where folks use mega-nested yaml files. These guys don't understand why simplicity is a benefit; admittedly yaml is not a perfect format either, I notice this when I have a long .yml file and then some forgotten ":" or "," due to manual copy/paste error, then it takes me a few seconds to notice what's wrong).
What an abysmal series of top comments. These guys created a phenomenal product using novel technology, which will only continue to improve. Great work to the Zed team.
^^the #1 reason I limit my daily time allowance for HN
Congrats to the Zed team for building the best modern editor I have ever used. I subscribe to the monthly plan just to give you guys the funding you need, even if my funding is a tiny drop in the bucket. I always wanted a feature rich alternative to Sublime Text that can run anywhere and do basically anything I need from it. I've use JetBrains IDEs for years (been subscribed annually since 2017), but since Zed I havent really opened any of those IDEs in a long time, other than maybe Rider but that's due to C# nuances I needed to work with.
Too bad they did not include better search UI into this release.
When you search, Zed opens a new tab, which I hate. Sometimes I just want to have a quick glance at some code and close the search using escape.
Telescope style search in vim, helix or JetBrains tools is so much better.
https://github.com/zed-industries/zed/pull/46478
Huh, I absolutely love Zed’s search UI. I just navigate back to my previous tab with ctrl-o when I’m done
This. I tried Zed for an entire month, but this "search thing" drove me nuts. It is also slow. If you work in a large project search is absolutely essential. Too bad.. Back to Visual Studio Code.
Whereas I'm not a great fan of modals for anything where I'd like to refer back to what I'm working on. I guess I'd just prefer some tabs to open as a split by default and close with esc, maybe call them something like "ephemeral tabs"? Basically, steal some ideas from emacs.
in emacs with embark you can export the contents of an ephemeral buffer into a persistent one, which is the best of both worlds and more besides
for file search, edit in the persistent buffer can rename files
for grep, edits in the persistent buffer edit across files
and so on
Tabs will still be supported. Also, when you search for references, it also opens a new tab, even when all references are in the same file.
That definitely sounds subpar to me. I suppose there's still a reason to keep paying for an IDEA Ultimate subscription.
I love the search in zed. If it was up to me it would open a new tab on every search rather than reusing the same tab, so that I didn't have to redo past searches.
The multibuffer result is so nice for "hands-on" search and replace.
> Sometimes I just want to have a quick glance at some code and close the search using escape.
How else are you going to have “a quick glance at code” *across* project files without using a new view for that? It sounds like you’re describing something impossible.
Zed’s across files search solves this in a similar way as other tools. Except that in zed you can also edit the code where your search results show up. Zed also has within file search.
Just look at the PR, it's shows how it will look like. It's modal instead of a persistent tab.
I know not much about Zed and I am curious, can such changes be implemented via extensions?
No, Zed's extension API is very limited at the moment. In particular, it does not allow adding any new GUI elements.
Agreed, this is the main reason why I keep switching back to other editors.
> When you search, Zed opens a new tab, which I hate.
You also have to validate the search, it doesn't start off immediately on its own, which annoys me a lot more.
That was og sublime/textmate behavior that I grew to miss with vscode, so was pleasantly surprised to see it exists in Zed.
yeah its quite silly they decided to mess around with this universally standard behaviour. The search is the reason why i always end up going back to other vs code based IDEs for real work. I open zed for perf reasons and something quick.
Also now they've introduced this "agent first" layout which i cannot undo. They're strength is in perf, idk why try to reinvent the wheel w.r.t DX.
I really want to like Zed because they've clearly put so much work into it, but so far I've been sticking with Sublime. I have several large PHP projects that were started in the 2010-2020 era, and Zed will highlight and complain about all sorts of minor things that were standard PHP fare at the time: functions without return types, for example. My code (which works fine) looks like an ocean of red when I view it with Zed, and turning all those warnings off is not trivial.
For each kind of warning, I wish there was a button that said "don't warn me again about issues like this one in this project." Then I could keep the interesting warnings (like undeclared variable) and ditch the ridiculous ones.
> My code (which works fine) looks like an ocean of red when I view it with Zed, and turning all those warnings off is not trivial.
Isn't it just the default configuration of whatever LSP zed defaults to for PHP?
So you should be able to either configure the LSP to avoid that or disable the LSP server entirely.
Coming from Sublime, I'd never even heard of a Language Server when I first tried Zed. As I recall, disabling particular kinds of warnings required copy-pasting some pretty exotic incantations into my project config. All of it was poorly documented, and it felt like I was doing something nobody expected me to do. Instead, I should have been able to mouse over a particular warning and say "don't warn me again about things like this", at which point Zed should edit the project config for me.
that does sound like a pretty nice ui idea to add to code actions (command + .), it already lets you one-click add an ignore comment iirc so probably not too hard to wire a global per-project option
however, i think LSP or integrated linters/typecheckers have been standard fare in editors for a while now (zed does seem to have a lot more set up by default, but i like the sane defaults most of the time). The "correct" solution would be to configure whatever lsp zed is running for the project the way you want, and reap the benefits even outside of zed. for php the tools are listed here: https://zed.dev/docs/languages/php the main one seems to be Phpactor and you should be able to configure it globally or per project https://phpactor.readthedocs.io/en/master/usage/configuratio...
but i understand the frustration, sometimes i try to navigate an ancient python codebase and it really is a sea of red
Well, PHPStorm (and the other JetBrains IDEs) does it this way. You can disable a certain "inspection" globally, per project, per file, per method or just for one occurence - the last three work by inserting annotations into the code. Then again, PHPStorm costs money (not just if you want AI assistance), and is based on (drum roll) Java technology (although JetBrains don't advertise this fact a lot nowadays).
You should learn about LSPs
LSP is how all editors work today and its simplified everything so so much. you should figure them out
While this comment is overly general (some major editors ship without LSP support built in; many more do not have a sane configuration out-of-the-box), it is useful to learn about them and how your editor of choice integrates with them.
The landscape isn't generally intuitive, unfortunately, and while it's getting better, understanding the differences and interop places between LSP, Treesitter, DAP, your editor, and the underlying language-specific tooling can be a big, confusing time hog.
That said, and to be clear: LSP's been a huge boon for me. I used a minimal, kinda-broken configuration for a while with Python, then rebuilt the whole thing when I switched to Rust for work, and holy hell, this thing's awesome.
Definitely not all.
https://xkcd.com/1172/
Lol. Come on.
IIRC, Zed uses PHPactor by default. It's a mess for Kirby projects as well.
I love Sublime, but I don't want to pay to upgrade from 3 to whatever version it is now, Zed is everything I wanted Sublime to be. Honestly, I wanted VS Code but fully native, and I feel like that's what I'm getting from Zed.
I feel like some people will be put off by all the "AI" mentioned by Zed, but you're sleeping on a top tier editor where you can just ignore the AI stuff if you don't want it. It's very high quality, and probably the reason I wont be renewing next year for JetBrains, unless JetBrains does something impressive, I thought by now they'd have a more native feeling IDE that handles most / any language instead of so many separate ones.
VS Code has gotten so bloated over the years. The gold standard of ST has spoiled me with simpler editors. Zed is the first time I felt like someone finally built an editor that is modern and has a rich set of features.
> I love Sublime, but I don't want to pay to upgrade from 3 to whatever version it is now
I don't know what your financial situation is, but given that the upgrade is an $80 one off payment (a new license is $99), that it's a per-user license (not per-machine), and that there were 8 years between Sublime Text 3 (2013) and Sublime Text 4 (2021) (only major versions require a new license), I personally think it's very reasonably priced.
Agreed-- Sublime is asking $99 right now, which is quite reasonable for something that you're going to use for hours a day in your professional work. Somebody gave many years of their life to make that tool the best it could be, and as a well-paid professional, I feel it's more than fair. In other high-end professions (like the legal field), I've heard of law firms paying a lot more than $99 for certain software licenses.
That said, there are a lot of reasons why someone might be struggling with money. If I was the creator, I wouldn't object to someone using an unlicensed copy forever in that case.
I'm using the latest free/unregistered version (4200) and I haven't experienced any limitiation so far
There isn't any other than the occasional message when you save that tells you to buy the product. It's about as close to freeware as a paid product can get.
I do suggest people pay though, it's cheap for a one-time purchase. The only reason I've ever seen the message at all is because I spent months being too lazy to dig up the license key to send to my work email. (That should also say something about how little I was being bothered by the message too)
I finally moved off Sublime a few months ago because I wanted something open source and stumbled on KDE/kate. It's been a perfect substitute.
https://github.com/kde/kate
Given the price and the fact it’s a WinRAR-style model, I really don’t mind ST being paid.
Oooh this is a thread about an IDE called Zed not a Typescript strict typing system called Zod
I was confused until here because I remember using Sublime until it went paid
Sublime Text has always been paid, it was never free.
I was using JetBrains for more than a decade. Then I got into Python as well and so was juggling between WebStorm, PyCharm, CLion and Intellij Idea. Zed has replaced the first three completely. Put the appropriate config file in project root for whichever LSP/linter/tool is running, and most of these warnings disappear.
Writing C in Zed is a wonderful experience. The LSPs surface errors in an manner that is very easy to view and edit.
My main issues with Zed are:
- Word-wrap: I prefer on-demand, and I haven't been able to figure out which setting triggers that. Of if it is even possible.
- Support for Devanagari and other scripts: I use it as a markdown editor to proofread old texts and it is inadequate for that purpose. Kate/Featherpad offers a superior experience for this, including the ability to zoom to see those visually difficult to parse conjunct consonants.
Had the same experience with a rails project, it injected an LSP+linter we don't use in our project and it has really annoying to figure out how to disable it in a settings. Having to debug an editor's settings JSON the first time you use it is not a good UX, it should be optional to enable it instead of assuming we want aggressive on-save linting/autoformatting (that the repo doesn't even have configuration files).
Interesting! I tried Zed too, and not knowing Sublime, I switched to it instead after a while…
I’m not sure why though. I do not have the issue you do, but Sublime feels better.
You should be able to just turn off the language server. Go to the lightning bolt icon in the bottom bar, "Stop all servers" or just the PHP one lighting up your source code.
I'm also sticking with Sublime for many years, and at this point it feels like it is some kind of old man stubbornness (like George R.R. Martin using WordStar 4.0 type thing). I don't know why its ergonomics for me have been just unbeatable. I gave others (VSCode and Zed) good weeks and months of configuring them to my liking and using them exlusively, and always returned to Sublime. All the AI stuff just runs on the side in the terminal (iTerm2 for me, but checking in on Ghostty sometimes too, waiting on them to figure out their minimal text brightness feature).
As you mentioned iTerm, you should also check out TextMate, the thing that Sublime Text was inspired by.
We use intelphense with vscode and it's only mildly red (zf1 mutant project). It also understands stubs from phpstorm. Default lsp for Zed is phpactor and it was just an inferior experience compared to intelephense (free) in vs code last time I tried. Now there's even a guide for adding intelephense to zed, but I'm yet to try it out.
It just doesn’t play bice with PHP, I always wanted to uniform my stack before with vscode, now with zed. But PHPStorm always win.
It really there is no realy good ide or tools for php
Sidenote: Sublime remembers all tabs even those unsaved. (Software update deletes this memory.)
I use Sublime as a scratchpad and never save anything, so this is an important feature for me. It's worked flawlessly for years.
I've tried Zed several times like this and it continues to lose data.
> Software update deletes this memory.
While there was a bug where the session was lost when updating, this was fixed years ago.
This is just a language server problem. I'm sure you can configure whatever language server PHP is using to disable specific warnings, etc.
> I'm sure you can configure whatever language server PHP is using to disable specific warnings, etc
You may be able to do this by editing a language server-specific config file in whatever arcane syntax they decided to offer. But there isn't any editor support for configuring languages servers, so it's a bit of a lift for a newcomer who just wants to turn off some warnings
If you're using zed, couldn't you use AI to fix something like that? Those copy and paste type changes over a code base is something AI assistants are really good at.
I could! I'd probably have to take it piece by piece, rather than telling an AI to edit hundreds of files in one epic session and hoping for the best. Even just reviewing a commit that large feels like it would be a bad use of time. Also, giving every variable a type (or using "mixed" everywhere), and giving every function a return type (more "mixed" or "void") would just make the code more verbose without any justification that I can see.
With Zed, I feel like I'm being dragged into a modern style guide that I never agreed to. It would be nicer if I could make it my own by turning off those parts that I disagree with and keeping the rest. I know this is technically possible, but they've certainly not made it easy.
Have you investigated if the lsp and linter is configurable
From what I can gather from a cursory glance at the docs, zed uses intelephense and its diagnostics can be disabled. The whole lsp can be disabled. At the risk of sounding like I'm saying "you're holding it wrong", I have to say that this is an OP problem and not a Zed problem. These are sensible defaults that work for almost everyone, in my opinion.
I have been following zed for quite some time and I use it daily alongside nvim (haven’t yet tried zed vim mode, planning to). I really like the performance and control zed provides, as well as the reduced UI clutter compared to alternatives. The collaborator functionality is not talked enough by the community but I believe it’s an ambitious idea worth pursuing. Wishing the team all the best.
I'd love to see the Alacritty terminal backend swapped out with libghostty (or more likely libghostty-rs). The work Mitchell is doing with Ghostty and the approach Zed has taken seem super aligned.
And Mitchell definitely seems to want to make Alacritty an easy target for conversion, he was just talking about being open to help support Warp with it: https://x.com/mitchellh/status/2049159764261925005
Looks like Mitchell said he's already on it https://x.com/mitchellh/status/2049514540505964549
He gave me a quick response, should have checked back before posting here
What is Ghostty's advantage over Alacritty?
I think Mitchell outlined his vision for libghostty pretty well here: https://mitchellh.com/writing/libghostty-is-coming
Alacritty is already pretty performant (relative to a lot of the other terminal emulators), but my read is Ghostty has been going hard over performance/standards/protocols (like Kitty).
Congrats!
My daily driver is Zed developing on SSH remote servers on exe.dev.
It's crazy to think of all the dev tools I've churned through over the last 18 months but these two feel sticky.
Zed has everything I need in a unified pane. File editor, terminal, agents, SSH remotes. And it's fast and intuitive
exe.dev is the first "dev container" I've ever *loved*. The remote sandbox means `dangerously-skip-permissions` is safe. Being on the internet with good private / shared / public access saves so much time.
I also use https://conductor.build/ and GitHub but this is starting to feel clunky compared hacking directly against online live reloading apps.
I'm glad to hear the SSH remote editing is working well.
A lot of the time I'm developing on a remote server using VSCode Remote-SSH. I mostly love it. But! It consumes a lot of memory. And not only that. At times it gets stuck in some infinite loop or such, and ends up consuming all memory on the machine, preventing all traffic. Takes a few minutes for the OS to finally kill it, so I can get back in. I'm pretty this is happening due to large collections of symlinks (the subprocess eating up the memory is rg). But also just JavaScript editing at times launches up a bunch of ts-servers consuming everything and more.
This is super scary, if I'm poking around on the prod server.
Looking for alternatives. Zed is on my list.
Do you happen to use the AutoImport extension? rg subprocess explosion seems related.
https://github.com/soates/Auto-Import/issues/127
Using Zed with ssh is an interesting idea. I spend a lot of time mosh/ssh to VPSs, then running 'emacs -nw' locally on the server. This is a great setup since I love Emacs, but I will give Zed/ssh a try. Thanks.
I haven’t booted up an editor in a long time but I’ve written lots of software recently (mostly with codex).
Interesting times…
I quite like Zed, I've consistently driven it for months at a time. But there are two things that add enough friction that over that month or so I end up bailing back to one of my other editors (vscode/neovim). The search experience being a new tab with no sidebar option and the diff viewer being a multibuffer view with no option to see the entire contents of a file you are diffing.
That being said, I love the software and will continue to check back on it with the hopes that it sticks one day. Congrats on the 1.0!!
These are also two of my primary gripes.
There has been substantial improvement, but the search and symbol follow UX is really bad. Hoping the fix that.
Ever since agents came out I had been lost trying to figure out what I should replace my heavy IntelliJ with. I switched fully over to Zed once they shipped the git graph in stable [0] and couldn't be happier. Congrats on 1.0!
[0] https://zed.dev/releases/stable/0.231.1
Been following zed for at least a year now.
Tried switching multiple times from vscode but it's just not feature complete for my use cases. Off top:
- no expanding tabs to fill the window until another one is clicked
- file picker hides .gitignored files
- vertical terminal tabs would be nice
- restart doesn't automatically load the previous window (most recent project)
- while faster/more responsive than vscode on large codebases, still pretty heavy compared to its AI-averse fork, gram; thus I can't use it on the macbook neo
Until some/all of that is improved, it's just uncanny valley territory with no particular killer feature to migrate. Appreciate all the work they've put into it (especially remote ssh parity!) though and like what they're doing in broad strokes
The only thing that bothers me about Zed is the theme. It's so bland it actually gives me reading difficulties. I'd be surprised if some of the color combinations don't pose an accessibility issue. Grey text on grey background is quite the choice.
I do agree that Zed's default themes aren't great. They look too 'plain' for my taste. Bit more contrast can't hurt either.
BUT: It's very easy to just choose a different theme and there are plenty to choose from by now. It's even possible to make your own theme and they even have a first-party theme editor (https://zed.dev/theme-builder) which works great. They should maybe include some descriptions for each color instead of just the name but that's the only negative thing I can say right now.
I'd even say that it's easier to theme Zed than VSCode because there are fewer variables.
Thank you for the tips. I didn't know it was possible to install other themes as extensions.
Cursor has the best default dark theme IMO
It also has a much better edit prediction model than Zed
And the icons are too small. It's vaguely a mystery meat navigation.
As far as I can tell you can theme nearly everything in the app. I've got custom colors for diffs and some syntax, and my base theme is ripped from Monokai.
Surprised no American forked it and called it Zee
But anyway, yes these bland names do annoy me. R, C, Go, etc. Have an opinionated name but especially, that's not hard to google
I found it funny when an American customer support person I was talking to over the phone had no idea what "zed" meant. I was reciting some code and they asked, "what is zed"? I said, "uh, the last letter of the alphabet".
I've been using the editor since the early days and have always been a fan of its visual look and feel, so I was pretty happy to see its UI library open sourced.
I wish GPUI could become the go-to Rust UI library and not just an editor backend.
For that, a couple of changes would be highly desirable: being able to switch the GPU backend from Metal to wgpu (so it could be mixed with vello, for instance), and the ability to integrate into an existing event loop like egui allows you to. If this were easy to do, I would switch from egui in a heartbeat.
What's so good about GPUI?
Have they made a way to move those tiny icons in the lower left (aka "activity bar") to larger icons on the upper left like VsCode? As it stands, I can barely see them on my 4K screen and selecting them with a mouse cursor is like a pixel hunting contest. No go for me until they offer a way to change that. Beyond that it seems like a decent editor, but if I can't switch modes back and forth, that is a deal breaker.
UPDATE: Looks like they haven't yet, bummer, and doesn't seem to have much traction either. They redirect to discord, but AFAIK that doesn't have a way to make a feature request directly?
https://github.com/zed-industries/zed/discussions/47593
https://github.com/zed-industries/zed/discussions/48098
https://github.com/zed-industries/zed/discussions/47626
Just tried it out and it works great and is really fast! It's a breath of fresh air compared to VS Code. Lots of other editors are fast, but this seems feature complete as well as fast.
Migrating from VS Code was also super simple and integrations with AI assistant seem to just work.
I can definitely appreciate the engineering work that went into it. Loving it so far! Thanks!
Congratz to the team. I really like zed and started using it quite early, loved the text threads and was using them a lot as I don't think llms fit in a box of only agents, they were a nice way to manage conversations, work through them, edit responses to lead the agent better, copy-paste full text, sad to see them go (text threads).
I'm trying right now the ACP with my own agent and I'm of mixed opinions but that's maybe because I care how my agent works. I believe that for the agent view a plain buffer with small ui elements would be the best ui for an agent conversation but I may have been spoiled by their text threads. I may spin a personal fork but the thought of tens of mins of compile time isn't that attractive.
Edit: I realized I started moving to terminal based editors like helix due to agents: claude -> codex -> custom pi, with the open sourcing of warp I was considering making a native integration for warp + pi but now I'm thinking zed's text threads (~17k lines) + pi might be a better way, any thoughts or ideas?
I'm rather happy with Zed.
I use it for Elixir and ansible stuff. I may eventually be open to using it instead of PyCharm for python and/or Nova for C.
If there's one area I still feel that Zed lets me down is in pane management. Maybe I need to just learn more key shortcuts. But I spend a bit of time "managing" the secondary panes and having to switch back and forth between outline, files, search. I'm not sure what the solution is. Just wish the secondary panes weren't a scarce resource that had to be mux'ed betwixt.
I really like(d) the agent integration, but we're currently experimenting with Claude Code Desktop, and I really miss not having the tight integration. My guess is that I'm going to switch back to using the Pro subsidized version. I was getting by with ~$40-$50 a month. Now the company is paying $125 for Claude Team premium seat, and it's a lesser experience.
Over the years I’ve tried plenty of fast, "snappy" code editors, but always found myself returning to Sublime.
Zed is the first one that got me to actually migrate. It does a great job of staying out of your way. Search and replace works seamlessly across multiple files with regex, and the extremely fast editing experience feels immediately familiar if you’re coming from Sublime. Being open source also gives confidence in its long-term viability.
Kudos to the team building Zed.
Shortcuts still don't work on non-Latin keyboard layouts on Linux. For people who use languages with non-Latin writing systems, this is a show-stopper.
(there is, of course, a rich tradition of text editors with the same issue, including Vim and Emacs. They 1) have an excuse; 2) provide both workarounds and their own input method systems. Having this in a new program is nuts.)
This was reported for Blender/Wayland, they might be able to use a fix like this: https://projects.blender.org/blender/blender/commit/eaf63a35...
Yes that was the primary issue I had when testing Zed in the past. Keyboard layout not working properly, shortcuts being unusable or un-remappable. Sad to see it's still the case for 1.0
This editor sounds awesome, but it's sad they didn't make the UI accessible.
I would really love to see an iOS remote control app for zed. I am using it on throw away microvms via ssh. Would love to have the zed server running there, control agents via phone and occasionally use my Mac to connect to the server and use the desktop app as normal for review and hand coding
Zed is a durable piece of software, rather than the current trend of cheap disposable software. Regardless of whether humans or agents use a tool like this, durability is a benefit for both.
Congrats to the team
I am posting this because I want to like and use Zed because it's so fast and responsive (Especially on my tablet, which JB turns into a space heater), and has neat functionality like being able to switch to whatever set of hotkeys you use. And I greatly respect the small binary/download size and fast install. From experimenting in Python and rust:
Overall: It is taking a superficial view of the code base, and treating it more as text than a cohesive structure.edit: Thank you very much for those who have pointed out I needed to disable restricted mode. This has added some introspection and in-line error handling. Some of my concerns are partially-mitigated. It seems when introspection and in-line editing/complete/data appears is inconsistent (But working in many cases), and I do not yet know what rules define this. Refactoring tools like moving are still absent. I will continue to use Zed on my tablet with the LSPs enabled, and observe.
I suspect you may be operating in "Restricted mode," aka it doesn't know if it can trust the directory. In that mode, the main tools like Rust analyzer are quite restricted. All of your complaints should be resolved once Rust Analyzer/basedpyrite are up and running.
I do think they should have a more obvious warning that the current directory is untrusted, right now the little green warning in the corner is way too unobtrusive and will result in many people having the same issue as you.
Nailed it! I will do some more experiments and report back.
You should edit your original comment since it was user-error not the app being inferior.
Done; ty.
Did you market the project as trusted? Récent update (à few month) requises the trust to reenable the analyses feature It took me a while to understand lol At Somme point I though that the parker were broken in my codebase xD
I did not. Ty. I will look into doing this.
I thought Zed was using tree-sitter: https://zed.dev/blog/syntax-aware-editing? Shouldn't it address all of these issues? Does tree-sitter not understand Python (basically the most popular language out there) and Rust "beyond superficial syntax"? I thought its whole point was that it understands everything about a language's syntax because it builds a concrete syntax tree?
TreeSitter is an amazing tool but is (purposefully) quite limited compared to an IDE--it doesn't even cross file boundaries, so go to definition is a non-starter. Zed uses LSPs like Rust Analyzer to fill that role.
> And I greatly respect the small binary/download size
The latest x86_64 Linux build is 136MB. (https://zed.dev/docs/linux#downloading-manually)
As for your list of grievances, they all seem to boil down to the respective LSPs not doing their job? Does Ctrl-Alt-l (lowercase L, not Shift+i) include the language's server in the context menu, and are there any errors reported for it if it does?
Ctrl + alt + l in Zed is not causing any observable effect.
It sounds like LSP isn’t working for you for some reason. Have you installed the extensions for those languages? These things are definitely supported via LSP
> Overall: It is taking a superficial view of the code base, and treating it more as text than a cohesive structure.
That is the part that makes the space heater
I like Zed but as a user of Scala it is not open-enough of a platform to be useful beyond small projects.
e.g. its "run" gutter icons rely on context free grammar queries, but of course Scala allows to define main methods via inheritance from a class. Zed's extension api should let the extension report entry points via whatever internal mechanism it needs.
This also goes for the various testing libraries in Scala that because only tree-sitter queries are supported therefore need a custom pattern match for each library as they have their own mechanisms, rather than letting the extension provide its own test harness (easily handled by build tools automatically) - Zed should provide something similar to VS Code's Test Explorer and Testing API interface.
Also extensions can't add new UI, so you are stuck fitting to the recipe Zed team provides for you to plug into, and often enough this is not satisfactory.
[delayed]
Zed seems to have many fans on HN.
But it is not for me. Multiple issues on Linux and high memory usage makes it a worse alternative to vscode and jetbrains.
Maybe it's better on OSX, but I dont use that anymore and why use an editor that treats your platform as a second class citizen?
On MacOS I never really felt there was a noticeable performance difference to using Zed vs VSCode. I still like the idea of it being Rust/GPU based but just like those GPU optimized terminals (Kitty, Alacritty, etc) the difference is usually pretty marginal for day to day stuff.
The only time VSCode gets slow is if you use a bunch of poorly written plugins, which hasn't been an issue for me in years. It's just like Chrome, chrome is extremely fast as a base but you can mess it up by not being careful with what you add to it.
I still plan to revisit Zed in another year or so once it progresses further, as I find it's still behind Cursor in many ways.
I like Zed, I had only a few issues switching from VSCode. And I love the responsiveness of the crew in the repo! Keep it up, you're my default!
Congratulations! I’ve been very happy with Zed for the past year or so.
I’m hoping the roadmap contains support for even more things that extensions can do, such as rendering images or Markdown in-editor.
[delayed]
Does anybody have experience running Claude Code or Codex in Zed?
Yes - the Claude ACP is nice, as I like to have a view of the code while chatting. Using just the terminal for dense/long running work feels like a handicap imo. It would be great if it supported more commands though!
> It would be great if it supported more commands though!
What does it not support? I want to try and figure out if its shortcomings in the ACP/Claude SDK or if it's just features that Zed has yet to support?
I feel like it doesn't support some of the commands that manage Claude itself so think `/mcp` `/plugins` etc. Most of the common ones are configured to work though from what I've seen but the ones that do more configuration of Claude seem to be blocked.
That is likely a drawback to their ACP wrapper scheme, it helps exposes IDE functionality but they have to keep up with Claude Code functionality in the other direction. VSCode's Claude code plugin is just like using the CLI.
Context length is now shown and I dont think you can paste images? Havent tried though
It works well but there are a lot of missing features * skill auto complete * custom agents * sub agents * background process management
It works 'well' with Claude Code, but you're going to be missing a lot of features. There's no display for sub-agents/teams, no ability to clear the context without starting a whole new thread window, no ability to view the current context or usage, etc. There's also no built-in ability to view or change the model's current effort level, which I think is a current limitation with the SDK.
I tried it for a bit and it was definitely usable and I got a few features built out, but I eventually moved back to using CC in the terminal. I'm sure they're working on it, though.
Does "local Ollama" or OpenRouter count? I fell into using Zed because there was zero sign-up friction when trying to set up a connection to a local Ollama LLM. Literally "drop-down, select the model you want"
Once I got that running on my machine it was also easy (literally a drop-down+ API key) to switch and explore using models on OpenRouter.
I just run it in the terminal, every time I tried their integration it was missing a feature or it was easier to read on a terminal
I use it a lot with Claude Code.
It lacks a lot of features, but IMO feels less "busy" than the terminal version, which I like.
Very recently Zed also gained support for parallel sessions, which is nice. In general it's very obvious that a lot of effort goes into improving it, and it gets better with every release.
I used to run Claude code on terminal on zed. But the memory usage would balloon eating all my ram 128gb and have to kill the session every other day. I moved back to vscode. I don’t know if they addressed it
Works very well - whats your question?
both support ACP. works really well!
I'm loving it.
Just opened my current TS/TSX project and everything is working as expected.
Performance is fantastic. I used Sublime for a decade and always missed its native performance after switching to VSCode due to needing first class Svelte, Vue, or Astro support.
The only thing that bothered me is that it enabled the Tailwind LSP even though I'm not using TW and I couldn't stop it. Had to disable that LSP completely in the settings:
Thank you, Zed team, for creating Zed. It’s clearly a labor of love, and I really want Zed to work for me. It seems like a quality project, it’s fast, and the base editor is easy to use.
I gave it weeks though, and the surrounding UI just never clicked for me. The various AI panels are confusing, the global search is awkward, and something about the type rendering just didn’t ever look right (maybe I’m hallucinating this?). I use VS Code only grudgingly, but I do think its ergonomics are actually pretty reasonable. I came from Sublime before that. I’ll keep trying Zed, and I hope you succeed.
Zed is a great editor. I think they have done an excellent job and hope they are successful. That said, I do not feel compelled to switch to it. For a pure text editing experience, I've always felt most comfortable with Geany. When I want to extend the editor, I reach for Emacs. AFAICT, extending Zed means using Rust, and that's never going to happen.
Congrats! I just started playing with Zed last week. Changelog notes, for the curious: https://zed.dev/releases/stable/1.0.0.
Congratulations to the team, I've been on Zed exclusively for a couple of years and it has been nothing but great on macOS and Linux.
Congrats to the Zed team! I've been using a combination of Zed + Gram [1] (which I predict may lag behind this 1.0 release in features/fixes). They are both nice, fast editors. However, I switched to Sublime Text 4 again recently and... I'm surprised to see how much clunkier Zed feels than Sublime. I can't put my finger on it, but Sublime, although lacking in features, feels considerably more polished and performant.
[1] https://gram.liten.app/
It's all in the details, eg. in sublime if you use the goto panel and highlight a file it will immediately show a preview, in zed you have to click on it, so you lose the snappy feeling.
Bravo! I've enjoyed using Zed and seeing its progress. Still waiting on python notebook support.
I'm trying it out, looks pretty decent.
For better or worse, my current workflow is to do most things through WSL on Windows 11. VSCode supports running the editor natively on Windows, but then having an agent or something inside WSL that lets me remote control what's going on there. Does Zed do anything similar?
Currently I'm just access the workspace in Zed via Windows Explorer, but I wonder if that's going to kneecap some of the integrations.
EDIT: nm, Zed supports exactly the same kind of remote editor session, via hamburger -> File -> Open Remote
I feel like the last time I looked at Zed it didn't support windows, looks like it does now but it sure scared windows defender.
Great product! Would love to see some search (tree view) and git (staged vs unstaged diffs) improvements in the future!
I really like Zed but it's most recent big changes to Git integration and Parallel Agents has forced me to disable both of those features as the way they work just didn't suit me and my workflow
Congrats on 1.0!
Though it's a pretty big bummer to see that extension improvements were removed from the roadmap.
I’ve tried it multiple times, but the performance issues on different Macs are too significant to ignore. I appreciate responsive UI, but I also prioritize sufficient battery life.
Interesting because it tripled my mac’s battery life vs cursor
Still absolutely no support for screen readers?
Despite promising it for years and every comparable product having it.
Tried it yesterday. HUGE fan of how the agents work and how the editor feels.
Feature-wise, Zed is still far from VS Code, but for me, the change has been worth it for the performance increase alone. I'm really happy with Zed, and I think it has a bright future ahead. Congratulations on the 1.0 release!
Congrats to the Zed team! I really like your editor and it works surprisingly well, althought there are a few rough edges still with the python experience.
The debugger in Python FastAPI and mainly Django is not working as expected. Hopefully soon will be fixed.
Congrats on reaching your first major
I use zed as a quick editor for stuff using usaved files.
I don't like how it loses the session when I reopen it randomly (and not randomly every upgrade).
Good for them, but I wish they'd hurry up and catch up on some of the big missing features. Really hoping they'll accept my PR to add the missing call hierarchy feature before the GitHub issue turns 2 years old :)
1.0 and still has the wrong colours when ran in Wayland and lacks bitmap font support.
> 1.0 doesn't mean "done". It also doesn't mean "perfect"
Create issue in the Zed Github repository?
Don't need to create an issue, both have had issues for them for 2 years.
https://github.com/zed-industries/zed/issues/9057 https://github.com/zed-industries/zed/issues/12629
Sort of a recurring theme, I find. They have 600+ issues that have been open for over a year, was hoping they'd drive down the backlog a bit before declaring victory
Go look at any large project, they have 500+/1000+ issues and many are ancient. Chrome, Firefox, you name it. I wouldn't be surprised if many issues have even been solved or need new reproduction steps but there's a difficulty to triaging all the issues as well.
I tried zed sometime ago, and the limiting factor was devcontainer support. It looks like they’ve made some progress there https://zed.dev/docs/dev-containers
Serious question, is there any advantage to Zed if one does not use LLM assisted coding?
It's normal text editor like VSCode or Sublime. It's fast. The out of the box experience is good (auto configured LSP, tree sitter etc.)
It is somewhat faster and a fair bit less memory hungry than vscode?
Congrats Zed! GPUI has been a huge inspiration.
Whenever I think to myself “yikes that sounds too hard”, my next thought is “well, Zed team could probably do it”.
does this support plugins? How does it integrate with cmake projects?
Congrats to the Zed team! Great to see people continuing to work on important tooling like editors these days.
I hate to dismiss Zed for such a stupid reason, but I have tried to use Zed seriously many times and every time I stop because I can't get over the theme. I've tried basically every single theme I can find that is reasonably popular and they are all equally poor. VSCode and Cursor have vastly better default themes.
Does anyone have any suggestions here? I would love to use Zed more.
I use "Melange Light". Feels simple and clean, if you like light themes at all.
Does it really not let you change the colors? Am very unhappy at the modern trend to allow only canned themes.
What's your favorite theme, maybe we can point you to something close? If you have any special needs or usability issues (colorblindness is common), that's probably relevant too.
I use the default theme + the Catppuccin Icon Theme : https://github.com/catppuccin/zed-icons
Congratulations from me too — it quickly became my go-to editor (sorry, VSCode)
Why does signing up through Github require the "act on behalf" permission?
That seems risky.
Zed is one of my fav. piece of software of the last years :)
daily driver has been zed ever since they introduced helix more. still super excited to see how far it can go. congrats to them
Well done. I've been using Zed pretty much full-time for about 6 months now, and am happy with the experience.
There are still a few things PyCharm does better (debugging, for one), but overall Zed is very good and I haven't used PyCharm in months.
I still use CC in the terminal instead of inside Zed, and lazygit for reviewing git changes and other git actions (though Zed now does a decent job of the basics).
Sorry, I am not going to use and get attached to a code editor that is VC funded. You know the enshittification will happen sooner or later.
Huge congratulations to the Zed team!
Here is a top-level comment for people who want to post the things they wish Zed had.
Request: please be sincere if you claim "the one thing that keeps me from using Zed is X" ... because let's face it, there is probably more than one thing. Editor ecosystems are complex beasts, and it is ok if people are slow to switch, but the "one thing" claims are rarely credible to me. Anyhow, such comments are rarely consistent with how human nature works. People find rationalizations, and that's fine. It would just be nice if people were a little more self-aware. Changing editors is harder for some people more than others.
My suggestion: if you want to make Zed better for your use case, please smart by explaining who you are as a developer, what you've used, what your expectations are. And be intellectually honest about the last time you've made a big change to your development workflow. End soapbox.
I wish Zed had built-in APIs for extension developers to allow for more customizable text transformations. In particular, I want to write tools that have more control over what a buffer displays. Imagine a Markdown extension that gives Zed something close to the WYSIWG experience of Obsidian. To make this happen, I think something like a customizable presentation layer to transform the buffer's contents and adjust cursor movement would be a great start. Vim has a 'conceal' feature that could serve as an inspiration or reference point. [1]
I have no affiliation with Zed, though I have applied to work there, so I'm hardly neutral. I've been an enthusiastic user for probably two years. I don't expect perfect alignment with what I want, and sometimes the team doesn't respond how I would like with particular issues. But man, in a pretty suboptimal world right now, Zed is an amazing thing to have: open source, regular updates, extensions, nice settings. In the past I've used BBEdit, Eclipse, TextEdit, Sublime, Emacs, VS Code, Jetbrains, Helix. Zed is my favorite by far, probably because of the latency. It is an intangible feeling that just clicked immediately for me.
Personally, as a mostly independent developer/researcher, I go through bursts of re-evaluating my tools. To give some context about my newer tools over the last few years: Ghostty, Nushell, Podman, Nix, Mochi, Monodraw, Swish (window manager for macOS), Base (macOS SQLite editor by Menial), LM Studio, (probably obviously) Claude Code. So for a "seasoned" developer, I'm probably more open to new tools than most? Oh, totally off-topic but I think some of the lesser appreciated new open source tools / formats / conventions are: KDL (https://kdl.dev), Typst, and (evaluating) Djot, Cocogitto (Conventional Commits, took me long enough).
[1] https://alok.github.io/2018/04/26/using-vim-s-conceal-to-mak...
Congrats guys! I've been using zed since a few months ago, I would consider myself a "light" user but I do enjoy the experience. My only sour point would be the not so smooth integration with claude code. But I've learmt to live with it for now
Zed is a very polished and nice product. I tried hard to use it, especially when I decided to migrate away from Emacs. But NeoVim gives me everything I was looking for in Zed: Speed, a polished UI, quick startup, not overloaded. So between Zed and NeoVim I decided for the latter. I use Neovide in GUI and neovim in terminal. I don’t use AI alongside nvim, but claude code helps me configure my config file in lua. So my neovim has a 10k lines config spread of several files. It is my simple text editor with super fast movements, and it can become a full blown programmable interface for my Obsidian, for my journal writing, for coding, writing documentation. It can be as complex as I need it to be. And it’s super fast.
Such a pity remote dev containers are critical for me. I guess some SSH tunneling could help with it...
Umm… zed supports remote dev over ssh… what’s your concern?
And Zed even supports Dev Container
Strange, I'm on 2.4.1 already. Oh wait...this isn't about ZFS.
Sorry, can't help it, every time I see Zed i think of the ZFS Event Daemon
How is their emacs keymap support? I tried VSCode for a while but switched back to emacs because it was so slow and the keymap was not very good. I've been intending to try Zed but emacs is working well enough so the motivation isn't really there yet..
I've got emacs keybinds in my muscle memory and Zed works well for me, although there's no kill ring and the macro system is nothing like emacs. The former will be added at some point (there's an open PR), but I do not expect the latter will ever be comparable.
Looking at Zed (and Brave in another thread) I'm really firming up this idea that the "big funded private company model" for essential tech software is just most often idea. They don't know how to add features without also adding bloat and BS.
This is why I say Docker is the only real "success" story here. And note, I mean a success story for the users; Docker tries real hard to enshittify and fails, and that's good.
> Zed is also an AI-native editor.
My editor is dumb. No AI anywhere.
The only unusual thing is that I use ruby as primary glue language to everything, so in a way that editor (no longer maintained, similar to Linus' editor) is just a wrapper over ruby as such, and functionality in these scripts.
I have also found that it is not the editor that slows me down, but the need to have to think. This is also one reason why I try to make the specification as useful as possible. For instance, in one project that I use to compile everything from source, I use a ton of simple, mostly smallish .yml files that describe everything - allowed keys, allowed values, settings that are mostly just a pointer to where to fetch the source, how, how to compile it then and so forth. The ruby code then is mostly just a glue over that data. And that approach, while very simple, works quite well. Users can also modify settings, by modifying the .yml file or via commandline flags. And if need be, I could also use and populate a SQL database with that data (but for the most part, yaml actually suffices; I don't understand why people are so upset about yaml, and then only point at use cases where folks use mega-nested yaml files. These guys don't understand why simplicity is a benefit; admittedly yaml is not a perfect format either, I notice this when I have a long .yml file and then some forgotten ":" or "," due to manual copy/paste error, then it takes me a few seconds to notice what's wrong).
Zed has a "turn off all AI features" checkbox if you want to use that
Just a reminder that this was never addressed: https://github.com/zed-industries/zed/discussions/36604
One of the people working for one of their investors posts moderately controversial stuff on Twitter. Boycott them!!
This kind of nonsense really takes away from stuff that actually matters.