5 ms·
To my fellow Vim users out there, I would like to ask why you use Vim? For me, Vim is what my mentor was using so it's what I picked up. It's command-line orie
by click170 12y ago
To my fellow Vim users out there, I would like to ask why you use Vim?
For me, Vim is what my mentor was using so it's what I picked up. It's command-line oriented which is a huge win for me, and it's available everywhere (Mac includes it by default), and I haven't hit a roadblock that's been painful enough to get me to sincerely investigate other editors.
What has led you to continue using your editor of choice?
- codecurve 12y agoUbiquity, elegance and efficiency. I've been writing a series of blog posts on Vim that you may find interesting. http://danthedev.com/vim-part-1-why/ http://danthedev.com/vim-part-1-why/
- yawboakye 12y agoI used to use Vim as just another editor until I understood the importance of modes (through Drew Neil's Practical Vim[1]). He explained how the various modes allowed the programmer to, while at work, go through the same motions a master painter (a profession I deeply respect). I was sold, and now I see myself as a painter more than a programmer. Sometimes you need these stories, not extra features, to prefer a tool over several others. [1]: https://pragprog.com/book/dnvim/practical-vim https://pragprog.com/book/dnvim/practical-vim
- mynegation 12y agoI was a big Emacs fan once. I abandoned it in favour of vim for two reasons: longer shortcut sequences and it sucked in the terminal, shortcuts clashing with terminal sequences. Vim has huge ecosystem (plugins, color schemes, integrations etc), available everywhere, starts in a blink (unless you screw up the config)
- lazylester 12y agoI switched to vim after seeing the astonishing speed possible in Gary Bernhardt's ruby screencasts. My vim chops just get better all the time, the depth and breadth seem limitless. It always gets faster and easier.
- rifung 12y agoVim is what we used in school in my first programming class. While I understand the appeal of IDEs, I hate autocomplete as I feel like it gets in the way more than it helps. I type faster than most people I know though so that is probably why I don't really appreciate the autocomplete. I really really hate having to constantly use the mouse. Finally, I am fairly new to working but I really feel like using vim and the command line usually makes it so that you have a better understanding of what's happening. I don't think this is a problem inherent to IDEs but more that because they do so much for you, it's much easier to just get things done without actually having to understand what it's doing. I've had many teammates who could tell me how they got something working in terms of the steps they took in their IDE but could not tell me what those steps actually translated to doing (e.g. I went to this menu and did this as opposed to I had to add a dependency to so and so)
- alkonaut 12y agoBut is autocomplete the only feature distinguishing the IDEs from the editors? I'd say interactive debugger/watches etc are most important, followed by graphical tools in the case of frontend mobile/desktop development. Autocomplete isn't about speed, it's about context sensitive lookup in documentation. You should never have to alt-tab to a browser to check a function signature, that costs too much.
- rifung 12y agoAh interesting. Yes it's kind of sad but to be honest I still debug all my programs via print statements (and reasoning). I've been meaning to learn how to use gdb/jdb/whatever for a while. And I completely agree that having autocomplete for lookup is really awesome. I usually do just use the browser to check it. It's silly, and I'm not going to say that I'm faster than someone using an IDE, but using an IDE just gives me too much stress. But the most important thing by far is that I like how using a text editor forces me to really think about everything. For example, the way you order your imports, or what packages things belong in, how methods are named, etc matter much more. And I know it's silly but I find being forced to memorize method signatures enjoyable like a game of sorts, and in a way it pressures me to make sure my method/variable names are all very reasonable so they are easy to remember. I guess I'm just not hardcore enough to go after every bit of programming efficiency! I try my best to enjoy my work =D (not that I think you don't enjoy your work because you use an IDE of course!)
- krick 12y agoOh, I don't even know how to answer, really. I used quite a few editors (and IDEs) at one time or another, tried vim, because somehow it felt that everybody is supposed to try vim sooner or later, and still am using it. I don't feel like vim is perfect, it's just best what I've seen so far. Clones of Textmate and such doesn't really count as text editors after you used something like vim or emacs and probably I'm just not old enough to consider something like acme when I was still in search of a text editor. And vim ultimately is how software should be in my opinion: fully configurable through text, no UI if not needed, lots of simple shortcuts for everything (which isn't really achievable without modes, however it's what I understood only much later). And command-mode, yeah, it's crucial. In the last years there appeared several more editors striving for something like this: Yi (which looks promising, but I never tried it; and I suspect there's much worse situation with plugin availability yet, anyway), Sublime (isn't really better than vim to be worth switching, configs aren't as simple as vim's, didn't have solid vim-mode the last time I checked and is much less ergonomic by itself, also problems with plugins, and — huge disappointment, really — it's proprietary; proprietary text editor?! Just no.), Atom (I didn't play with it much, but I impressions aren't the best — first of, damned humans, they use WEB-BROWSER ENGINE to edit text in 2014! Not that my computer hangs up when I run Atom, but still it's pretty heavy; I somehow expected text-editor implemented by github to be more usable out of the box, and it isn't, cannot even properly highlight many languages out of the box; and this LighTable-style command prompt — I don't know how I feel about it; it's nice, but, again, there isn't such simplicity as in vim, it autocompletes everything even if I entered something comletely non-autocompletable; and I'm not that big fan of coffeescript). So, yeah, nothing good enough here. Several times I tried to switch to emacs, which I almost like (although, again, it also isn't perfect, too much built-in useless stuff (like ugly GUI) and I'd like to use some Clojure instead of elisp), but it just didn't play well somehow and I came back to vim every time. But vim's simplicity also comes with few huge minuses: vimscript (and don't say "neovim" again, it solves nothing), and, well, no GUI (that is, even in gvim it's still only text-editor, you can't inline image or show rendered markdown or latext in the same window, no matter how much you want to). Both are pretty serious problems, as they slow down/prevent from making new plugins as easily, as in emacs for example. So I see future like this: vim dies, everybody switches to neovim, because it's trendy, and I finally switch to emacs with evil-mode.
- falcolas 12y agoWith as much time as I spend on remote systems for my entire career, Vim was a natural choice. At first, I used it simply due to this fact, but over time I learned more and more about Vim's capabilities, and I still use it regularly. I've found MacVim to be a mixed blessing over the years; I appreciate the combination of fully featured Vim combined with the native Mac editor interface, but I honestly prefer to be in the terminal as much as possible.
- dllthomas 12y agoWhile I can give a lot of reasons why I think I still use vim and why that's not a bad choice, I'm sure the primary explanation for why I use vim is that it's what my father used and introduced me to when I was young.
- jacderida 12y agoI was a C# and hence VS user for many years, so I mainly used that, but at the same time, also casually used Vim for editing csproj files, MSBuild scripts and the like. Then I moved away from C# and Windows to Linux and DevOps stuff. At that point, I started to use Vim fulltime. Getting into it, I saw you could keep your configuration in a dotfiles repository, so that you didn't need to remember how to setup a billion plugins on a new OS install (although admittedly, that's true for any editor) and that was when I seriously invested time in getting a good setup. Now, I just can't imagine going back to anything else. No matter how good you seem to get, you just never stop learning stuff about it that makes it easier to do your work. Initially I was afraid of not having intellisense, as I'd developed what I consider to be a bit of a crutch on that, from years and years of using VS. But, it turns out, you can get very near IDE like intellisense with plugins like YouCompleteMe. For me, the approximation is acceptable, due to all the other power that comes with Vim. I also love that I can use it in the terminal (I don't use gvim) and still have it look fantastic, meaning, using it along with tmux, I rarely need to leave the terminal for anything now. I like that, because it means I get to learn how to do everything really fast on the command line, without the aid of a mouse. I really just consider the whole command line environment to be my IDE now, and I love it! I do have to admit though, if I was still doing Java or C#, I'd probably still keep the IDE around for doing big refactors and some code analysis. Now though, I'm mostly using dynamic languages and bash scripting, so the full IDE isn't as necessary (at least I haven't found it to be, so far).