5 ms·
So.... who wants this? Vim users like vim as it is, warts and all. Emacs users already use emacs and typically don't want to learn vim.
by thorwavimwawa 12y ago
So.... who wants this? Vim users like vim as it is, warts and all. Emacs users already use emacs and typically don't want to learn vim.
- iand675 12y agoI'm using it with pretty good results so far. I had to stop using Emacs for a long time because I was developing a case of Emacs pinky, but I can appreciate that it does a lot more out of the box. After switching to Vim, I really came to appreciate its idioms too. Spacemacs lets me get the best of both worlds.
- adlpz 12y agoI want this. Well, in fact, I already use Emacs with Vim keybindings, so I don't need it, but I would have loved it some time ago. What I (and I believe most vim users) like about vim is not the software itself, but the concept and ideas behind it: the modal editing, the movement commands, the composability of them, etc. But the truth is that Emacs is, for lots of usages, better software. It's more extendable, has more features, it's even better written. So using Emacs with a vim-friendly UX seems like a great idea.
- Xcelerate 12y agoThat's a bit of an overgeneralization. I'm a vim user, but am always willing to learn something that works better for me.
- tincholio 12y agoJust to provide a counter example... I've been a long-time (13 years or so) Emacs user, and some 3 or 4 years ago, I switched to modal editing using Evil. I find it simply simpler and more efficient than traditional Emacs bindings. I actually started using vim more often after that, too.
- hammerandtongs 12y agoTwenty five year Vi(m) user here. I switched to Evil and Emacs last year. The combination of Vim and Emacs is a much better Vim. org-mode is life changing. In general I've found that the plugins in the Emacs environment make more sense and simply work better then Vim equivalents.
- uncletaco 12y agoOrg-mode is god mode. I'm an Emacs with Evil user myself.
- emidln 12y agoI'm attracted to it as a clojure developer. This seems to offer a superior nrepl integration and a debugger. That said, vim with neobundle, unite, fireplace, rainbow parens, vim-sexp, vim-repeat, vim-surround, and one of the many tmux integrations makes for a good enough clojure dev experience.
- tuhdo 12y agoUnite, fireplace, rainbow parens, vim-sexp and vim-surround are all available in Emacs with its own and better implementation. If you want Unite equivalent, check Helm which is created before Unite and is still actively maintained. See one of Helm package demo: http://tuhdo.github.io/helm-projectile.html http://tuhdo.github.io/helm-projectile.html. The same for rainbow-parentheses. Actually, Emacs got something better than rainbow-parentheses for visual aiding parentheses: https://github.com/syl20bnr/spacemacs/issues/1173 https://github.com/syl20bnr/spacemacs/issues/1173 For proper sexp manipulation, check this guide with great animations: http://danmidwood.com/content/2014/11/21/animated-paredit.html http://danmidwood.com/content/2014/11/21/animated-paredit.ht... For Clojure, in Emacs you got a debugger than can step expression by expression: http://endlessparentheses.com/cider-debug-a-visual-interactive-debugger-for-clojure.html http://endlessparentheses.com/cider-debug-a-visual-interacti... If you want to know features for Clojure that already configured in Spacemacs, check its Clojure documentation: https://github.com/syl20bnr/spacemacs/tree/master/contrib/lang/clojure#features https://github.com/syl20bnr/spacemacs/tree/master/contrib/la... You got all IDE features like refactoring and jump to symbols More demos: Here are some nice features that Emacs and its 3rd packages provide: - Powerful automatic indentation with aggressive-indent: https://github.com/Malabarba/aggressive-indent-mode(scroll https://github.com/Malabarba/aggressive-indent-mode(scroll down for demos). It does not only indent the current line, but the whole semantic context around your cursor. - Live grep:http://tuhdo.github.io/static/live_grep.gif http://tuhdo.github.io/static/live_grep.gif - C/C++ refactoring with built-in parser: https://github.com/tuhdo/semantic-refactor/blob/master/srefactor-demos/demos.org https://github.com/tuhdo/semantic-refactor/blob/master/srefa... - Lisp Code reformatting: https://github.com/tuhdo/semantic-refactor/blob/master/srefactor-demos/demos-elisp.org https://github.com/tuhdo/semantic-refactor/blob/master/srefa...). As far as I know, there's none Lisp code reformatting outside of Emacs. - Access to a list of project with a few key strokes: http://tuhdo.github.io/static/helm-projectile/helm-projectile-switch-project.gif http://tuhdo.github.io/static/helm-projectile/helm-projectil... - Quickly access any file in your project, as large as Linux kernel, instantly, regardless of where you are in the project, and within a few keystrokes: http://tuhdo.github.io/static/helm-projectile/helm-projectile-find-files-1.gif http://tuhdo.github.io/static/helm-projectile/helm-projectil...) - Jump to any file depends on context, even if the file path is in a plain ASCII text file: http://tuhdo.github.io/static/helm-projectile/helm-projectile-find-files-dwim-1.gif http://tuhdo.github.io/static/helm-projectile/helm-projectil... - Copy files from anywhere to anywhere: http://tuhdo.github.io/static/helm-projectile/helm-projectile-find-file-copy.gif http://tuhdo.github.io/static/helm-projectile/helm-projectil...) - Delete files anywhere; files are always at your finger tip to do whatever with them: http://tuhdo.github.io/static/helm-projectile/helm-projectile-find-file-delete.gif http://tuhdo.github.io/static/helm-projectile/helm-projectil... - Switch between other files with same names but different extensions: http://tuhdo.github.io/static/helm-projectile/helm-projectile-find-other-file.gif http://tuhdo.github.io/static/helm-projectile/helm-projectil...). Work not only for C/C++ but other languages, and is customizable. You don't have to configure anything, like adding include paths for the command to search. Everything is automatic. Just use it as it is. - Jump to tag definition, from its own parser or external parser like GNu Global: http://tuhdo.github.io/static/c-ide/helm-gtags-jump-dwim.gif http://tuhdo.github.io/static/c-ide/helm-gtags-jump-dwim.gif - Jump up to parent: http://tuhdo.github.io/static/c-ide/senator-go-to-up-reference.gif http://tuhdo.github.io/static/c-ide/senator-go-to-up-referen... - Do you like outline tree?: http://tuhdo.github.io/static/c-ide/sr-speedbar.gif http://tuhdo.github.io/static/c-ide/sr-speedbar.gif - Interactive outline tree: http://tuhdo.github.io/static/c-ide/helm-semantic-or-imenu-with-struct.gif http://tuhdo.github.io/static/c-ide/helm-semantic-or-imenu-w... - Easily move back and forth using the interactive outline tree: http://tuhdo.github.io/static/part3/helm-semantic-or-imenu-2.gif http://tuhdo.github.io/static/part3/helm-semantic-or-imenu-2... - References retrieved from its Emacs internal parser: http://tuhdo.github.io/static/c-ide/semantic-symref.gif http://tuhdo.github.io/static/c-ide/semantic-symref.gif - Beautiful compile output: http://tuhdo.github.io/static/c-ide/compilation-compile.gif http://tuhdo.github.io/static/c-ide/compilation-compile.gif - Frontend support for GDB: http://tuhdo.github.io/static/c-ide/gdb-many-windows.gif http://tuhdo.github.io/static/c-ide/gdb-many-windows.gif - Code completion: http://tuhdo.github.io/static/c-ide/semantic-boost-demo.gif http://tuhdo.github.io/static/c-ide/semantic-boost-demo.gif - Open man page for symbol at cursor: http://tuhdo.github.io/static/part3/helm-man-woman.gif http://tuhdo.github.io/static/part3/helm-man-woman.gif - Emacs open 39MB C file: http://tuhdo.github.io/static/performance.gif http://tuhdo.github.io/static/performance.gif - Emac opens multi-gigabtye file: http://www.emacswiki.org/emacs/VLF http://www.emacswiki.org/emacs/VLF Note that in the demos you may see me type in the commands. You can think of it like the start menu in Windows, but actually those commands can be executed quickly with a shortcut. I type in the commands for demonstration purpose to Emacs users. Those demos are just tip of the iceberg.
- mikekchar 12y agoMe! 20 year Emacs user, switched to Vim after I realized how much I like modal editing. I miss the things I used to have in Emacs, though. But for a less selfish reason, our team usually does pair programming and we often pair program, each with our own computer connected through a shared tmux session. Because most people on the team prefer Vim, we have standardized on that which is really hard for new people on the team who have no experience with modal editors. Having a compromise where both people can use the same editor without forcing people to one paradigm or the other would be fantastic. Having said that, I tried out Evil mode a few years ago and it fell pretty widely from the mark for an advanced vi user (not just Vim). It had basic support, but if you did any of the complicated stuff that makes vi efficient, it didn't really work. Some people in this thread are saying that this has improved substantially so I'm really looking forward to trying it.