Share via


Visual Studio + Emacs

Before joining MS, my editor of choice has always been Emacs, but now the default IDE for most of my work here has always been Visual Studio.  I have installed NTEmacs and tried to use it to do some dev work, but coding without intellisense (aka tab complete) has been a real challenge.  Why wasn't this a problem before at Amzn?  It's because I don't have choice, and most of the work doesn't have that deep, nested libraries to use.  So I was able to do just fine with copy/paste method names and variables and get away with things.

However, luck was finally on my side.  A few months ago, I stumbled upon "keyboard mapping scheme" on Vistual Studio 2005 (from the menu bar, it's under Tools > Options > Keyboard).  And guess what?  Emacs is there! 

VisualStudioEmacs

This means that from now on, I can edit source files using emacs keymaps AND I have intellisense built-in.  Life is good.  However, like most things in life, it came with a slight caveat (in this case, that caveat is a bug). There is a problem with the kill ring buffer. I was not able to copy/paste text across different source files (even when they are in the same project). I filed a bug on this, and the good news is the fix should be released soon with one of their QFEs or Service Packs.

But again, many thanks to the Visual Studio team!

On a side note to that, I also noticed that VI is not listed in one of the schemes, and I think it's a sign that Emacs is better.  :D

Comments

  • Anonymous
    May 23, 2007
    The comment has been removed

  • Anonymous
    November 12, 2007
    The comment has been removed

  • Anonymous
    November 21, 2007
    The comment has been removed

  • Anonymous
    January 07, 2008
    The comment has been removed

  • Anonymous
    May 14, 2008
    Apparently, the Emacs bindings are not available in the Express Editions.

  • Anonymous
    May 22, 2008
    I happen to learn emacs thease days  And normally am a Windows programmer right now.Just a moment ago, I decided try to mix emacs & vs together, so i googled.Finally it came out that vs2005 has emacs keybord layout scheme...What a surprise!

  • Anonymous
    June 03, 2008
    The bindings for Emacs IS AVAILABLE in Visual C++ 2008 Express Edition.  I'm using it right now!

  • Anonymous
    June 13, 2008
    The comment has been removed

  • Anonymous
    June 13, 2008
    Just in case anyone is having the same problem as me, binding edit.breakline to enter seems to do some good.

  • Anonymous
    June 13, 2008
    Doesn't work at all: CTRL-X + P    (navigate to previous source page) CTRL-X + N   (navigate to next source page) ESC + V  (navigate to previous window page) CTRL-W  (cut everything between cursor and set mark) CTRL-X + F (set-fill-column) ESC + X ... Undo buffer is not "recursive"; undoing something after an undo does not bring everything back; after an undo command, everything it undid is permanently lost. You might as well get a real emacs and plug it in. Got any good suggestions for seamless plug-in?

  • Anonymous
    July 13, 2008
    The comment has been removed

  • Anonymous
    March 18, 2009
    The comment has been removed

  • Anonymous
    August 14, 2009
    This thing ruuuuuuuules! Now I can give microsoft a try I love Emacs, Thanks GNU!

  • Anonymous
    August 25, 2010
    Thank you for showing it. I'm a long time emacs user and I 'hate' to use a different IDE.