共用方式為


IVsLanguageInfo 介面

擷取程式設計或標記的語言,包括語言名稱、 關聯的副檔名,以及編輯程式碼的 colorizer 需求的相關資訊。

命名空間:  Microsoft.VisualStudio.TextManager.Interop
組件:  Microsoft.VisualStudio.TextManager.Interop (在 Microsoft.VisualStudio.TextManager.Interop.dll 中)

語法

'宣告
<InterfaceTypeAttribute()> _
<GuidAttribute("11DDB920-52C7-4237-8610-9FE8BB11656D")> _
Public Interface IVsLanguageInfo
[InterfaceTypeAttribute()]
[GuidAttribute("11DDB920-52C7-4237-8610-9FE8BB11656D")]
public interface IVsLanguageInfo
[InterfaceTypeAttribute()]
[GuidAttribute(L"11DDB920-52C7-4237-8610-9FE8BB11656D")]
public interface class IVsLanguageInfo
[<InterfaceTypeAttribute()>]
[<GuidAttribute("11DDB920-52C7-4237-8610-9FE8BB11656D")>]
type IVsLanguageInfo =  interface end
public interface IVsLanguageInfo

IVsLanguageInfo 類型會公開下列成員。

方法

  名稱 描述
公用方法 GetCodeWindowManager 允許新增裝飾至程式碼編輯器的一種語言。
公用方法 GetColorizer 傳回 colorizer。
公用方法 GetFileExtensions 傳回屬於此語言的副檔名。
公用方法 GetLanguageName 傳回的程式語言名稱。

回頁首

備註

實作的圖例和 (或) 在這個範例中,這個介面的電話,請參閱Figures Language Service

實作者注意事項

實作這個介面來建立您的語言服務。 這是主要語言服務介面,而且需要為所有語言的服務。

範例

下面是一個簡單的範例,此介面之實作。

using Microsoft.VisualStudio;
using Microsoft.VisualStudio.TextManager.Interop;

namespace MyLanguagePackage
{
    class MyLanguageService : IVsLanguageInfo
    {
        public int GetCodeWindowManager(IVsCodeWindow pCodeWin,
                                        out IVsCodeWindowManager ppCodeWinMgr)
        {
            // MyCodeWindowManager class implements IVsCodeWindowManager.
            ppCodeWinMgr = new MyCodeWindowManager(pCodeWin);
            return VSConstants.S_OK;
        }


        public int GetColorizer(IVsTextLines pBuffer
                                out IVsColorizer ppColorizer)
        {
            // MyColorizer implements IVsColorizer
            ppColorizer = new MyColorizer(pBuffer);
            return VSConstants.S_OK;
        }


        public int GetFileExtensions(out string pbstrExtensions)
        {
            // This is the same extension the language service was
            // registered as supporting.
            pbstrExtensions = ".myext";
            return VSConstants.S_OK;
        }


        public int GetLanguageName(out string bstrName)
        {
            // This is the same name the language service was
            // registered with.
            bstrName = "MyLanguage";
            return VSConstants.S_OK;
        }
    }
}

請參閱

參考

Microsoft.VisualStudio.TextManager.Interop 命名空間