4 ms·
I haven't seen any comment discussing it so here is kind of a vital question: Why would I want to do that? I don't need vim to me more configurable. Just a few
by erikb 12y ago
I haven't seen any comment discussing it so here is kind of a vital question: Why would I want to do that? I don't need vim to me more configurable. Just a few weeks ago I looked into vim plugins for the third time into my vim history, but again I found it unnecesary. Most plugins don't improve at all what I want to do with vim.
Examples: Prettier status line? Don't need it. Tree view of my project? Don't need it, or I use the shell command called tree. Autocomplete? I started learning the APIs of the tools I use because it makes my writing code better and much, much faster. Therefore I don't need that anymore. Git integration? Why would I want that? ":!git" is fine. The sorround plugin would be an idea, but it's key usage is strange in my eyes.
Not spending this time into individualization and instead using this time to learn more about vim has significantly increased my code generation and allows me more easily to work on other systems with the same efficiency as on my own.
If you have some real arguments for plugins I am really, really curious to learn what they are. But please consider before writing if spending the same time into learning how to solve your problem with vim capabilities would not be the better and faster approach.
- bad_user 12y agoAs both an Emacs and an IntelliJ IDEA user, I wouldn't mind the lack of autocomplete, but I do mind the lack of features for ... debugging, documentation and quickly jumping at definitions, including those in other people's projects that I import as dependencies. I ended up reading a lot of source-code that way. Emacs' ability to open REPLs and work with those, with a neat workflow (e.g. you edit text in your file, then press a shortcut to reload the REPL or maybe just send the expression under the cursor, is definitely nice, since it's very interactive). It's also nice to have good Git integration. I can select any fragment (like a function) and quickly go through its history. I cannot do that easily with ":!git". Emacs can also do a lot of things related to editing text. For example I use Org Mode for managing my tasks / TODO lists, whereas other people use Trello, or Google Keep, or EverNote or other apps that lock you in and that never do what they are supposed to do. A TODO list is a freaking text file and having the ability to manage that from within my favorite text editor is surely a win and hey, I can also synchronize that in the cloud. Because really - here it isn't Vim vs Emacs anymore, but Emacs versus your browser's TextArea. Get it?
- erikb 12y agoI appreciate your detailed comment. It gives me the chance to see it from an Emacs point of view. Starting repls is a great thing, I have to admit. I can do that partly by e.g. ':!python -i -c "whatever"' but it's not really integrated. I also love to do "other" things in text files instead of websites, because text files allow you to do anything with it. Automated tasks, reformatting, compiling to other formats like diagrams, storing in the cloud, or a repo, or simply adding it to an email. I don't see why I need plugins or special modes for it, though. I think that's more an argument for learning text editors in general. No matter if you use vim, emacs, sublime, or maybe atom, in any case you gain a huge advantage over people who can only be efficient inside a huge IDE or their web browsers. The other things like debugging, documentation generation, etc are in my eyes not tasks for a text editor. I expect to do that in the shell and it works there. Jumping to definitions is possible in Vim btw. Under the hood it integrates with ctags which is a typical tool to index code definitions, I think (or does it only exist for vim?). The git example, in my eyes, is perfect for what I meant, though. You can't do some things as directly or easily with ":!git" but that also works the other way around. No plugin enables you to do everything you can do with ":!git" and I bet if you write git aliases for what you want to do, you can nearly be as efficient in the things the plugin can do. The added cost is that you need to write them yourself. The added gain is, that you learn to use git better and you can even use the aliases when you are not in vim.
- bad_user 12y agoEmacs' Org Mode gets you hooked once you get used to it :-) For example it can track the time it takes to work on a task and it can easily hide/show descriptions. So it goes beyond simple text editing. Of course, I believe it has been ported to other text editors. At least I know there is a port for Sublime Text, but it's incomplete and much less capable. Vim probably has a port too, but then if you end up customizing Vim, you might want to take a look at Emacs :-) CTags is a pain, since you have to reindex your files periodically and it doesn't work well for other people's libraries. In IntelliJ IDEA it simply works, you can just click on a class / function definition and if it doesn't have the sources available for that JAR (say it's a library you depend on), it downloads those sources automatically and takes you to the definition. For Emacs it works if you have the right plugin installed - works for Clojure and for Scala / Java for example (though for Scala / Java, we are talking about an Eclipse-based engine running in the background :)) I do get the mentality of Vim users, I've been there and I even use Vim sometimes, but depending on the problems you're working on and the platform you're using, I lean towards the IDE approach nowadays. And Emacs is like a general purpose and non-bloated IDE.
- nazgob 12y agoI'm a Vim user myself and I miss only one thing from Emacs (for now...). They have better infrastructure for running async jobs. Vim is blocking so it can be annoying. One of NeoVim promises is to fix that.