【问题标题】:VS Code Conditional SnippetsVS Code 条件片段
【发布时间】:2017-12-26 13:19:39
【问题描述】:

我希望在 VS Code IntelliSense 中针对特定语言有条件地列出一些 sn-ps。我正在考虑创建一个扩展,截取CompletionItems 的列表,并根据我将与扩展一起贡献的语言ID 和设置/配置删除任何不满足我的条件的sn-ps。我正在寻找最简单的解决方案来实现这一点,但如果我需要一个语言服务器,那就这样吧。如果我可以为特定的 languageId 动态加载 sn-ps 文件,那就更好了。我只需要从更熟悉 API 的人那里开始。我什至还没有找到如何检索 CompletionList 来开始拦截——我搜索了 API 文档,但除了它的对象定义之外什么也没找到。

【问题讨论】:

    标签: autocomplete visual-studio-code intellisense code-snippets vscode-extensions


    【解决方案1】:

    从 VSCode 1.14 开始,您不能有条件 user snippets,但扩展可以有条件地贡献 sn-ps。尝试创建一个 CompletionItemProvider 来返回完成项,并将其 kind 设置为 CompletionItemKind.Snippet

    VSCode 代码库中的JsDocCompletionProvider 就是这种模式的一个例子。仅当光标周围的区域与正则表达式匹配时才返回 jsdoc sn-ps

    【讨论】:

    猜你喜欢
    • 2018-08-06
    • 2016-10-18
    • 1970-01-01
    • 2011-06-04
    • 2018-06-26
    • 2018-11-20
    • 1970-01-01
    • 2019-09-05
    • 2021-05-12
    相关资源
    最近更新 更多