VS 代码条件片段
VS Code Conditional Snippets
我希望在特定语言的 VS Code IntelliSense 中有条件地列出一些片段。我正在考虑创建一个扩展,截取 CompletionItems
的列表,并根据 languageId 和 settings/configuration 删除不满足我的条件的任何片段我将为扩展做出贡献。我正在寻找最简单的解决方案来完成此任务,但如果我需要语言服务器,那就这样吧。如果我可以为特定的 languageId 动态加载片段文件,那就更好了。我只需要一个更熟悉 API 的人的起点。我什至还没有找到如何检索 CompletionList
以开始拦截——我搜索了 API 文档,但除了它的对象定义之外什么也没找到。
从 VSCode 1.14 开始,您不能有条件 user snippets 但扩展可以有条件地贡献片段。尝试创建一个 CompletionItemProvider
的 returns 完成项目,其 kind
设置为 CompletionItemKind.Snippet
。
VSCode 代码库中的 JsDocCompletionProvider
就是这种模式的一个示例。当光标周围的区域匹配正则表达式时,它只会 returns jsdoc 片段
我希望在特定语言的 VS Code IntelliSense 中有条件地列出一些片段。我正在考虑创建一个扩展,截取 CompletionItems
的列表,并根据 languageId 和 settings/configuration 删除不满足我的条件的任何片段我将为扩展做出贡献。我正在寻找最简单的解决方案来完成此任务,但如果我需要语言服务器,那就这样吧。如果我可以为特定的 languageId 动态加载片段文件,那就更好了。我只需要一个更熟悉 API 的人的起点。我什至还没有找到如何检索 CompletionList
以开始拦截——我搜索了 API 文档,但除了它的对象定义之外什么也没找到。
从 VSCode 1.14 开始,您不能有条件 user snippets 但扩展可以有条件地贡献片段。尝试创建一个 CompletionItemProvider
的 returns 完成项目,其 kind
设置为 CompletionItemKind.Snippet
。
VSCode 代码库中的 JsDocCompletionProvider
就是这种模式的一个示例。当光标周围的区域匹配正则表达式时,它只会 returns jsdoc 片段