5 ms·
I'm a vim guy, but I've been wanting to try emacs for a long time. Any tip for a convert like me? Is the "trick" just to make the jump and persist until it cli
by tribaal 12y ago
I'm a vim guy, but I've been wanting to try emacs for a long time.
Any tip for a convert like me? Is the "trick" just to make the jump and persist until it clicks? How do I still get my job done in the mean time?
- samsaga2 12y agoUse emacs with evil mode.
- tribaal 12y agoDoes that help at all for muscle memory and things like that?
- JackMorgan 12y agoI use emacs with evil, it gives you a fully functional vim emulator inside emacs. Since vim is the best text editor and emacs is the best OS, it's perfect!
- pyre 12y agoThere are things that are missing, but you can modify them. Examples: I use Ctrl-6 a lot in Vim, but Evil mode only implements it as Ctrl-Shift-6. But it's easy to create the binding (especially since the function that implements the functionality is already there). The :sort command doesn't exist, but there is :sort-lines, etc. The other thing that is a bit lacking is folding. Emacs doesn't have folding baked in, and there are several folding implementations (outline-mode, hide-show-mode, etc). I haven't found a good setup of all of the z* commands for folding. spacemacs does a good job of setting them up for org-mode (which leans on outline-mode for folding), but also doesn't implement zj / zk folding movement bindings.
- megalomanu 12y agoYes ! I highly recommand this plugin to those who are not familiar with the strange Emacs shortcuts ... but also to those who are not familiar with vim. evil-mode allows to learn Emacs and Vim at the same time, it's perfect for a beginner.
- deevus 12y agoI'm the same as you. I am Windows/Mac user and I spent a bit of time trying to configure emacs across all my machines. I think it's fair to say that it wasn't designed to be configured cross platform, which is a shame. When I can be bothered I will have to create .emacs files for each platform that I use
- preavy 12y agoI disagree. I have been using the same init.el across Windows and Mac for several years. Hardly anything needs to be tailored but you can inspect the system-type variable if it is really necessary.
- deevus 12y agoHow do you handle package management? I just couldn't get things to go my way. Either it worked on Windows or Mac, not both. What flavour of Emacs are you using on Windows?
- db48x 12y agoThe biggest cross-platform difficulties are the emacs version and OSX. Make sure all your computers have the same major version (all 23 or all 24; I recommend 24 as it actually has a package manager). OSX was for several years a problem for emacs as there were two or three incompatible ports that did things differently; it's probably gotten better over time. As preavy said, the rest can be handled by checking the OS type, machine name, user name, etc in your init files (they're not just config files, they're emacs lisp programs that get run during startup). I keep mine in a git repository to make syncing the changes over time easier.
- preavy 12y agoI agree that you should use the same Emacs version. On the Mac I recommend http://emacsformacosx.com/ http://emacsformacosx.com/. I have my .emacs.d symlinked to a folder in Dropbox. So to set up on a new machine I just have to install Dropbox and make a new symlink. This also worked for me in Ubuntu. I was concerned when package management came in as a lot more stuff seems to get downloaded, but it just seems to look after itself.
- coding4all 12y agoYou can try Evil Mode. => http://www.emacswiki.org/emacs/Evil http://www.emacswiki.org/emacs/Evil
- a3n 12y agoAlternative: go full-on emacs, without evil. I think you need to do that, at least at first, to really learn emacs. How to still get your work done: continue to use vim for your "work," and at first just use emacs to learn emacs. As soon as practical, start using emacs to do just one thing from your work. Somewhere soon after this you'll be comfortable enough to do everything from emacs (although still not an expert), and then you'll be able to decide to stick with it or go back.
- megalomanu 12y agoI started to learn Emacs with its native commands and shortcuts. But I switched to evil when I noticed than I was unable to memorize the shortcuts for some basic actions like "add a character to the end of each line". Today I use evil-mode for all tasks and to be honest I don't think I'm missing something. The Emacs shortcuts are not mandatory to benefit of the power of Emacs, which resides essentially into its modularity and plugins.
- eyko 12y agoI started off with emacs, moved to vim, and now i'm back on emacs with evil mode.
- mulander 12y agoI can tell you how I switched a couple of years ago. I started to use emacs for the sql-oracle mode since it was tons better than the standard sqlplus client shipped by Oracle. I still kept doing most of my coding in vim but gradually was learning emacs by working with that sql mode (there is of course a mode for every database there). Later on I started doing notes in org-mode as it was also nicer than anything else I used at that time. The ability to do ad-hoc tables/spreadsheets in it helped a lot. Then stuff just started rapidly speeding up. I found out that browsing changesets with the emacs vcs mode is great (you can open up a file in annotation mode and flip back/forward through revisions). Browsing the filesystem, grepping from withing emacs etc. By playing around with the modes I got really used to how the editor ticks and switching to coding in it daily was just a natural evolution as I started doing more & more stuff from inside of emacs.
- jacobmoe 12y agoMy experience was similar, except with Sublime. I used Sublime for most things and org-mode for note taking. Then I started using emacs for personal projects but kept using Sublime at work. Eventually I started to feel almost as productive with emacs as Sublime. Once I found projectile and helm-projectile for project navigation, I made the switch entirely.
- dimitar 12y agoContinue to use your previous IDE or editor and gradually switch to Emacs as you learn more.
- Kurtz79 12y agoIf you just want to manage multiple tiled command-line windows, just try vim+tmux (getting session management on top of it). There was at least another tiled window manager able to embed GUI windows.
- vijaykiran 12y agoYou might want to try https://github.com/syl20bnr/spacemacs https://github.com/syl20bnr/spacemacs
- pyre 12y agoI've been looking into spacemacs, but I've found it to be a bit bloated vs. my personal config. It takes longer to start up, and sometimes just typing text in Insert Mode was sluggish (I imagine due to one of the autocomplete/typeahead libraries). That said, it has a lot of nice things and nice ideas. I'm undecided if I want to port my personal config to spacemacs, or just pull things out of spacemacs into my personal config.
- vijaykiran 12y agoI think I had sluggish behaviour sometime ago - but the updates to the config are happening at a very fast pace. I'm a pretty happy user. Also, the chat on https://gitter.im/syl20bnr/spacemacs https://gitter.im/syl20bnr/spacemacs is very active too, may be someone there could answer your specific questions (if you haven't asked already). EDIT: you can also disable the packages you don't need, perhaps that's an option.
- pyre 12y ago> EDIT: you can also disable the packages you don't need, perhaps that's an option. I realize that, but it also means tracking down which thing is misbehaving because it's not immediately obvious. I haven't given up on Spacemacs, but for the time being, I'll need to swap back and forth with my personal config so that I can get work done. At the very least, there are things that I like about it that I'll want to figure out and pull into my personal config. There are also some things that could use a bit more documentation. For example, porting parts of my config over, I didn't realize that :nohlsearch was already bound to evil-search-persist-remove-all in the Spacemacs initialization.
- jpradeek 12y agoTry Spacemacs: https://github.com/syl20bnr/spacemacs https://github.com/syl20bnr/spacemacs Being a Vim user of 4+ years, and having made 2 previous attempts at switching to Emacs, this is the setup that finally made me immediately productive enough to get work done. Been using this as my primary environment for more than a month now.
- wooger 12y agoThanks for this, looks like like a better, more encompassing version of the evil-mode + customisations that I've hacked together thus far for emacs. Amongst many other changes I've remapped the spacebar (while in normal mode) to send a C-x, colon (:) to send a M-x, so I have access to a ton of emacs commands while mainly just using vim.
- bojo 12y agoAfter years of using vim I made the switch last Friday when I stumbled across this fellow's blog post while randomly trying to figure out more about evil mode: http://juanjoalvarez.net/es/detail/2014/sep/19/vim-emacsevil-chaotic-migration-guide/ http://juanjoalvarez.net/es/detail/2014/sep/19/vim-emacsevil... It took all day Saturday to configure things so they mostly behaved the same as my vim environment, mixed with learning emacs specific stuff along the way. There's a few quirks I still need to work out, but the power to configure absolutely anything is worth the switch in my book. I have to admit, I wish I had made the switch sooner. The biggest thing I desire right now, and maybe I just don't know what to look for, is a way to swap between full sets of buffers. i.e. Group A: handful of IRC windows, Group B: project 1's code buffers, Group C: project 2's code buffers, etc. Maybe someone has a tip?
- gcv 12y agoUse either https://github.com/nex3/perspective-el https://github.com/nex3/perspective-el or https://github.com/pashinin/workgroups2 https://github.com/pashinin/workgroups2.
- noahl 12y agoI just hit the same issue, and I started using desktop-save-mode for that (https://www.gnu.org/software/emacs/manual/html_node/emacs/Saving-Emacs-Sessions.html https://www.gnu.org/software/emacs/manual/html_node/emacs/Sa...). It may be a bit heavyweight for instant switching, depending on what you want. I found it among a list of possible solutions at http://www.reddit.com/r/emacs/comments/1m73gs/how_do_you_manage_multiple_workspaces/ http://www.reddit.com/r/emacs/comments/1m73gs/how_do_you_man... .
- bojo 12y agoThat is exactly what I was looking for. Thanks!
- cmiles74 12y agoBeing able to extend the browser with my own Elisp code turned out to be the hook for me; I'd encourage you to learn some Elisp right at the start. Also, I've had good luck with Emacs Live. http://github.com/overtone/emacs-live http://github.com/overtone/emacs-live