【发布时间】:2015-12-08 19:39:55
【问题描述】:
我正在尝试在 VisualStudio IDE 中扩展 html 完成。我将它用于框架,它将 html 标记与自定义表达式相结合。我需要添加对这些表达式的支持。问题是,当我实现我的CompletionSource 来为标记中的自定义元素提供补全时,已经有一个 CompletionSet,特别是 HtmlCompletionSet 在 completionSets 中传递了我的CompletionSource 的 AugmentCompletionSession。我应该添加我在CompletionSourceProvider 上使用[Order(After = "default")] 属性以确保我的完成在html 完成之后进行。
问题是我不希望 html 补全中的任何内容显示在我的自定义元素上。我想摆脱整个HtmlCompletionSet。
所以这是我尝试过的:
- 填写我自己的完成集
- 将我的完成集添加到 completionSets
- 检查是
HtmlCompletionSet在那里 - 删除
HtmlCompletionSet如果有/更新完成集使其为空
这会导致完成会话消失。我猜它会自动被解雇或其他什么。我应该怎么办?有什么优雅的方法可以解决这个问题吗?
【问题讨论】:
-
一般来说,CompletionSet API 并不是真正为“替换现有事物”而设计的;他们的模型是仅附加的。您可能需要专门询问 HTML 编辑器人员是否有更具体的扩展点。
-
感谢您的回复。问题是我不知道该联系谁来回答这些问题。
-
是的,老实说我也不行。 :-/ 让我在内部发送一封电子邮件。
标签: c# html visual-studio visual-studio-extensions