4 ms·
Ask HN: Replacement for VIM
Hi HN,
I've been using vim since university to do software development. I love that it's on virtually every platform and is fast.
I'm looking to upgrade. Is there a replacement that allows me to split screens (vertical/horizontal) and virtually never use the mouse?
I've tried Sublime in classic mode, not enough split screens for my workflow.
Intellij only support vertical split and the vim plugin is lacking.
Thanks!
- slambam 12y agotmux with vim
- midgetjones 12y agoThis. There's some good thoughtbot posts on the subject: http://robots.thoughtbot.com/a-tmux-crash-course http://robots.thoughtbot.com/a-tmux-crash-course http://robots.thoughtbot.com/seamlessly-navigate-vim-and-tmux-splits http://robots.thoughtbot.com/seamlessly-navigate-vim-and-tmu... http://robots.thoughtbot.com/love-hate-tmux http://robots.thoughtbot.com/love-hate-tmux
- zingermc 12y agoVim can already do horizontal and vertical splits. If you use tmux and fire up multiple instances of Vim, you'll lose some good things like ctrl+n autocompletion of words in other files.
- kbenson 12y agoI won't be able to offer much help, I'm still using VIM, but I'm curious as to what is spurring you to change? Are you just exploring to see if there's anything better and/or finding interesting features of other editors, or are you finding something lacking?
- antubbs 12y agoI guess this is my concern as well. I'm not sure what the need is for the shiny new object in this case; I've never felt limited by Vim, but perhaps there are particular features or capabilities that the author is interested in?
- therealidiot 12y agoI thought vim could already split both horizontally and vertically, with the :split and :vsplit commands
- farresito 12y agoYes, vim definitely can. He probably is looking for an editor that support the splitting like vim does and hasn't found one yet.
- kazinator 12y agoIf that is the right interpretation of the question, then the question lacks a reason for wanting a replacement. "I like Vim; it is fast, runs on many platforms and I've been using it for development since university. I know that it can split windows horizontally and vertically. But for some inexplicable reason, I want to replace it: is there something else that can split windows horizontally and vertically?" It kind of "does not compute", you see?
- oneandoneis2 12y agoWait for neovim?
- jballanc 12y agoOr don't wait...the neovim team is taking a very incremental approach so that (at least for my fairly complex setup) everything still works as expected.
- rayiner 12y agoUograde from VIM? Emacs.
- ulisesrmzroche 12y agoTry Atom.io on Vim mode. Split screens with command + k + arrow key.
- toblender 12y agoWow! Atom is pretty cool. A bit different than vim (horizontal split): control + w + s
- steveeq1 12y agoWhat's wrong with emacs?
- dustintran 12y agoYou can split screens (and virtually never use the mouse) in Vim. What particular feature are you looking for here?
- eliben 12y agoWhat's the problem with splitting the screen in Vim? Or is this not the problem you're trying to solve? I regularly have Vim open split to 2-6 windows, depending on the screen. I prefer in-vim splitting to out-of-vim splitting (tmux et al) because all buffers are shared for quick jumping between them, completion, copy-pasting, etc.
- 300 12y agoVim already can split window both horizontally and vertically. If that's not good enough for you, you could maybe try different approach: keep Vim, and try some of the tilling window managers (if you're using Linux), like i3 or awesome.
- farresito 12y agoYou have several options: like someone has already mentioned, vim + tmux works amazingly well, and that's what I personally use. Not sure what you are using. A second option is emacs + evil-mode, which, to be honest, is pretty good and would definitely recommend it if you want to move away from vim but have the biggest compatibility. That said, what's the reason you want to move away from vim? Once you have the right plugins, there's no editor that can beat it. I personally use vim + tmux for pretty much everything except for clojure, for which I use emacs + evil-mode (paredit is very very nice, and the vim equivalent didn't work well for me).
- hashtag 12y agoWhy not emacs + evil-mode full time over vim + tmux?
- farresito 12y agoWooops. Didn't see your question, so answering now. I simply like vim way more than emacs. evil doesn't work very well with a lot of the emacs extensions, and there are a lot of vim extensions that do not exist (or are just a simpler version) in emacs. vim + tmux is just too good. emacs syntax highlighting is inferior in a lot of languages (at least the ones I mainly work with), too. Sure, there are a lot of things in emacs that are way better than vim, but, for me, vim wins by far (my vimrc is not short and I use a lot of plugins).
- gfodor 12y agofor dynamic languages i always use vim with tmux. for Java/C# I use IntelliJ/VS.NET with IdeaVIM or viemu since those IDEs allow easy refactoring and navigation based on the type system. I don't program in any other statically typed languages like Go or Scala so YMMV. I picked up tmux about 2-3 years ago and it was a major step forward, so I recommend you do that first before abandoning vim.
- aylons 12y agoEmacs is the obvious answer: it allows keyboard-only operation, has a very flexible frame splitting tool and you may leverage your VI experience by using evil-mode.
- kazinator 12y agoThere is no replacement of Vim; it is the best thing of its kind. I've been using it since 1994 and wouldn't even think about replacing it. The current region of the screen you're working in can be split horizontally with Ctrl-W s, and vertically with Ctrl-W v. Moving among the splits is done using Ctrl-W + movement keys, where movement keys are arrows, or h, j, k, l. Plus undoubtedly in other ways. There are ways to rotate and rearrange windows themselves, and perform actions that open windows: many familiar actions can be prefixed with Ctrl-W so that they open a new window, such as chasing a tag (Ctrl-]).
- T-R 12y agoIf split screens are your thing, it might be worth it to try a Tiling Window Manager. I agree with you that Sublime doesn't natively have enough split screens, so I use XMonad, and split them and organize them as I please.
- wbond 12y agoNot sure if splitting is your only real issue with Sublime, but the Origami package may help: https://sublime.wbond.net/packages/Origami https://sublime.wbond.net/packages/Origami
- jarin 12y agoInstall Janus and all your heart's desires will be fulfilled: https://github.com/carlhuda/janus https://github.com/carlhuda/janus Bonus: plop this in your .vimrc.after for super easy movement around split windows nnoremap <C-h> <C-w>h nnoremap <C-j> <C-w>j nnoremap <C-k> <C-w>k nnoremap <C-l> <C-w>l
- notduncansmith 12y agoIf you use a Mac, iTerm2 has nifty Cmd+D binding to split windows vertically, and Cmd+Shift+D to split horizontally, then Cmd+[ and Cmd+] to move around. It actually has an advantage over splitting Vim since you can actually split off a whole shell. You can achieve the same thing with tmux of course, this just feels very natural and is available out of the box with no configuration required.
- johncoltrane 12y agoWhat about telling us what you want to upgrade? Are you looking for a "better" looking interface ? Try Sublime Text, Atom or Brackets. Are you looking for better $LANGUAGE support? Try any $LANGUAGE-specific IDE. Are you looking for better scriptability? Try Emacs, possibly with evil-mode. Are you looking for a better editing experience? There's nowhere to look.
- webmaven 12y agoI'll note that you can upgrade Vim itself via plugins. The easiest way I've found so far is to use a 'distro' like spf-13: http://vim.spf13.com/ http://vim.spf13.com/