vs扩展emacs插件

来源:互联网 发布:linux最小系统下载iso 编辑:程序博客网 时间:2024/05/12 02:59

安装

微软官方插件下载地址【free】目前只提供vs2010

下载:http://visualstudiogallery.msdn.microsoft.com/09dc58c4-6f47-413a-9176-742be7463f92

另附Vim插件下载:http://visualstudiogallery.msdn.microsoft.com/59ca71b3-a4a3-46ca-8fe1-0e90e3f79329

vs2012安装需要对下载到的东西进行处理,此处提供可用于vs2012的插件下载

或者自己对下载到的官方插件进行修改

修改方法:修改插件后缀名为.zip,解压后修改extension.vsixmanifest中的版本号10.0为11.0【vs2013修改为12.0】,保存后重新打包

2. 然后以管理员身份运行:emd[管理员运行]-> start EmacsEmulations.vsix

3. 安装后,进入vs安装目录的vs..\Microsoft Visual Studio 11.0\Common7\IDE,将插件解压包中Emacs.vsk复制到该目录下

4. 然后启动vs, 进入tools->Environment->keyboard 选择emacs即可

上述参考链接:http://stackoverflow.com/questions/13884953/emacs-keybindings-in-visual-studio-2012

部分快捷键

General Shortcut Keys


Command

Keys

Description

Edit.EmacsExtendedCommand

ALT + X

Places the cursor in the Find/Command box on the Standard toolbar.

Edit.EmacsFindReplace

SHIFT + ALT + 5

Displays the replace options in the Quick tab of the Find and Replace dialog box.

Edit.EmacsPasteRotate

ALT + Y

Pastes an item from the Clipboard Ring tab of the Toolbox to the file and automatically selects the pasted item. Press ALT + Y again to paste the next item to the Clipboard Ring.

Edit.EmacsQuit

CTRL + G

Stops the current command or code and deactivates the region.

Edit.EmacsUniversalArgument

CTRL + U

Prompts for an integer, returns negative if the first character entered is a hyphen. When a non-digit character is entered, the prefix for the command is set to the entered integer. If no integer is entered, the default value is 4. Repeatedly invoking the command multiplies the current value entered by the previous accumulated value.

Text Manipulation


Command

Keys

Description

Edit.EmacsBreakLine

ENTER

Inserts a new line.

Edit.EmacsBreakLineIndent

CTRL + J

Inserts a new line and indents it.

Edit.EmacsCharTranspose

CTRL + T

Transposes the characters on either side of the cursor. For example, Ed|n Sub would be changed to read End| Sub.

Edit.EmacsDeleteSelection

CTRL + DELETE

Deletes the current selection.

Edit.EmacsDeleteToEOL

CTRL + K

Deletes from the cursor to the end of the current line.

Edit.EmacsLineOpen

CTRL + O

Inserts a new line after the cursor. The cursor stays in the current line.

Edit.EmacsQuotedInsert

CTRL + Q

Reads another key and inserts the key into the buffer. Keys must be 8-bit ASCII characters. Use this command to insert control characters, meta characters, or graphics characters into the buffer.

Edit.EmacsWordCapitalize

ALT + C

Capitalizes the character to the right of the cursor or the first character of the next word if the cursor is between words.

Edit.EmacsWordDeleteToEnd

ALT + D

Deletes the characters to the right of the cursor to the end of the word.

Edit.EmacsWordDeleteToStart

ALT + BACKSPACE
—or— 
ALT + DELETE

Deletes the characters from the left of the cursor to the start of the word.

Edit.EmacsWordLowercase

ALT + L

Changes the selected text to lowercase characters.

Edit.EmacsWordTranspose

ALT + T

Transposes the words on either side of the cursor. For example, |End Sub would be changed to read Sub End|.

Edit.EmacsWordUppercase

ALT + U

Changes the selected text to uppercase characters.

Text Navigation


Command

Keys

Description

Edit.EmacsCharLeft

CTRL + B

Moves the cursor one character to the left.

Edit.EmacsCharRight

CTRL + F

Moves the cursor one character to the right.

Edit.EmacsDocumentEnd

END 
—or— 
SHIFT + ALT + . (period) 
—or— 
SHIFT + END 
—or— 
CTRL + X, ]

Moves the cursor to the bottom of the current document.

Edit.EmacsDocumentStart

HOME 
—or— 
SHIFT + ALT + , (comma) 
—or— 
SHIFT + HOME 
—or— 
CTRL + X, [

Moves the cursor to the top of the current document.

Edit.EmacsGoToLine

ALT + G

Displays the Go To Line dialog box, which allows you to navigate to a specific line of code in the current document.

Edit.EmacsLineDown

CTRL + N

Moves the cursor down one line.

Edit.EmacsLineEnd

CTRL + E

Moves the cursor to the end of the current line. If you use word wrap, the cursor moves to the physical, not the displayed, end of the current line.

Edit.EmacsLineStart

CTRL + A

Moves the cursor to the beginning of the current line. If you use word wrap, the cursor moves to the physical, not the displayed, beginning of the current line.

Edit.EmacsLineUp

CTRL + P

Moves the cursor up one line.

Edit.EmacsPopMark

CTRL + X, CTRL + SPACEBAR 
—or— 
CTRL + X, CTRL + SHIFT + 2

Moves the cursor to the current mark and then removes the mark for the location stack.

Edit.EmacsScrollLineCenter

CTRL + L

Scrolls the document so that the current line is now in the center of the viewable area in the editor.

Edit.EmacsScrollLineTop

SHIFT + ALT + 1

Scrolls the document so that the current line appears at the top of the viewable area in the editor.

Edit.EmacsScrollPageDown

CTRL + V

Scrolls down within the document.

Edit.EmacsScrollPageUp

ALT + V

Scrolls up within the document.

Edit.EmacsSetMark

CTRL + SHIFT + 2
—or— 
CTRL + SPACEBAR

Adds a mark to the location stack for the current cursor.

Edit.EmacsSwapPointAndMark

CTRL + X, CTRL + X

Moves the cursor to the current mark in the location stack and moves the current mark to the location where the cursor mark was when the command was invoked.

Edit.EmacsWordNext

CTRL + RIGHT ARROW 
—or— 
ALT + F 
—or— 
ALT + RIGHT ARROW

Moves the cursor to the first character in the next word.

Edit.EmacsWordPrevious

CTRL + LEFT ARROW 
—or— 
ALT + B 
—or— 
ALT + LEFT ARROW

Moves the cursor to the first character in the previous word.

File Management


Command

Keys

Description

Edit.EmacsFileSaveDirty

CTRL + X, S

Displays a list of modified files and allows you to select which files to save.

Window Management


Command

Keys

Description

Edit.EmacsCloseOtherWindow

CTRL + X, 1

When a window is split, this shortcut closes the pane that does not have focus.

Edit.EmacsOtherWindow

CTRL + X, O

Switches focus between panes when a window is split.

Edit.EmacsSplitVertical

CTRL + X, 2

Splits the current document in half vertically. The current line of code is centered in each window.

Using the Emacs Commands

Once you’ve installed the Emacs Emulations extension, all of the Emacs shortcuts it enables are fully customizable.  If you choose to use the Emacs keyboard schema, you’ll automatically get the shortcuts listed above. If you don’t like a particular keybinding in the Emacs schema, you can always change it through Tools->Options->Keyboard.  You can switch keyboard layouts or customize shortcuts for specific commands (Emacs or otherwise) at any time.

Known Issues

  • Cut/copy/paste from other applications into Visual Studio does not work with the Emacs extension installed.  We're working on a fix for this issue and will post an updated version of the extension when a fix is available.
  • Tab-Tab will not complete code snippets.  We're working on a fix.
  • Tab will sometimes delete text when pressed at the beginning of a line.  As with the first two points, we're working on a fix.
  • The Emacs extension will not become active until a project or solution is opened.  We would love to remove this restriction, but unfortunately that would cause performance to drop significantly. 

  • FIXED in currently published version:  Pressing Tab on a blank line will not add the proper indentation. The workaround is to add text to the line and then press Tab.
  • FIXED in currently published version:  Pressing Tab when Intellisense Statement Completion is active will not complete.  The workaround is to use another completion character or Enter to commit.

Feedback

We’re always interested in your feedback on Visual Studio and extensions published by Microsoft.  In fact, this extension was created largely in response to your feedback that removing Emacs emulation from VS 2010 was causing significant pain on a daily basis; we hope we’ve addressed that pain with this extension.  If you have questions or comments about Emacs Emulation, feel free to post them in the Q&A section here.  If you find a specific bug in Emacs Emulation, please file a Connect bug report so we can investigate in more detail.

0 0
原创粉丝点击