Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
IVsTextManager Interface
Collapse the table of content
Expand the table of content

IVsTextManager Interface

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

Namespace:  Microsoft.VisualStudio.TextManager.Interop
Assembly:  Microsoft.VisualStudio.TextManager.Interop (in Microsoft.VisualStudio.TextManager.Interop.dll)

public interface IVsTextManager

The IVsTextManager type exposes the following members.

Public methodAdjustFileChangeIgnoreCountIncreases or decreases the ignore count for file changes.
Public methodAttemptToCheckOutBufferFromSccMethod information not provided.
Public methodAttemptToCheckOutBufferFromScc2Attempts to check out a file from source code control.
Public methodCreateSelectionActionMethod information is not provided. Do not use this method.
Public methodEnumBuffersEnumerates text buffers. Not yet implemented.
Public methodEnumIndependentViewsEnumerates the independent views.
Public methodEnumLanguageServicesEnumerates the registered language service IDs.
Public methodEnumViewsEnumerates views that are provided with the core editor and are associated with a particular text buffer.
Public methodGetActiveViewReturns the active or previously active view.
Public methodGetBufferSccStatusMethod information not provided. Do not use this method.
Public methodGetBufferSccStatus2Returns information on whether a buffer is under source code control and, if so, whether the file is checked in.
Public methodGetMarkerTypeCountReturns the number of registered marker types within all buffers associated with the core text editor.
Public methodGetMarkerTypeInterfaceMaps a numeric marker type ID to an interface that can be used to probe for specific information.
Public methodGetPerLanguagePreferencesMethod information is not provided.
Public methodGetRegisteredMarkerTypeIDReturns a registered marker type.
Public methodGetShortcutManagerReturns the shortcut manager.
Public methodGetUserPreferencesReturns the user preferences, such as tab usage, indent size and widget margin presence for the view, frame, and language service.
Public methodIgnoreNextFileChangeNotifies that the next file change is to be ignored.
Public methodMapFilenameToLanguageSIDGiven a file name, determines the registered language service, if one exists, that understands it.
Public methodNavigateToLineAndColumnFinds or creates an appropriate view on the specified buffer and places the selection at the specified location.
Public methodNavigateToPositionFinds or creates an appropriate view on the specified buffer and puts the selection on the specified linear position.
Public methodRegisterBufferRegisters a text buffer with the text manager.
Public methodRegisterIndependentViewRegisters a view from a source other than the core editor.
Public methodRegisterViewMethod information is not provided.
Public methodSetFileChangeAdviseMethod information is not provided.
Public methodSetPerLanguagePreferencesMethod information is not provided.
Public methodSetUserPreferencesSets user preferences.
Public methodSuspendFileChangeAdviseSuspends file change notifications for a given file.
Public methodUnregisterBufferUnregisters a buffer.
Public methodUnregisterIndependentViewUnregisters an externally-created view.
Public methodUnregisterViewMethod information is not provided.

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.

Community Additions

© 2015 Microsoft