C# Class Vim.VisualStudio.VsVimHost

Inheritance: Vim.UI.Wpf.VimHost, IVsSelectionEvents
Afficher le fichier Open project: jaredpar/VsVim

Private Properties

Свойство Type Description
GetCPlusPlusIdentifier string
GoToDefinitionCPlusPlus bool
GoToDefinitionCore bool
IVsSelectionEvents int
IVsSelectionEvents int
IVsSelectionEvents int
InitTelemetry void
MoveFocusHorizontally bool
SafeExecuteCommand bool
VsVimHost System

Méthodes publiques

Méthode Description
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

Private Methods

Méthode Description
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

Method Details

BeginBulkOperation() public méthode

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
Résultat void

Close() public méthode

public Close ( ITextView textView ) : void
textView ITextView
Résultat void

CloseAllOtherTabs() public méthode

public CloseAllOtherTabs ( ITextView textView ) : void
textView ITextView
Résultat void

CloseAllOtherWindows() public méthode

public CloseAllOtherWindows ( ITextView textView ) : void
textView ITextView
Résultat void

EndBulkOperation() public méthode

public EndBulkOperation ( ) : void
Résultat void

FormatLines() public méthode

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
Résultat void

GetName() public méthode

public GetName ( ITextBuffer buffer ) : string
buffer ITextBuffer
Résultat string

GetNewLineIndent() public méthode

public GetNewLineIndent ( ITextView textView, ITextSnapshotLine contextLine, ITextSnapshotLine newLine ) : FSharpOption
textView ITextView
contextLine ITextSnapshotLine
newLine ITextSnapshotLine
Résultat FSharpOption

GetTabIndex() public méthode

public GetTabIndex ( ITextView textView ) : int
textView ITextView
Résultat int

GetWordWrapStyle() public méthode

public GetWordWrapStyle ( ITextView textView ) : WordWrapStyles
textView ITextView
Résultat WordWrapStyles

GoToDefinition() public méthode

public GoToDefinition ( ) : bool
Résultat bool

GoToGlobalDeclaration() public méthode

public GoToGlobalDeclaration ( ITextView textView, string target ) : bool
textView ITextView
target string
Résultat bool

GoToLocalDeclaration() public méthode

public GoToLocalDeclaration ( ITextView textView, string target ) : bool
textView ITextView
target string
Résultat bool

GoToQuickFix() public méthode

public GoToQuickFix ( QuickFix quickFix, int count, bool hasBang ) : bool
quickFix QuickFix
count int
hasBang bool
Résultat bool

GoToTab() public méthode

public GoToTab ( int index ) : void
index int
Résultat void

IsReadOnly() public méthode

public IsReadOnly ( ITextBuffer textBuffer ) : bool
textBuffer ITextBuffer
Résultat bool

LoadFileIntoExistingWindow() public méthode

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
Résultat bool

LoadFileIntoNewWindow() public méthode

Open up a new document window with the specified file
public LoadFileIntoNewWindow ( string filePath ) : bool
filePath string
Résultat bool

Make() public méthode

public Make ( bool jumpToFirstError, string arguments ) : void
jumpToFirstError bool
arguments string
Résultat void

MoveFocus() public méthode

public MoveFocus ( ITextView textView, Direction direction ) : void
textView ITextView
direction Direction
Résultat void

NavigateTo() public méthode

public NavigateTo ( VirtualSnapshotPoint point ) : bool
point VirtualSnapshotPoint
Résultat bool

Quit() public méthode

public Quit ( ) : void
Résultat void

RunHostCommand() public méthode

public RunHostCommand ( ITextView textView, string command, string argument ) : void
textView ITextView
command string
argument string
Résultat void

Save() public méthode

public Save ( ITextBuffer textBuffer ) : bool
textBuffer ITextBuffer
Résultat bool

SaveTextAs() public méthode

public SaveTextAs ( string text, string fileName ) : bool
text string
fileName string
Résultat bool

ShouldCreateVimBuffer() public méthode

public ShouldCreateVimBuffer ( ITextView textView ) : bool
textView ITextView
Résultat bool

ShouldIncludeRcFile() public méthode

public ShouldIncludeRcFile ( VimRcPath vimRcPath ) : bool
vimRcPath VimRcPath
Résultat bool

ShouldKeepSelectionAfterHostCommand() public méthode

public ShouldKeepSelectionAfterHostCommand ( string command, string argument ) : bool
command string
argument string
Résultat bool

SplitViewHorizontally() public méthode

Perform a horizontal window split
public SplitViewHorizontally ( ITextView textView ) : void
textView ITextView
Résultat void

SplitViewVertically() public méthode

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

TryCustomProcess() public méthode

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

TryGetFocusedTextView() public méthode

public TryGetFocusedTextView ( ITextView &textView ) : bool
textView ITextView
Résultat bool

VimCreated() public méthode

public VimCreated ( IVim vim ) : void
vim IVim
Résultat void

VimRcLoaded() public méthode

public VimRcLoaded ( VimRcState vimRcState, IVimLocalSettings localSettings, IVimWindowSettings windowSettings ) : void
vimRcState VimRcState
localSettings IVimLocalSettings
windowSettings IVimWindowSettings
Résultat void