如何在 Visual Studio Code 中激活自动尖括号 `<>` 配对完成?

dbo*_*boy 3 autocomplete visual-studio-code

我只是不知道如何<>在 Visual Studio Code 中激活自动尖括号配对,就像它存在于圆括号{}、圆括号()或方[]括号中一样。任何人都有任何线索,在设置中我可以配置它吗?

Mar*_*ark 6

vscode 中没有设置允许您更改被视为括号的内容,例如添加<>.

有一个问题“自动关闭对应该是可配置的” 讨论了这个问题,您可能希望对其进行投票。在该问题中,提到您可以编辑语言配置文件以将您自己的“括号”添加到列表中。在 Windows 上,javascript 语言配置文件位于:

C: \Users\Mark\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\javascript\javascript-language-configuration.json;
Run Code Online (Sandbox Code Playgroud)

其他语言也是如此(您没有说出您对哪种语言感兴趣)。Javascript 通常不支持括号匹配,<>但我通过编辑文件添加了该功能,如下所示:

{
    "comments": {
        "lineComment": "//",
        "blockComment": [ "/*", "*/" ]
    },
    "brackets": [
        ["<", ">"],                       // added
        ["{", "}"],
        ["{", "}"],
        ["[", "]"],
        ["(", ")"]
    ],
    "autoClosingPairs": [
        { "open": "<", "close": ">" },    // added
        { "open": "{", "close": "}" },
        { "open": "[", "close": "]" },
        { "open": "(", "close": ")" },
        { "open": "'", "close": "'", "notIn": ["string", "comment"] },
        { "open": "\"", "close": "\"", "notIn": ["string"] },
        { "open": "`", "close": "`", "notIn": ["string", "comment"] },
        { "open": "/**", "close": " */", "notIn": ["string"] }
    ],
    "surroundingPairs": [
        ["<", ">"],                       // added
        ["{", "}"],
        ["[", "]"],
        ["(", ")"],
        ["'", "'"],
        ["\"", "\""],
        ["`", "`"]
    ],
    "autoCloseBefore": ";:.,=}])>` \n\t",
    "folding": {
        "markers": {
            "start": "^\\s*//\\s*#?region\\b",
            "end": "^\\s*//\\s*#?endregion\\b"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

它可以工作 -重新加载后,在 javascript 文件中演示:

尖括号演示

现在,该文件在更新时被覆盖,因此我将在其他地方保留一个副本,并带有指向其位置的指针。


另一种选择 - 不太好,例如没有环绕功能,是制作一个带有<前缀的片段(在您的片段文件之一中)。

"angle bracket": {
  "prefix": "<",
  "body": [
    "<>"
  ],
  "description": "complete angle bracket"
}, 
Run Code Online (Sandbox Code Playgroud)

输入后,<您必须tab完成它。这也有效。