面朝大海,春暖华开

focus on scientific computue, 3dgis, spatial database
专注于科学计算、GIS空间分析

 

Language Services

link: http://msdn.microsoft.com/en-us/library/bb165099.aspx

利用vs开发自己的新语言的方法:语言服务

 

The purpose of a language service in Visual Studio is to provide language-specific support for editing source code in the integrated development environment (IDE). You implement a language service as part of a VSPackage.

This section discusses the structure and implementation of a Visual Studio language service.

For an end-to-end sample of a language project system that incorporates a language service, see theIronPython Samples. 

 

 

Language Service Essentials

To integrate a programming language into Visual Studio, you must provide a language service. You can develop the service in either managed or native code.

  • For managed code, you can use the Managed Package Framework. For more information, see Implementing a Language Service By Using the Managed Package Framework.

  • For either managed or native code, you can implement the language service interfaces directly. For more information, seeChecklist: Creating a Language Service.


    Language Service Overview (Managed Package Framework)

    A language service provides editor support that lets you implement certain Visual Studio features. The Managed Package Framework (MPF) language service classes provide full support for frequently-used features and partial support for other features.

      Fully Supported Features in the MPF

    The MPF language service classes support the following features:

    • Syntax highlighting

    • Outlining

    • Commenting blocks of code

    • Brace matching

    • Code snippets

    • Custom document properties

    • IntelliSense parameter information

    • IntelliSense Quick Info

    • IntelliSense member completion

    • IntelliSense word completion

      Partially Supported Features in the MPF

    The MPF provides only partial support for the following features. This means that you must implement the methods that are called by the MPF.

    • Reformatting code. You supply the code that implements the reformatting.

    • Validating breakpoints by identifying valid code spans. You supply the code that identifies the code spans.

    • Supporting the debugger Autos window for displaying variables. You supply the code that determines what to show in the window.

    • Supporting the Navigation bar for quick navigation between types and members. You implement and return a helper class that populates the lists in the Navigation bar combo boxes.

     

 

 

 

posted on   风过 无痕  阅读(467)  评论(0编辑  收藏  举报

(评论功能已被禁用)
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?

导航

统计

向日葵支付宝收钱码
点击右上角即可分享
微信分享提示