7 ms·
I'm generally a big fan of zed and have been using it for 60%ish of my dev time for 6 months or so. A couple of nice things to note: - It really is remarkably
by Octoth0rpe 3y ago
I'm generally a big fan of zed and have been using it for 60%ish of my dev time for 6 months or so. A couple of nice things to note:
- It really is remarkably responsive,and makes one really notice how UNresponsive everything else is. I have reasonably fast machines, so we're not talking about the difference between 5ms typing lag and 500ms, but it's still pretty surprising. VSCode never felt slow on my macs until I started using Zed.
- They seem reasonably responsive to feedback. There was some contention around how search/replace was initially implemented, and the current builds have something much more usable IMO. I'm not sure how much that was driven by community feedback, but the changes were great.
- The debug syntax tree mode is a really neat feature that I think demonstrates how much more advanced zed is under the hood than older editors that are doing syntax highlighting via regex.
There are a few downsides that I'm hoping get addressed soon:
- The collaboration workflow/security isn't very clear to me. You sign in via github (no other option???), there are 'contacts' (I guess these are github usernames?), and 'channels' (where do these live? on zed's servers?). I would really like to know if I can self-host the chat server and use a company oauth provider rather than github. If the diffs being passed around are going through zed's servers, that may be a showstopper for the company I work for as well. If they're p2p and encrypted, maybe not.
- I would love to see ollama integration. This + continue is the only reason why I spend any amount of time in vscode now. There's an issue for it here: https://github.com/zed-industries/zed/issues/4424 https://github.com/zed-industries/zed/issues/4424
- jasonjmcghee 3y agoRe Ollama in Zed It’s very early, but I’ve been building a “trigger command/script and have it output anywhere” project that you could use as a bandaid solution. I added Ollama support (you can specify model in settings) https://github.com/jasonjmcghee/plock https://github.com/jasonjmcghee/plock It works wherever you are
- rob74 3y ago> VSCode never felt slow on my macs until I started using Zed. I guess you haven't used Sublime Text before?
- stevage 3y agoI had to stop using sublime because it kept updating its search index at inconvenient times and slowing to a crawl. That and self updating in ways that broke my most important plugin.
- SnowingXIV 3y agoI’m still using Sublime for the references. Without fail I can load up any version of an application including older rails apps sub 3 and it instantly has context. I can easily jump to definitions and even on hover will show me where they are being used. In the context of foos.bars.baz I could easily infer where bars is defined. Seems to work across languages, doesn’t matter if it’s js, ruby, in an erb file it just works. Not to mention the flavor of vim feels great. VSCode complains and I’ve got to hardcode an alternative absolute path gemfile for Shopify’s LSP to work. It also feels clunkier, even on powerful machines. If Zed can give parity with Sublime on the references (I just tried and it did not seem to find any references when clearly bars was there) might be an interesting change. Considering it’s open source now I’d happily switch as it does seems super quick. I might also be old-man yells at cloud and the copilot integration doesn’t appear important yet, but current sublime support is pretty poor for it and seems like that’ll be a thing more and more.
- nicoburns 3y agoI was hitting that bug for about 6 months, but at least for me they have actually fixed it now.
- bastawhiz 3y agoI switched _to_ VSCode because Sublime was occasionally so slow at times that it was unusable. It was very fast 95% of the time, but then I'd `git pull` on a very big repo and my machine would become unresponsive while Sublime did...something.
- GrumpySloth 3y agoI think on Linux at least it freezes due to watching too many files using inotify to update its sidebar. I wish there was an option to disable that. Same thing happens with Sublime Merge. It’s unusable on giant repos.
- mjaniczek 3y agoNow I wonder what's the typing lag of 10xeditor, compared to Zed...
- flexagoon 3y ago> older editors that are doing syntax highlighting via regex. I mean, Emacs, which can probably be considered the oldest code editor at this point, got built-in tree-sitter (which is what Zed uses under the hood) support in the last release. So it's not really related to editors being new or old
- The_Colonel 3y agoAs I understand, tree-sitter implementation in Emacs is currently more like a foundation for development / adoption by plugins, it's not really usable as-is today.
- chlorion 3y agoThere are multiple tree-sitter based major modes that are usable right now! I use python-ts-mode, rust-ts-mode, c++-ts-mode, bash-ts-mode and a few more right now and they work well. You can write your own modes with it also, but I have not yet looked too deeply into this. It's definitely usable today in emacs-29, but not every language has a tree-sitter mode yet. Whoops my tab was outdated and I didn't see that others already replied.
- nequo 3y agoEmacs already had tree-sitter before 29, just not built in. You can do syntax highlighting[1] and structured editing with it.[2] What is missing for it to be usable in your view? [1] https://emacs-tree-sitter.github.io/syntax-highlighting/ https://emacs-tree-sitter.github.io/syntax-highlighting/ [2] https://github.com/meain/evil-textobj-tree-sitter https://github.com/meain/evil-textobj-tree-sitter
- epcoa 3y agoYour understanding is outdated/incorrect. Already a number of major modes have corresponding ts modes and I use them daily. This includes C++, Rust, Python, yaml, toml, json, Java, typescript, dockerfile and cmake. True not every major mode has treesitter in the official release but I’d hardly call the above “not usable”
- sswezey 3y ago
- benreesman 3y agoI’m really picky about my tools in general and latency in particular, and I give Zed a spin from time to time, it’s sweet. Clean, minimal design aesthetic, tree-sitter, tight code, it’s a nice bit of work and I dig it a lot. But emacs 29 with the right flags and a tuned GC (no one does this! it’s got a heap-size from the 80s!) is just as snappy and has more amazing packages than VSCode. There’s a market for people who want something snappier than VSCode but less labor-intensive to set up than emacs, and I wish them luck: I think it’s a front runner there. But I can’t imagine switching my main axe up with a holy shit moment a lot crazier than tree-sitter in 2024 and not having the render loop be in JS.
- shanusmagnus 3y ago> But I can’t imagine switching my main axe up with a holy shit moment a lot crazier than tree-sitter in 2024 and not having the render loop be in JS. I can't parse this sentence -- could you unpack it? Not being a dick, I really want to know what you mean.
- nccnm 3y agoCan you share more about your Emacs 29 setup? Thanks
- benreesman 3y agoI mentioned it above but I’m flattered by your interest (and remember your username as someone serious): my old dots were ok and are floating around but we’re putting together a multi-editor curated setup for good defaults and an emphasis on good, available-weight models as first-class citizens. It’s a 404 until I get to an RC, but aiming for March 1st on “hyper-modern.ai” for all MIT on emacs, nvim, and vscode.
- jitl 3y agoHow do you get a reasonably fancy Emacs to start up/open files quickly? Every time I try to get into EMacs after adding a few packages it becomes painfully slow to open a file for editing. Then I try to understand Emacs server, then I fail / give up and go back to vim.
- akam4n4n 3y agohow to you use ollama with vscode? some links/ details would help me a lot!
- Octoth0rpe 3y agoI use this extension: https://continue.dev/ https://continue.dev/ their docs are pretty good, but it's also evolving pretty rapidly. For example, you no longer need to run the continue server yourself, it's entirely self contained in the vs code extension. I believe the docs still refer to how to run it manually. I work for a pretty conservative company re: GAI, and the ollama + continue combo made it through legal.
- appplication 3y agoVSCode has always felt incredibly slow to me, even compared to e.g. pycharm. , which I have always assumed of be otherwise roughly comparable. VSC’s lag in basic code inspection and linting became so annoying I had to switch off it. We’re not talking seconds, but maybe tenths of second lag, for everything at all times. I understand plenty of people love VSC, but honestly I have never been able to share that enthusiasm.
- ahmedfromtunis 3y agoYep. For some reason, suddenly, vscode became painfully slow on my decently spec'd machine; 3 to 7 seconds per keystroke just to analyse the file to show intellisense tooltips. Yes, that was in seconds per keystroke. The irony is that I moved from neovim to vscode because setting up intellisense in (neo)vim was always a hassle and never worked quite well. Pylance seemed too attractive not to give it a spin. Now the lag has as mysteriously diminished, but still vscode is very far from being as snappy as (n)vim.
- McBeige 3y agoIve been wanting a syntax-tree-viewer for months, to help me learn functional languages where figuring out what is even going on syntax-wise in the exmaples provided by tutorials keeps being an issue for me. Does anyone know of a way to see a syntax tree for any given snippet of code for any given language? I'd try Zed, but I'll have to wait for Linux support.
- natrys 3y agoI am not sure what debug syntax tree mode does in Zed, but if it's about tree-sitter generated syntax tree, you can see that in Neovim or Emacs (assuming you have major-mode/grammar loaded): 1) In Neovim, do `:TSPlaygroundToggle` 2) In Emacs, do `M-x treesit-explore-mode`
- kamaal 3y ago>>I have reasonably fast machines, so we're not talking about the difference between 5ms typing lag and 500ms, but it's still pretty surprising. I really envy people who can sense passage of time between intervals of 5 milliseconds and 500 milliseconds. My sensibility begins over a second. And to be honest even that is least of my issues. Same with start up time, I restart the IDE only once in a few days. I thinking spending a second or two extra for it is any where in the ball park of what I would call wasting time.