C# Класс Vim.VisualStudio.VsVimHost

Наследование: Vim.UI.Wpf.VimHost, IVsSelectionEvents
Показать файл Открыть проект

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