IVsTextManager Interface


Provides general services for anyone wanting information about the active text views.

public interface IVsTextManager


There is one text manager in the environment. The text manager manages all of the text buffers that are active at any given point, all of the user settings for the different languages, and any other global preferences related to the core text editor. When the user specifies preferences for the appearance and/or behavior of components in the text editor, the text manager stores this information and communicates it to all relevant clients. Examples include color preferences, tab versus space preferences, and so on. Preferences that are unique to a given language (that is, that apply to one language but to no other) are not stored here. These settings are managed by the individual language services.

The text manager provides a central location for components to discover common information, such as whether a buffer is under source-code control, registering for file-change notifications, keeping track of which views are associated with which buffers, and so on.

See illustrations of the implementation and/or calling of this interface in the sample Figures Edit.


For historical reasons, VSPackages using the Managed Package Framework, use VsTextManagerClass (the class implementing IVsTextManager) with System.typeof, instead of IVsTextManager, to obtain the serviceType argument for GetService. The return value of GetService must then be cast to IVsTextManager. For more information see GetService.

An IVsTextManager interface can be obtained with:

IVsTextManager mytext_mgr = myPackage.GetService(System.typeof(VsTextManagerClass)) as IVsTextManager;

Notes to Implementers

Implemented by the environment.

Notes to Callers

Called by any component that needs to learn about the current view or other information related to the global preferences. The methods of IVsTextManager are most likely required by tools that interact with the Visual Studio core editor.


AdjustFileChangeIgnoreCount(IVsTextBuffer, Int32)

Increases or decreases the ignore count for file changes.

AttemptToCheckOutBufferFromScc(IVsUserData, Int32)

Method information not provided.

AttemptToCheckOutBufferFromScc2(String, Int32, Int32)

Attempts to check out a file from source code control.

CreateSelectionAction(IVsTextBuffer, IVsTextSelectionAction)

Method information is not provided. Do not use this method.


Enumerates text buffers. Not yet implemented.

EnumIndependentViews(IVsTextBuffer, IVsEnumIndependentViews)

Enumerates the independent views.


Enumerates the registered language service IDs.

EnumViews(IVsTextBuffer, IVsEnumTextViews)

Enumerates views that are provided with the core editor and are associated with a particular text buffer.

GetActiveView(Int32, IVsTextBuffer, IVsTextView)

Returns the active or previously active view.

GetBufferSccStatus(IVsUserData, Int32)

Method information not provided. Do not use this method.

GetBufferSccStatus2(String, Int32, Int32)

Returns information on whether a buffer is under source code control and, if so, whether the file is checked in.


Returns the number of registered marker types within all buffers associated with the core text editor.

GetMarkerTypeInterface(Int32, IVsTextMarkerType)

Maps a numeric marker type ID to an interface that can be used to probe for specific information.


Method information is not provided.

GetRegisteredMarkerTypeID(Guid, Int32)

Returns a registered marker type.


Returns the shortcut manager.


Returns the user preferences, such as tab usage, indent size and widget margin presence for the view, frame, and language service.


Notifies that the next file change is to be ignored.

MapFilenameToLanguageSID(String, Guid)

Given a file name, determines the registered language service, if one exists, that understands it.

NavigateToLineAndColumn(IVsTextBuffer, Guid, Int32, Int32, Int32, Int32)

Finds or creates an appropriate view on the specified buffer and places the selection at the specified location.

NavigateToPosition(IVsTextBuffer, Guid, Int32, Int32)

Finds or creates an appropriate view on the specified buffer and puts the selection on the specified linear position.


Registers a text buffer with the text manager.

RegisterIndependentView(Object, IVsTextBuffer)

Registers a view from a source other than the core editor.

RegisterView(IVsTextView, IVsTextBuffer)

Method information is not provided.

SetFileChangeAdvise(String, Int32)

Method information is not provided.


Method information is not provided.


Sets user preferences.

SuspendFileChangeAdvise(String, Int32)

Suspends file change notifications for a given file.


Unregisters a buffer.

UnregisterIndependentView(Object, IVsTextBuffer)

Unregisters an externally-created view.


Method information is not provided.

Applies to