Live data from Hacker News

Trying out Zed after more than a decade of Vim/Neovim

sgoel.dev

91–100 of 154 posts

Re: Trying out Zed after more than a decade of Vim/Neovim

#92
post #7

The tab completion for the AI suggestions is 100% the most annoying feature I've ever used. I just want to indent my line and not have to keep hitting escape 1000 times. Awful.

It’s unfortunate that it converged on that rather than F1.

Re: Trying out Zed after more than a decade of Vim/Neovim

#93

Earlier quoted context omitted.

Surround is amazing. I agree that all these vim modes are nice, but nothing beats the real thing.

I think I understand the use case for a smart surround plugin like this; I watched the demo video and saw and lot of picking-and-pulling text. What I don’t understand is the development workflow that includes so much text manipulation. If you’re writing new code, there’s nothing to manipulate. If you’re refactoring existing code, wouldn’t you want the support typical AST-based refactoring tools provide? Where’s the s…

For me (maintainer of Zed's vim mode) it comes down to a few things:

1. LSPs differ per-language, and so I'm never sure whether I'll get lucky today or not. It's more reliable for small changes to talk about them in terms of the text.

2. LSPs are also quite slow. For example in Zed I can do a quick local rename with `ga` to multi-cursor onto matching words and then `s new_name` to change it. (For larger or cross-file renames I still use the LSP).

3. I err as a human continually, for example in Rust a string is `"a"` and a char is `'a'`. It's easy for my javascript addled brain to use the wrong quotes. I don't know of any LSP operation that does "convert string literal into char literal" (or vice versa), but in vim, it's easy.

We are slowly pulling in support for various vim plugins; but the tail is long and I am not likely to build a vim-compatible Lua (or VimScript :D) API any time soon.

For example, most of vim-surround already works so you could get the most used parts of mini.surround to work with just a few keybindings `"s a":["vim::PushOperator", { "AddSurrounds": {} }]`, but rebuilding every plugin is a labor of love :D.

Re: Trying out Zed after more than a decade of Vim/Neovim

#94

Earlier quoted context omitted.

>I will never understand how you go back from a very customized editor setup because when the very customized setup inevitably breaks the amount of headache you have is roughly proportionate to the amount of customization, whereas software with strong defaults tends to deal with that for you. This is particularly the case with neovim which, in almost deliberate defiance of any systems thinking, just tends to consist…

Haha this is so true. I stopped upgrading neovim when something little broke and I couldn't work out how to fix it an hour or so. It was something stupid like the column bar not having the right colour anymore. Just hope that nothing breaks in an OS upgrade.

Yeah, they changed the default colorscheme in neovim at some point in the last year or so. I have an extremely minimal config and don't even use syntax highlighting or tab completions but I could not get it to render the way it used to. I wasted at least 30 minutes on this for absolutely no good reason. So I git bisected, made my own build (which took maybe 10-15 minutes) and will likely never upgrade neovim again.

Re: Trying out Zed after more than a decade of Vim/Neovim

#95

Earlier quoted context omitted.

Surround is amazing. I agree that all these vim modes are nice, but nothing beats the real thing.

I think I understand the use case for a smart surround plugin like this; I watched the demo video and saw and lot of picking-and-pulling text. What I don’t understand is the development workflow that includes so much text manipulation. If you’re writing new code, there’s nothing to manipulate. If you’re refactoring existing code, wouldn’t you want the support typical AST-based refactoring tools provide? Where’s the s…

I think you’re just highlighting the different preferences people have between a text editor and an IDE. Obviously the line between the two is very blurry. I much prefer being able to efficiently edit text myself rather than relying on refactoring tools.

Re: Trying out Zed after more than a decade of Vim/Neovim

#97

Just last week some hero claimed to be adding helix keybindings to zed ( https://github.com/zed-industries/zed/issues/4642#issuecomme... ). Golly I hope they succeed.

What I find strange about an open source product funded by VC money is that all of the people are helping make it a better editor and yet when they eventually exit none of the money will go to them.

Compare that to vim where it's truly an open source product.

Re: Trying out Zed after more than a decade of Vim/Neovim

#98

I wanted to like Zed but tying buffers to tabs is a deal breaker for me. They have really good vim motion support but don't let you view any buffer in any pane.

Tried for a long while to use Zed. It was great and I loved it - and maybe I could have switched to a GUI editor for real though for the first time in my life.

But man. File trees and tabs are the worst DX I can possibly imagine. Try as I might, I just could not get used to the tab and tree workflow. Creating new files killed me. Hiding the tab didn’t really help because the editor assumes you’re using tabs and at that point it doesn’t feel like buffers, it feels like tabs with the tab bar hidden (go figure).

I’m not even a buffer power users, but I think the default assumption of buffers over tabs, and explore over a file tree, led to 1000 other great decisions that make vim vim.

I think unless the zed core team really tried to move away from tabs and trees (and I don’t think they would nor should) they’ll fail to capture a meaningful share of vim users

Re: Trying out Zed after more than a decade of Vim/Neovim

#99
post #5

> my workflow consists of switching back and forth between a terminal window and an editor window. Same! I run neovim in tmux together with stuff I hack on. I switch beteen tmux windows with shift-arrows and it works so well. I run this full screen in Ghostty. No distractions. I try Zed and VSCode and I always come back to this setup. It works so well for me personally.

> I try Zed and VSCode and I always come back to this setup. I have Ctrl+` set to switch focus between the editor and the terminal panes in VSCode, so I can toggle between them pretty easily as this is also my workflow If anyone's wondering, here's what I have in my keybindings.json { "key": "ctrl+`", "command": "workbench.action.terminal.focus" }, { "key": "ctrl+`", "command": "workbench.action.focusActiveEditorGrou…

ctr+` is the default behavior on VS Code I use it all the time and I didn’t set it up and I’m sure as hell neither did my co workers.

It’s a nice short cut if you have a keyboard with backtick to the left of 1 in the numeral row. If you’re from a country where keyboards have a different key there, I would recommend setting up a short cut manually.

Re: Trying out Zed after more than a decade of Vim/Neovim

#100
post #64

Earlier quoted context omitted.

I've always just closed vim to use the terminal, and started it up again to go back to editing. I find it difficult to operate any other way. I know people who use ^Z to suspend vim and then foreground it again.

> I've always just closed vim to use the terminal You don't mind losing all your editor state? If you don't like working with multiple terminal windows, why not open a term within vim with `:term`?

What editor state are you losing when you leave vim?

I run a pretty light vanilla vimrc (60 lines maybe) and with two lines you can enable vim undofiles and returning the cursor to the last location upom reopening a file. For me, quitting vim is functionally equivalent to ^Z?

Post reply on HN