C# 클래스 Vim.VisualStudio.VsVimHost

상속: Vim.UI.Wpf.VimHost, IVsSelectionEvents
파일 보기 프로젝트 열기: jaredpar/VsVim

Private Properties

프로퍼티 타입 설명
GetCPlusPlusIdentifier string
GoToDefinitionCPlusPlus bool
GoToDefinitionCore bool
IVsSelectionEvents int
IVsSelectionEvents int
IVsSelectionEvents int
InitTelemetry void
MoveFocusHorizontally bool
SafeExecuteCommand bool
VsVimHost System

공개 메소드들

메소드 설명
BeginBulkOperation ( ) : void

Treat a bulk operation just like a macro replay. They have similar semantics like we don't want intellisense to be displayed during the operation.

Close ( ITextView textView ) : void
CloseAllOtherTabs ( ITextView textView ) : void
CloseAllOtherWindows ( ITextView textView ) : void
EndBulkOperation ( ) : void
FormatLines ( ITextView textView, SnapshotLineRange range ) : void

Format the specified line range. There is no inherent operation to do this in Visual Studio. Instead we leverage the FormatSelection command. Need to be careful to reset the selection after a format

GetName ( ITextBuffer buffer ) : string
GetNewLineIndent ( ITextView textView, ITextSnapshotLine contextLine, ITextSnapshotLine newLine ) : FSharpOption
GetTabIndex ( ITextView textView ) : int
GetWordWrapStyle ( ITextView textView ) : WordWrapStyles
GoToDefinition ( ) : bool
GoToGlobalDeclaration ( ITextView textView, string target ) : bool
GoToLocalDeclaration ( ITextView textView, string target ) : bool
GoToQuickFix ( QuickFix quickFix, int count, bool hasBang ) : bool
GoToTab ( int index ) : void
IsReadOnly ( ITextBuffer textBuffer ) : bool
LoadFileIntoExistingWindow ( string filePath, ITextView textView ) : bool

In a perfect world this would replace the contents of the existing ITextView with those of the specified file. Unfortunately this causes problems in Visual Studio when the file is of a different content type. Instead we mimic the behavior by opening the document in a new window and closing the existing one

LoadFileIntoNewWindow ( string filePath ) : bool

Open up a new document window with the specified file

Make ( bool jumpToFirstError, string arguments ) : void
MoveFocus ( ITextView textView, Direction direction ) : void
NavigateTo ( VirtualSnapshotPoint point ) : bool
Quit ( ) : void
RunHostCommand ( ITextView textView, string command, string argument ) : void
Save ( ITextBuffer textBuffer ) : bool
SaveTextAs ( string text, string fileName ) : bool
ShouldCreateVimBuffer ( ITextView textView ) : bool
ShouldIncludeRcFile ( VimRcPath vimRcPath ) : bool
ShouldKeepSelectionAfterHostCommand ( string command, string argument ) : bool
SplitViewHorizontally ( ITextView textView ) : void

Perform a horizontal window split

SplitViewVertically ( ITextView value ) : void

Perform a vertical buffer split, which is essentially just another window in a different tab group.

TryCustomProcess ( ITextView textView, InsertCommand command ) : bool

Custom process the insert command if possible. This is handled by VsCommandTarget

TryGetFocusedTextView ( ITextView &textView ) : bool
VimCreated ( IVim vim ) : void
VimRcLoaded ( VimRcState vimRcState, IVimLocalSettings localSettings, IVimWindowSettings windowSettings ) : void

비공개 메소드들

메소드 설명
GetCPlusPlusIdentifier ( ITextView textView ) : string

Get the C++ identifier which exists under the caret

GoToDefinitionCPlusPlus ( ITextView textView, string target ) : bool

The C++ project system requires that the target of GoToDefinition be passed as an argument to the command.

GoToDefinitionCore ( ITextView textView, string target ) : bool
IVsSelectionEvents ( IVsHierarchy pHierOld, uint itemidOld, IVsMultiItemSelect pMISOld, ISelectionContainer pSCOld, IVsHierarchy pHierNew, uint itemidNew, IVsMultiItemSelect pMISNew, ISelectionContainer pSCNew ) : int
IVsSelectionEvents ( uint dwCmdUICookie, int fActive ) : int
IVsSelectionEvents ( uint elementid, object varValueOld, object varValueNew ) : int
InitTelemetry ( ITelemetry telemetry, IVimApplicationSettings vimApplicationSettings ) : void
MoveFocusHorizontally ( int indexDelta ) : bool
SafeExecuteCommand ( ITextView contextTextView, string command, string args = "" ) : bool
VsVimHost ( IVsAdapter adapter, ITextBufferFactoryService textBufferFactoryService, ITextEditorFactoryService textEditorFactoryService, ITextDocumentFactoryService textDocumentFactoryService, ITextBufferUndoManagerProvider undoManagerProvider, IVsEditorAdaptersFactoryService editorAdaptersFactoryService, IEditorOperationsFactoryService editorOperationsFactoryService, ISmartIndentationService smartIndentationService, ITextManager textManager, ISharedServiceFactory sharedServiceFactory, IVimApplicationSettings vimApplicationSettings, IExtensionAdapterBroker extensionAdapterBroker, SVsServiceProvider serviceProvider, ITelemetryProvider telemetryProvider ) : System

메소드 상세

BeginBulkOperation() 공개 메소드

Treat a bulk operation just like a macro replay. They have similar semantics like we don't want intellisense to be displayed during the operation.
public BeginBulkOperation ( ) : void
리턴 void

Close() 공개 메소드

public Close ( ITextView textView ) : void
textView ITextView
리턴 void

CloseAllOtherTabs() 공개 메소드

public CloseAllOtherTabs ( ITextView textView ) : void
textView ITextView
리턴 void

CloseAllOtherWindows() 공개 메소드

public CloseAllOtherWindows ( ITextView textView ) : void
textView ITextView
리턴 void

EndBulkOperation() 공개 메소드

public EndBulkOperation ( ) : void
리턴 void

FormatLines() 공개 메소드

Format the specified line range. There is no inherent operation to do this in Visual Studio. Instead we leverage the FormatSelection command. Need to be careful to reset the selection after a format
public FormatLines ( ITextView textView, SnapshotLineRange range ) : void
textView ITextView
range SnapshotLineRange
리턴 void

GetName() 공개 메소드

public GetName ( ITextBuffer buffer ) : string
buffer ITextBuffer
리턴 string

GetNewLineIndent() 공개 메소드

public GetNewLineIndent ( ITextView textView, ITextSnapshotLine contextLine, ITextSnapshotLine newLine ) : FSharpOption
textView ITextView
contextLine ITextSnapshotLine
newLine ITextSnapshotLine
리턴 FSharpOption

GetTabIndex() 공개 메소드

public GetTabIndex ( ITextView textView ) : int
textView ITextView
리턴 int

GetWordWrapStyle() 공개 메소드

public GetWordWrapStyle ( ITextView textView ) : WordWrapStyles
textView ITextView
리턴 WordWrapStyles

GoToDefinition() 공개 메소드

public GoToDefinition ( ) : bool
리턴 bool

GoToGlobalDeclaration() 공개 메소드

public GoToGlobalDeclaration ( ITextView textView, string target ) : bool
textView ITextView
target string
리턴 bool

GoToLocalDeclaration() 공개 메소드

public GoToLocalDeclaration ( ITextView textView, string target ) : bool
textView ITextView
target string
리턴 bool

GoToQuickFix() 공개 메소드

public GoToQuickFix ( QuickFix quickFix, int count, bool hasBang ) : bool
quickFix QuickFix
count int
hasBang bool
리턴 bool

GoToTab() 공개 메소드

public GoToTab ( int index ) : void
index int
리턴 void

IsReadOnly() 공개 메소드

public IsReadOnly ( ITextBuffer textBuffer ) : bool
textBuffer ITextBuffer
리턴 bool

LoadFileIntoExistingWindow() 공개 메소드

In a perfect world this would replace the contents of the existing ITextView with those of the specified file. Unfortunately this causes problems in Visual Studio when the file is of a different content type. Instead we mimic the behavior by opening the document in a new window and closing the existing one
public LoadFileIntoExistingWindow ( string filePath, ITextView textView ) : bool
filePath string
textView ITextView
리턴 bool

LoadFileIntoNewWindow() 공개 메소드

Open up a new document window with the specified file
public LoadFileIntoNewWindow ( string filePath ) : bool
filePath string
리턴 bool

Make() 공개 메소드

public Make ( bool jumpToFirstError, string arguments ) : void
jumpToFirstError bool
arguments string
리턴 void

MoveFocus() 공개 메소드

public MoveFocus ( ITextView textView, Direction direction ) : void
textView ITextView
direction Direction
리턴 void

NavigateTo() 공개 메소드

public NavigateTo ( VirtualSnapshotPoint point ) : bool
point VirtualSnapshotPoint
리턴 bool

Quit() 공개 메소드

public Quit ( ) : void
리턴 void

RunHostCommand() 공개 메소드

public RunHostCommand ( ITextView textView, string command, string argument ) : void
textView ITextView
command string
argument string
리턴 void

Save() 공개 메소드

public Save ( ITextBuffer textBuffer ) : bool
textBuffer ITextBuffer
리턴 bool

SaveTextAs() 공개 메소드

public SaveTextAs ( string text, string fileName ) : bool
text string
fileName string
리턴 bool

ShouldCreateVimBuffer() 공개 메소드

public ShouldCreateVimBuffer ( ITextView textView ) : bool
textView ITextView
리턴 bool

ShouldIncludeRcFile() 공개 메소드

public ShouldIncludeRcFile ( VimRcPath vimRcPath ) : bool
vimRcPath VimRcPath
리턴 bool

ShouldKeepSelectionAfterHostCommand() 공개 메소드

public ShouldKeepSelectionAfterHostCommand ( string command, string argument ) : bool
command string
argument string
리턴 bool

SplitViewHorizontally() 공개 메소드

Perform a horizontal window split
public SplitViewHorizontally ( ITextView textView ) : void
textView ITextView
리턴 void

SplitViewVertically() 공개 메소드

Perform a vertical buffer split, which is essentially just another window in a different tab group.
public SplitViewVertically ( ITextView value ) : void
value ITextView
리턴 void

TryCustomProcess() 공개 메소드

Custom process the insert command if possible. This is handled by VsCommandTarget
public TryCustomProcess ( ITextView textView, InsertCommand command ) : bool
textView ITextView
command InsertCommand
리턴 bool

TryGetFocusedTextView() 공개 메소드

public TryGetFocusedTextView ( ITextView &textView ) : bool
textView ITextView
리턴 bool

VimCreated() 공개 메소드

public VimCreated ( IVim vim ) : void
vim IVim
리턴 void

VimRcLoaded() 공개 메소드

public VimRcLoaded ( VimRcState vimRcState, IVimLocalSettings localSettings, IVimWindowSettings windowSettings ) : void
vimRcState VimRcState
localSettings IVimLocalSettings
windowSettings IVimWindowSettings
리턴 void