7 ms·
Command line vim is one of the most productive editing environments on the planet, why wouldn't we?
by YawningAngel 7y ago
Command line vim is one of the most productive editing environments on the planet, why wouldn't we?
- bori5 7y agoLove vim but would hate to use it for Java where I found an IDE such as Eclipse much easier to work with. Back in the day when I used to do that sort of thing.
- maccam94 7y agoLanguage Server Protocol plugins are adding functionality for completion/docs/refactoring these days, and vim-jdb looks pretty decent.
- bori5 7y agoI feel like I need a PhD in configuring vim to do that stuff. The fact vim has been around forever and still hasn’t caught up with an IDE for ease of use doesn’t convince me at this point to use it for coding Java. Eclipse/IntelliJ is simple download and everything ready to go, git integration, all kinds of auto complete , debugger, etc... you hit the ground running pretty much. Can’t say the same about vim for Java, but think it’s fantastic that progress is being made to close the gap. Now where’s the simple one line config command to get me started ;) ....
- h1d 7y agoI don't see there's a reason to use vim locally as other editors are far advanced when vim isn't changing at all. But there's a use on the server side because you only have vim or emacs there.
- oblio 7y agoAs someone who's been doing sysadmin-ing things for a while... (10+ years) I don't think I've ever seen Emacs installed on any server where it wasn't maybe pulled in as a dependency by something else. Emacs is almost never installed by default, you could instead install micro (https://micro-editor.github.io/ https://micro-editor.github.io/) instead, use normal keybindings, and call it a day :-)
- josteink 7y ago> As someone who's been doing sysadmin-ing things for a while... (10+ years) I don't think I've ever seen Emacs installed on any server Chances are the Emacs-users are working on files on that server remotely via TRAMP, from their nicely and 100% personally customized Emacs-installation. Why bother replicating all that setup on a server when you don't have to?
- oblio 7y agoTrue, but that also means that as someone who regularly SSHes into servers, you don't need to learn anything about Emacs. For local stuff on the servers, vi(m) is always there (https://pubs.opengroup.org/onlinepubs/9699919799/utilities/vi.html https://pubs.opengroup.org/onlinepubs/9699919799/utilities/v...), for remote operation you can use any other editor ranging from Emacs + TRAMP to VS Code + remote extension to ...
- Lio 7y agoSince Vim/NeoVim take a "batteries not included" approach to set up I'm just happy that we've gone from a state of "you have to use an IDE to get code aware features" to "it's hard to set up code aware features in NeoVim". Hopefully other projects such SpaceVim or individual plugins can provide an easier path for those that want it. I think it's on NeoVim's own road map to add LSP support out of the box. Of course it's also worth pointing out that whilst it's nice that NeoVim is learning new tricks nothing about having better CLI based tools available means that you can't still use GUI based IDEs if that suits your use case better.
- brbrodude 7y agoUgh, Eclipse is disgusting. IntelliJ is much better, and also has a very nice VIM-mode plugin(last time I checked Eclipse one's were bad), so, I prefer having it both ways. Comments mocking vim(like the original parent) are really missing it badly, nothing has so much staying power for no reason.
- dmortin 7y agoI'd say language support is the most important for productivity if we talk about programming. Having the whole API under your fingertips, doing safe refactorings easily, etc. are much more important for productivity than simple editing. If you can refactor a class, move functions, rename variables across the whole project safely (string replace is not enough) with a few clicks then you are much faster than when you have to do all of these manually. I'm saying that as an emacs user. I prefer emacs, but if I had to work with a language (e.g. Java) where language support is much more sophisticated in a tool like, for example, IntelliJ, then I'd use that instead, because it would make me much more productive.
- fhennig 7y agoThis. First of all, I don't know about vim/neovim, but I think a lot of the issues apply there as well. When I develop software, I don't need an editor, I need a development environment. I spend 90% of my time reading code, so reading and navigating the codebase should be very straightforward. Most importantly I want to have a tree view of the files in the project, I want to be able to jump to function/class definitions and I want to show usages of functions. Another big thing is debugging. IntelliJ has really good debugging capabilities. Also auto-completion. I think some of these you can get in vim/emacs, but it doesn't come out of the box. I sometimes miss some of my emacs shortcuts/features, but not enough to drop all the amazing things that IntelliJ is offering.
- simias 7y agoI often switch between several programing languages, I often switch between projects, I like being able to dig into the code source of some tarball I found online without configuration. I find that deep editor integration gets in the way more often than not. For navigating the project I use helm on emacs, fzf on vim. I can just fuzzy-match anything I'm looking for instantly. I find filesystem treeviews useless, they use a lot of screen real estate and they're annoying to navigate, I don't see the point. For navigation ripgrep does most of the job complex language engines do and it works across languages without any configuration. For C I sometimes use cscope and ctags but even there I often just call ripgrep because why not? For auto-completion I also find that a very naive algorithm completing words from existing buffers works reliably and efficiently, with zero configuration and tweaking. Sure you don't get context-aware completion but that never bothered me too much to be honest. For debugging I can't really disagree with you, both Vim and Emacs are very limited in that regard (Vim especially so). That being said, maybe if I gave those big IDEs a chance I'd never go back, who knows. Besides I could spend an hour listing things I think Vim and Emacs do wrong so it's not like I think they're perfect editors.