Live data from Hacker News

The problem with vim

haldean.org

61–70 of 90 posts

Re: The problem with vim

#61

Recently I was studying Programming Languages Theory with Racket (using this book - http://cs.brown.edu/courses/cs173/2012/book/ ) and I didn't like DrRacket. So I decided to use Racket with Vim, but the only way could do it was through GNU Screen and Slime plugin for Vim. It works, but it takes several seconds for expressions to travel from Vim to GNU Screen and it is quite inconvenient. Furthermore, I don't have in…

I tried using slimv as well some time ago but I never managed to get it working properly. I don't remember exactly what happened but I believe there were some bugs (like the lag you mention) and I couldn't figure out how to properly transfer just the piece of code I wanted to the repl. Plus I didn't want most of the plugins that slimv added (paredit for instance).

I ended up using this method http://technotales.wordpress.com/2007/10/03/like-slime-for-v... instead. I put just the basic functions into a plugin and that has been enough for me ever since. I use it for lisps though, not haskell.

Re: The problem with vim

#62
post #58

Earlier quoted context omitted.

As a vim-but-never-vi user I'm interested in hearing more about what you consider to be clunky/cludgy/not working quite nicely.

All the extra stuff that makes vim more than just a vi clone. Everything from built in stuff like the auto-completion to plugins like syntastic. Everything technically works, but never nicely and I always end up frustrated with the warts and just go back to plain vi. I should give emacs a shot, I've heard evil is supposed to be a better vi than vim.

Other editors/IDEs you are using with vi-mode plugins also have extra stuff that make them more than just a vi clone, from built in stuff like auto-completion to syntax checking plugins. etc.

Re: The problem with vim

#63
A little anecdote from a project I worked on in the mid-90s (hence terms like "4GL".) The project had a lot of back-end programming (C and PL/SQL) that we mostly wrote in Vi, but the front end UI was this weird 4GL thing which I can't remember the name of.

One particular quirk of this 4GL was that pressing the escape key while in the editor would close the editor, do not save, do not prompt, do not pass go and collect $200. Very bad feature, especially when switching between editing in this and in Vi a dozen times a day.

In the end, everybody on the team had a bottle cap on their desk that they could put over the escape key when firing up the 4GL editor to stop accidentally hitting the damn key out of sheer muscle memory all the time.

Re: The problem with vim

#64

Most of these vim emulators are open source, so there's always the chance to just fix it and do a pull request. The main two vim emulators that I am using are: - XVim for XCode - Evil for Emacs And both do a really good job. Evil beats XVim hands down, but XVim is a lot better than the others I tried: IdeaVim (for Intellij), Vrapper (Vim for Eclipse), and Vintage (Vim for Sublime). Out of these, vintage is by far the…

wow, thanks for Vrapper... this is great!

Fwiw, if you find yourself wanting a Vim plugin for just about any piece of software but don't know if it exists or not, just assume it does and google it.

Re: The problem with vim

#65

Most of these vim emulators are open source, so there's always the chance to just fix it and do a pull request. The main two vim emulators that I am using are: - XVim for XCode - Evil for Emacs And both do a really good job. Evil beats XVim hands down, but XVim is a lot better than the others I tried: IdeaVim (for Intellij), Vrapper (Vim for Eclipse), and Vintage (Vim for Sublime). Out of these, vintage is by far the…

> "libVim" I think it would be better for developers to allow their programs to launch external editors. That way users can pick whichever editor they like. All the developer has to do is create a temporary file, run a command to open it, and watch for changes. (Thanks to vimperator, I am using vim to write this.)

Most IDEs let you set a hotkey to run the current file through an external program (I generally use Ctrl-Shift-V to open in Vim) as well as a setting to automatically detect and reload a file that's been changed outside the IDE. It's not perfect integration, but it works pretty well once you're used to the workflow.

Re: The problem with vim

#66
post #59

I remarked to a friend a couple months ago--right when I started to feel about the same way as the author of this article--that I love vim. As I said these words, I realized that the truth in them is sort of startling. I love vim. No, it's not like loving a person, but it's at least as strong an emotional connection as loving my favorite coffee mug or loving a particularly thoughtful gift from a friend. As an aside,…

The worst thing for me is editing an Excel sheet. Every time I have finished typing something in a cell, I hit ESC, which results in clearing what I have just written...

Sadly the ViEMU author decided not to do Excel (and doens't plan too). But, for Word, Outlook, Visual Studio, ViEMU does a semi-decent job.

Re: The problem with vim

#67
post #25

Though I'm a long-time vim user, I've never even used cf" nor do I know what it means. However, I find most vi emulators work very well with the standard movement, yanking and inserting commands, and some basic visual modes. I used ViEmu quite successfully a few years ago when I was doing C#, and I use vi mode on bash every day without many problems. If you keep it simple, you should be able to work across emulators…

If you do not know what cf" does, you've been using Vim like you would use a normal text editor. Which is fine. But you're missing out a lot. Do yourself a favor and go figure out what's the difference between: cf" cF" ct" ci" ca" Note: you can substitute c for any "verb" (d, y, ~, etc) and " for many delimeters. :help text-objects

Thanks for the pointers, will do. One strange thing about vim is everyone seems to have a core set of commands they use. An interesting tool.

Re: The problem with vim

#68
A lot of Vimmers have this exact problem. Vim has thousands of features, but each person ends up using / loving a couple dozen. The problem is, it isn't the SAME couple dozen so for an emulator to make any significant subset of Vimmers happy requires implementing thousands of features.

This is why all attempts to clone Vim end up failing, and why even amazing implementations (like Evil) fall short when that ONE muscle memory you depend on is missing.

Re: The problem with vim

#69

I remarked to a friend a couple months ago--right when I started to feel about the same way as the author of this article--that I love vim. As I said these words, I realized that the truth in them is sort of startling. I love vim. No, it's not like loving a person, but it's at least as strong an emotional connection as loving my favorite coffee mug or loving a particularly thoughtful gift from a friend. As an aside,…

That's the worst part of it, I'll find myself typing :w in other editors as I switch back and forth between vim and, say, xcode.

Re: The problem with vim

#70
post #25

Earlier quoted context omitted.

If you do not know what cf" does, you've been using Vim like you would use a normal text editor. Which is fine. But you're missing out a lot. Do yourself a favor and go figure out what's the difference between: cf" cF" ct" ci" ca" Note: you can substitute c for any "verb" (d, y, ~, etc) and " for many delimeters. :help text-objects

Thanks for the pointers, will do. One strange thing about vim is everyone seems to have a core set of commands they use. An interesting tool.

The thing with Vim is that even though you can use it like a regular text editor, it isn't too good at that. But when you grok the Vim philosophy, enter one command, verb + noun, then do your edit and press esc, you'll feel like flying.
Post reply on HN