Live data from Hacker News

Remove Ex-Mode from Neovim

github.com

71–80 of 123 posts

Re: Remove Ex-Mode from Neovim

#71
post #25

Earlier quoted context omitted.

Yea, I finally got fed up one day and put nnoremap Q in my .vimrc. No more "how did I get HERE?"

I usually record my throwaway macros to q (because hitting qq is so easy), so I've bound Q to 'call the most recently defined macro'. I would post something to put in your .vimrc, but I use the vim emulator evil-mode in Emacs. This way, I can skip the awkward @q step, and keep hitting Q instead of @@ to re-run the macro.

I use for this. It's very gratifying, mashing the spacebar to repeat a macro.

Re: Remove Ex-Mode from Neovim

#72

Earlier quoted context omitted.

Until neovim actually does something cool and new that you want to use. Ex mode isn't something I need often , but it's fantastic on a sufficiently slow connection (of which there are fewer these days) or a sufficiently broken terminal (slightly more common), and when you need it you need it to work.

Why don't you just keep both installed?

When neovim does something new and cool that I want to use, then ex-mode-in-vim will obviously not support that new and cool something. If neovim continues to provide an ex mode, then it will be available to me.

Obviously, whether this makes sense depends on what the something is - if it's some GUI flourish, then it's irrelevant either way, but a GUI flourish is not going to be why I move to neovim in the first place.

Re: Remove Ex-Mode from Neovim

#73
Can they implement ex over the same msgpack interface they want for GUIs? The ability to switch back and forth between ex mode and visual mode is much lower priority than the ability to interface with my editor over something resembling ex (which itself is not super high priority, but this definitely falls in the "cons" column for neovim).

Edited to add:

FTA:

"As for the ex command-line utility, that can easily be implemented as separate program that talks to nvim via msgpack-rpc"

Great! I have no to minimal objection.

Re: Remove Ex-Mode from Neovim

#74

Earlier quoted context omitted.

As much as vim is known as the modal editor, that sounds like you're describing Emacs (I'm using evil-mode instead of vim these days.) Whereas vim has dual-modality as its core, it's very well-defined and self-contained as far as modes go, and with the exception of this Ex mode, you can get out of any weird state by pressing Esc. Emacs, on the other hand, has potentially dozens of different 'modes' you can accidental…

I'm interested to hear why you're using evil-mode instead of vim if that's how you feel. I'm using vim with slimv for Lisp hacking at the moment and I have to admit that there are some whoopsies, but not enough to make me learn to use a whole new editor :)

Well, rant and occasional surprise aside, I've found evil-mode to truly be a better implementation of vi than vim itself, at least where it concerns me (as formerly a pretty advanced vim user and plugin developer, it took me some adapting to stop using all the ex vim idioms and the like.) It's faster to handle big files and execute macros, overall snappier and has a profoundly better %s///g with real time preview.

I really did start using Emacs when I started learning Clojure(/Script), though, and made it my main language and platform investment. And org-mode had been playing a part in my want of switching for a while, building up for years. I also told myself it'd be better to hack in a lisp but Elisp is so fucked up I still haven't mustered up the courage to properly learn all its old and unexpressive idiosyncracies (god, even creating a closure requires explicit verbosity!) Meanwhile I don't think I can bear VimScript anymore--since getting into Clojure my language standards have gone considerably up. As a result I do the odd hack but haven't developed more powerful plugins in a while, not in elisp nor vimscript; I'm in a psychological limbo there. Kinda hoping Guile-Emacs takes off so I can do stuff in scheme.

Re: Remove Ex-Mode from Neovim

#75

While I don't particularly care for ex-mode, I think it's weird to be calling it Neo 'vim' without it. If it's going to become more of a radical departure from Vim and start omitting features as well as adding, I would rather they change the name of the project instead, one that alludes to its Vim heritage rather than having a prefix that means 'new'. Is it a new version of Vim? Or an editor that started as a fork of…

The name is temporary, and discussion about the name has been temporarily halted because there are more important concerns.

https://github.com/neovim/neovim/issues/272#issuecomment-370...

Re: Remove Ex-Mode from Neovim

#76

Earlier quoted context omitted.

Personally, I think this is an excellent change. If neovim remains 100% compatible with vim, down to every minor issue, then it will be very hard to usefully improve. Personally I don't use vim, even though I like the concept of vim, because it simply doesn't fit with the ecosystem I want to use (it seems to be hard to integrate clang for auto-complete and syntax highlighting into vim for example, without long hangs…

You may want to try https://github.com/Valloric/YouCompleteMe Does exactly what you describe wanting, and very well IMHO.

I'd like very much if Neovim adds functionality like YouCompleteMe out of the box. It's probably the most "complicated" in terms of dependencies, etc. VIM plugin that I have to install.

Re: Remove Ex-Mode from Neovim

#77
post #55

Earlier quoted context omitted.

I'll tell you the dinky stupid reason why I started using vim over nano: I like my shells to have white backgrounds. I don't know why, but it's just restful to my eyes. Nano's default syntax highlighting on bash scripts is to highlight strings in bright yellow, which on a black backdrop makes sense, but on white is impossible to read. It took years of working with shell scripts, and a familiar litany of "I'll just lo…

"The thing is, they could probably have won me over a million years earlier by starting me off at insert mode on the first line!" I wouldn't like "open in insert mode" at all - if I'm opening an existing file, I probably want to edit it, not just add text (especially not at the beginning) - which means the first thing I'm probably wanting to do is navigate, which is much easier done in command mode. When opening a ne…

Very interesting! I'm more interested in it as an attraction to new users; I agree that "morally" it should probably start in command mode since it should be designed for its most common use cases first.

I'm just observing that I would have understood it much more rapidly if I'd started in insert mode my first few times, because then the expressive command mode enabled by the Esc key seems "layered onto" the basic insert-mode editing that a new user expects to be the main purpose of a text editor. From insert mode, you can page down and delete and insert pretty straightforwardly; and you get gently introduced to command-mode when you say "hey, how do I save this document now?". So pedagogically it would have really helped.

Re: Remove Ex-Mode from Neovim

#78
post #75

While I don't particularly care for ex-mode, I think it's weird to be calling it Neo 'vim' without it. If it's going to become more of a radical departure from Vim and start omitting features as well as adding, I would rather they change the name of the project instead, one that alludes to its Vim heritage rather than having a prefix that means 'new'. Is it a new version of Vim? Or an editor that started as a fork of…

The name is temporary, and discussion about the name has been temporarily halted because there are more important concerns. https://github.com/neovim/neovim/issues/272#issuecomment-370...

Thank you. This is good news.

Re: Remove Ex-Mode from Neovim

#79
post #51
post #6

Removing pretty powerful feature just because author of fork doesn't use it sounds… well, actually author of fork can remove whatever he likes, but presenting neovim like "refactord vim with more features" isn't fair or even plausible in this case. And for what reasons? Oh, I see, it makes code complicated. Did he think vim'c codebase is scary for no reason? Removing all the code from vim would be the ultimate simpli…

If you like certain VIM features you can keep using VIM.

If you really like ex you can just use ex.

Re: Remove Ex-Mode from Neovim

#80
post #77

Earlier quoted context omitted.

"The thing is, they could probably have won me over a million years earlier by starting me off at insert mode on the first line!" I wouldn't like "open in insert mode" at all - if I'm opening an existing file, I probably want to edit it, not just add text (especially not at the beginning) - which means the first thing I'm probably wanting to do is navigate, which is much easier done in command mode. When opening a ne…

Very interesting! I'm more interested in it as an attraction to new users; I agree that "morally" it should probably start in command mode since it should be designed for its most common use cases first. I'm just observing that I would have understood it much more rapidly if I'd started in insert mode my first few times, because then the expressive command mode enabled by the Esc key seems "layered onto" the basic in…

I have mixed feelings on the pedagogy. On the one hand, it would have eliminated some frustration, which would have presumably been helpful. On the other, driving home that "normal mode is normal" serves a pedagogical purpose as well. The power of vim really starts to emerge when you internalize that inserting text is just another action.
Post reply on HN