News for hackers. Stuff that matters.
Re:The Future of the Vim Project by kzrdude on Thursday August 10, 2023 @07:53AM (#37074975)
One "meta feature" that was dropped was the ability to build the editor with or without different features. vim --version shows a long list of +/- features, neovim doesn't do that.

I'm sure neovim dropped a lot but I don't have the full overview. Prominently it dropped support for giving !commands access to the actual tty. Commands that access the tty have to be used through the command :term instead.

Neovim prominently dropped support for gvim as well (GTK UI). Instead they focus on being embeddable in new ways to create UIs.

Re:The Future of the Vim Project by devnullbrain on Thursday August 10, 2023 @09:38AM (#37076031)
!pwd works for me in nvim, I use it every day
Re:The Future of the Vim Project by kps on Thursday August 10, 2023 @10:17AM (#37076458)
Try something that uses input, e.g. a pager (`:!git log`), or a password (`:!sudo something`), or `:!top`, or something with even the simplest formatted output (`:!watch -n1 lsusb`).
Re:The Future of the Vim Project by kzrdude on Thursday August 10, 2023 @12:06PM (#37077955)
!git log is a good example. It works differently in vim and neovim.
Re:The Future of the Vim Project by random_mutex on Thursday August 10, 2023 @11:32AM (#37077506)
>One "meta feature" that was dropped was the ability to build the editor with or without different features. vim --version shows a long list of +/- features, neovim doesn't do that.

What's wrong with all features enabled by default?

> I'm sure neovim dropped a lot but I don't have the full overview.

https://neovim.io/doc/user/vim_diff.html

>Prominently it dropped support for giving !commands access to the actual tty. Commands that access the tty have to be used through the command :term instead.

Why would you run an interactive command with `:!` ?

Re:The Future of the Vim Project by kzrdude on Thursday August 10, 2023 @11:49AM (#37077711)
What's wrong? I didn't mean it like that, I've just listed it as a thing that was removed.

And about !, It's also listed as a thing that changed, no judgment. Regarding usecases I think if it's possible, some user will take advantage of it.

Re:The Future of the Vim Project by NobodyNada on Thursday August 10, 2023 @12:19PM (#37078136)
> Why would you run an interactive command with `:!` ?

I ran up against this limitation recently. The kitty terminal exposes APIs allowing processes to communicate with the terminal using escape codes. I wanted to configure Neovim to access the system clipboard using kitty’s API, so that I could copy/paste from within Neovim even over SSH. However, this would require Neovim to give the clipboard subprocess access to the controlling TTY. (Running it within :term would not work, as the escape sequences would thus be passed to Neovim’s virtual terminal emulator, not the instance of kitty that Neovim itself is running within.)

Re:The Future of the Vim Project by aumerle on Thursday August 10, 2023 @01:25PM (#37079000)
neovim supports OSC 52 out of the box so clipboard over SSH should just wrk in kitty or any terminal that supports OSC 52. kitty of course supports a lot more than OSC 52 but for basic opy/paste of plain text, OSC 52 is sufficient.
Re:The Future of the Vim Project by NobodyNada on Thursday August 10, 2023 @03:49PM (#37080860)
Neovim doesn’t support OSC 52 unless I’m missing something. There’s an open issue: https://github.com/neovim/neovim/issues/3344

It’s easy to implement OSC 52 copy with a simple script/plugin, but apparently not paste without adding some code inside of Neovim itself.

Re:The Future of the Vim Project by kps on Thursday August 10, 2023 @12:29PM (#37078267)
> Why would you run an interactive command with `:!` ?

Why wouldn't you? Vi's `:!` is simple and general.

If neovim has an equivalent, it must be obscure enough that no one has mentioned it yet, and it seems to me that the obvious thing to do would be to make `:!` do it by default, and put neovim's current `:!` behaviour behind a `compatible` flag.

Re:The Future of the Vim Project by kzrdude on Thursday August 10, 2023 @01:42PM (#37079247)
That does sound kind of like a missed opportunity. Not sure why it's not like that.

The closest neovim equivalent I can think of is :term <command>

Re:The Future of the Vim Project by kps on Thursday August 10, 2023 @02:01PM (#37079563)
`:term` is much more intrusive; you can't just `:!foo` and get on with what you're doing. For one thing, you can't `:term foo` with a modified file, which is not an unusual state when you're editing.
Re:The Future of the Vim Project by kzrdude on Thursday August 10, 2023 @02:31PM (#37079920)
Using `:!` as a filter for text and running interactive commands doesn't overlap for me, so I haven't seen that as an issue.