Emacs emulation


Provides basic support for Emacs keybindings and text editing commands.

(30) Review
Visual Studio
Download (26,972)
E-mail Twitter del.icio.us Digg Facebook
Add to favorites
Reviews (30)
Q and A (21)
Sign in to write a review
Sort by:

by fuxiuyin | March 08 2016

Why stop support since vs2013?

by complexzeros | January 14 2015

- Doesn't work for standard user using Visual Studio 2013 (and it only works for administrators via a workaround found on StackOverflow.com).
- Can't uninstall completely. Uninstalling the extension leaves the Emacs commands, e.g. edit.EmacsCharLeft, intact.
- No forward-sexp.
- Keyboard macros broken in Visual Studio 2013.

by vka1 | August 05 2014

- Gives you the most common bindings exept for meta-<
- Works OK with vs2013 after the manifest edit (see Q&&A)

by drexyia | December 20 2013

I would love to use emacs key bindings in Visual Studio, unfortunately because of the copy and paste from other applications issue I cant use it.

Please update this for visual studio 2012 and 2013 and fix the bugs it would be brilliant to not have to remember two sets of keybindings.

by Keith foobar | December 10 2013

Please count this as another request for an update.
Emacs is widely used and should be supported by all
mainstream development environments.
Thanks for providing this. -- Keith

by mindlube games | November 28 2013

I would give it 5 stars, because it's a great plugin. I even got it to run on VS2013Pro, with a little futzing around. *however* as others have noted, there are unfixed bugs:

1) hitting tab sometimes deletes code (if there are code errors usually)
2) sytem copy-paste is broken (good luck copy-pasting text or code from say- your web browser)

Both of these things are extremely annoying. Please open up the source so we can fix it.

by lfbhome | September 05 2013

by bpmcc | August 09 2013

Great, but please update or open source!!!

(negative rating is based on this being closed source, others having already asked for update or open source, and no apparent response from authors -- scaring me back to the Eclipse world!)

by Bartosz Grzesiowski | May 18 2013

Great extension, much needed.

To make it work with VS 2012, follow this advice:

by George Lippert | April 23 2013

PLEASE update this to VS 2012! Or opensource it so the community can do it.

by xxLong | April 02 2013

Being unable to copy and paste really kills me and makes me abandon this seemingly cool plugin. So I cannot agree with @hoohah42 any more. I doubt if someone is heavily using it and/or if there will be any update for it very soon.

by jbsegonzalez | March 12 2013

by ajvn | November 12 2012

Too many bugs..., please release the update or sourcecode!

by bobjli | August 03 2012

It almost works, but the bugs prevent me of using of it. The most unpleasant thing is that Tab key deletes codes. Every time I press tab key, I need to rethink if I should do it. Other problems include that it try to mimic a clean Emacs which no customization is allowed. It feels so awkward and as a result, I was driven to VsVim, which is much sophisticated.

by ZBrad | July 19 2012

Please open source this implementation, to allow folks to help fix the bugs on this. Cut/paste, lack of 2012 support, etc.

by Frisker Bitey | December 15 2011

This is a Godsend: before I was having to open the files outside of VS and edit them in xemacs, but now these key-bindings for emacs at least keeps me in VS. Haven't tested all the bindings I usually use in emacs, but at least it seems most I use to edit text quickly are there....

by bharatkumar pitti | November 07 2011

Very nice...Thank you so much for putting this feature

by gsp2007 | September 07 2011

Thank you! Thank you! A good keybinding at last. Now if we could get brief emulation...

by Mei Yang | July 28 2011

Thanks to this extension, the last reason I needed Emacs has gone!

by Ed Price - MSFT | June 03 2011

1 - 20 of 30 Items   
Sign in to start a discussion

  • Copy Problems, Tab problems
    5 Posts | Last post October 31, 2011
    • I'm very familiar with emacs and very much want to use this extension but have encoutered several problems that make it unworkable.
       o With "Productivity Power Tools" enabled copy (Alt-w) does not work.
       o "Enter" leaves the cursor at column 1.  "Tab" does not indent.  
         The code is not indented until I complete some block.  The
         end result is (about) the same but I find it very disconcerting
         to type in poorly indented code.
       o Paste from external sources does not work.
      Note that I also have "VS10x Code Map v2" installed.  A brief test of disabling this did not resolve any problems.  
    • Instead of "Enter" use "Ctrl-J", which acts like Enter   Tab. Just like real emacs!
    • I really hope the issues with Productivity Power Tools can be fixed, right now these two extensions are completely incompatible (copying etc).
    • Not completely incompatible. I only turned off "HTML copy" and was able to use Alt-W, Ctrl-W, and Ctrl-Y.
    • TomKU, while I don't know an exact solution to the alt+w issue (besides rebinding whatever alt+w does inside the Productivity Tools view to something else), there is a way to kind of fix the Tab issue.
      Press enter and then, as you notices you are stuck at the first column regardless of how many times you press TAB in home of indtenting. However if you start typing anything and then press Tab it will indent correctly whatever you just typed without changing the relative position of your cursor. Also, suppose you are in  a fruther column index like 5000 and type something there and press TAB , your text will go back to the correct column according to correct mode indentation .In other words, it does "indent-according-to-mode" from emacs. Trick is to start typing something frist before pressing TAB. Try it out!
  • Seeing a selection box when popping the mark is annoying
    1 Posts | Last post October 31, 2011
    • This add-in needs somehow not show the selection box when pushign a mark onto the mark stack or when popping one. i.e. C-<SPC> C-<SPC> should insert the mark but not show the selection box when moving the cursor.  That goes double for popped marks. Whenever I pop marks (explicitly with C-x C-<SPC> or implicitly with Go-to Definition/Declaration et. al) the selection is activated which is :
      a) annoying 
      b) confusing
      c) undesireable.
      The selection should only appear when C-<SPC> or C-@ is pressed once and that's it.
      Will there be a fix to this?
  • Delete Word does not create new instance in the kill/clipboard ring
    1 Posts | Last post October 31, 2011
    • 1) when you kill a line (i.e. cut it ) and then use Alt+D to kill a word, this last killed word will be appended to the last killed string . THus when pasting, instead of pasting just the most recent kill (in this case the word) it will paste the killed line PLUS the killed word at the end. This behaviour is undesired. What should happen is just have the word pasted and THEN if alt+Y is pressed the killed line should appear INSTEAD of the word.
  • Does not work correctly with SpecFlow
    1 Posts | Last post August 09, 2011
    • When editing SpecFlow feature files (1.6.1) it does not tab correctly on the line following a Feature: or a Scenario: line.
  • Open sourcing the emacs extension?
    1 Posts | Last post March 21, 2011
    • It looks like the VsVim extension is supported by Microsoft and the source is available through github. Is that a possibility for the emacs extension considering bug fixes and feature additions aren't a promised thing?
  • Default for C-u-
    1 Posts | Last post December 01, 2010
    • Would it be feasible to make C-u- have a default argument? The repeat prefix defaults to a count of 4 in emacs if you get a non-numeric key after the prefix.  Thanks.  
  • Needs a "horizontal split"
    3 Posts | Last post November 23, 2010
    • EXCELLENT work, guys! This extension is actually far, far better than the keymap that was available in VS2008. Very well done!
      Only thing I'd like to see here is one additional change: the ability to perform a "horizontal split" where two files are open side by side in two columns rather than on top of each other as two rows. Obviously the Edit.EmacsOtherWindow command will need to be adjusted to accommodate (it currently does not actually swap windows as it should for a horizontal split like this).
    • My mistake -- I had thought that Edit.EmacsSplitVertical created a new tab group rather than using the existing split window functionality in the text editor itself. It would certainly be a bit nicer if we could adjust this to instead create split tab groups, since that's far more flexible than a split file window.
    • Bah. I'm a moron -- missed the ability to bind keys to the standard VS2010 commands Window.NewHorizontalTabGroup and Window.NewVerticalTabGroup.
  • AltGr does not work for shortcuts
    1 Posts | Last post November 12, 2010
    • This is a general problem with Visual Studio 2010 (and earlier?)
      On a danish keyboard, AltGr+8 maps to [-character, but it cannot be used as part of shortcuts, I assume it is due to improper handling of AltGr.
      Trying to map Edit.EmacsDocumentStart to "Ctrl+X, [" which on my danish keyboard is "Ctrl+X, AltGr+8" will be inserted as "Ctrl+X, Ctrl+Alt+8" in the TextBox under the "Press shortcut keys:" label.
      Afterwards, pressing Ctr+X, AltGr+8 will not move to beginning of document as on regular emacs, but instead insert a square bracket. Pressing "Ctrl+X, Ctrl+Alt+8" will move to beginning of document.
      Any chance that you are able to fix this problem?
  • Emacs Installation
    5 Posts | Last post October 21, 2010
    • The instructions state: "The first time you launch Visual Studio after downloading and installing the extension, you should see a permissions dialog, shown below." This does not appear to be correct if you are using the default start page. In that case, you will not be prompted to elevate until you open a project.
    • To add to my earlier comment: The description states "Emacs commands will also work with other keyboard layouts, including the default layout." This also appears to be incorrect. Attempting to use an Emacs command while using another keyboard layout results in the message: "Command "Edit.Emacsxxxx" is not available." I was hoping to add a few Emacs commands to my keyboard. This does not appear to be possible. 
    • Hi Podnuh - The description doesn't mention this, but you do need to have a project or solution open for the Emacs extension to work.  This explains why you didn't immediately see the elevation prompt and hopefully explains why commands didn't work.  If the Emacs commands still give error messages even with a solution open, please file a bug on Microsoft Connect at http://connect.microsoft.com/VisualStudio.  We'd like to take a closer look.
      Thanks for trying the extension!
      Brittany Behrens, Program Manager, VS Pro Team 
    • Hi Bethany,
      Thanks for the response. I confirmed that the extension was properly installed. In addition, I installed the current release of the extension (version 1.3), and confirmed that it was also correctly installed. In my experience, the Emacs commands only function when the Emacs keyboard is selected. As suggested, I filed a bug report with Microsoft Connect. I would welcome a fix, since there are a few commands I would like to add to my keyboard.
    • I was also confused.  The download asks me to "run" or "save" with a strange filename extension.  I choose "run", not knowing what might happen, and the popup to install got lost among my desktop clutter.  Finally found it, and installed.  Then started VS 2010, no popup about privs.  Checked options, keyboard, no "emacs" scheme.  
      Loaded a project, per Podnuh's advise, and there it is.  No popup for the privs however.  My account is admin, maybe that's why?
      The instructions for download could use some clarifications...
  • Some problems I found
    2 Posts | Last post October 05, 2010
    • First of all - great job guys, I love the extension :) But, there some problems with it:
      1. M-m (alt-m) from emacs doesn't work by default - and setting it to Edit.LineStartAfterIndentation doesn't work well with the set-mark selection model.
      2. You still have to use arrow keys to select a completion in IntelliSense (I beg you - implement this!)
      3. In C#, when subscribing to an event, after typing "+= " VS gives you a tooltip saying "press TAB to generate event handler" (or something like that), which doesn't work with the Emacs extension.
      4. C-x b from emacs would be nice - you already use the status bar with C-s and C-r...
      5. M-y from emacs is still buggy
      Another piece of feedback - on windows it is really natural to expect the selected text to be replaced with whatever you start typing. It would be cool, if you could add this behaviour as an option.
    • Hi Michał - Thanks for trying the extension!  Point #2 (about IntelliSense completion) has been fixed.  The latest version of the extension should not have this problem; you should be able to update or reinstall the extension to get the fix.  #3 is a known issue that we're working on fixing.  I'll update the known issues section in the description to include it.
      For the other points, feel free to open Connect bugs at http://connect.microsoft.com/VisualStudio.  We can't promise to fix every issue or implement all suggestions, but we'd love to have these tracked in our official bug database.
      Thanks again!
      Brittany Behrens, Program Manager, VS Pro Team
11 - 20 of 21 Items