在VSCode中选择某些文本时,如何对片段执行IntelliSense?

时间:2018-08-06 06:20:47

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

我写了我的第一个代码片段,它将所选文本包装在if() { selected text }块中。

"if block - snippet": {
        "prefix": "if block - snippet",
        "body": [
            "if( $1 ) {",
            "$TM_SELECTED_TEXT",
            "}",
            "$0"
        ],
        "description": "if block - snippet"
    }

当我选择文本并按CTRL + SPACE时,它会显示智能提示,但是,当我开始搜索我的代码段“ if block-snippet”而不是搜索它时,它将清除所选文本并开始编写“ if blo”。 ...“:P


一种解决方法是使用专用的键绑定来触发代码片段,但我希望它像intellisense建议本身一样更加隐含。有可能吗?

3 个答案:

答案 0 :(得分:0)

这是如果您首先将选择内容复制到剪贴板,以便可以使用:

    "if block - snippet": {
        "prefix": "if block - snippet",
        "body": [
                "if( $1 ) {",
                "$CLIPBOARD",
                "}",
                "$0"
        ],
        "description": "if block - snippet"
}

答案 1 :(得分:0)

点击CTRL + SPACE和智能提示显示后,不要通过键入名称来搜索代码段,而是使用UP / DOWN按钮进行搜索。

答案 2 :(得分:0)

editor.action.showSnippets键绑定上,您还可以执行when的{​​{1}}子句,然后可以将editorHasSelection用于两种功能。这不是不错的内联代码段Intellisense,但更接近我们想要的内容。