gpt4 book ai didi

visual-studio - 自定义Intellisense扩展

转载 作者:行者123 更新时间:2023-12-03 10:15:27 26 4
gpt4 key购买 nike

我想在Visual Studio中编写对智能感知的补充。

是否有可能进行扩展,根据我的研究,我尚未找到有关智能感知扩展的任何示例或文档。

我如何获得intellisense来显示简单的HelloWorld消息,如下所示(其中hello world在运行时添加到String的intellisense中):

最佳答案

因此,在Visual Studio 2010和更高版本中,您要使用的可扩展性API在Microsoft.VisualStudio.Languages.IntelliSense命名空间下。在较高的级别上,您希望MEF导出一个ICompletionSourceProvider,它将提供所需的项目。有两个不错的博客文章herehere演示了基本技术。

如果要使屏幕截图成为现实,就会遇到两个问题。 (这就是为什么我要求这种情况的原因,因为这里的建议会发生变化。)首先,此方法在法律上不允许您追加到现有的完成集上,而是提供一个新的完成集。在UI中,它显示为两个选项卡,如Visual Basic编辑器中的“通用/所有”选项卡。这是当前API的限制。您可以尝试修改AugmentCompletionSource中现有的完成集之一,但我不知道这样是否可行。无论如何,它绝对不受支持。

其次,真的很难知道何时何地推荐事物。在您的示例中,您说的是“string的智能感知”。遗憾的是,VS中没有任何API(当前)可以让您知道点之前的内容。您可以执行一些简单的试探法,或尝试实现一些适用于您的方案的Good Enough™解析器,但是您现在必须接受,因为您将不会获得完美的结果。

Roslyn项目旨在解决第二个问题,因此您可能会发现进一步探索它很有用。由于我们希望很多人希望扩展完成范围,因此我们也在考虑提供其他可扩展性API,因此您不必从头开始编写ICompletionSourceProvider,但此类API不在当前的CTP中。

[免责声明:我是Roslyn团队的成员,从事智能感知。

关于visual-studio - 自定义Intellisense扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10460138/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com