Visual Studio Code片段作为键盘快捷键

时间:2016-09-05 15:22:44

标签: visual-studio-code

我知道如何修改和创建代码片段,我知道如何修改快捷键,但是如何将这两者组合在一起?

2 个答案:

答案 0 :(得分:17)

请注意,下面的行会打开为您当前使用的语言定义的代码段列表

"args": { "snippet": "'$TM_SELECTED_TEXT'" }

然而,使用以下行,作为参数给出的片段将立即执行

"args": { "name": "your_snippets_name" }

以下是我为HTML定义一个代码段的方法,我想在其中选择一个文字,并在按CTRL-B时将文字括在<strong></strong>代码中:

"make_strong": {
    "prefix": "strong",
    "body": [
        "<strong>$TM_SELECTED_TEXT${1:}</strong>"
    ],
    "description": "Encloses selected text in <strong></strong> tags"
}
  

注意上面的${1:} - 它的作用是将光标放在那里。这使您可以在光标处按CTRL-B,然后将光标放在<strong></strong>标记内。选择字符串并按CTRL-B时,字符串将放在<strong>标签之间,光标将放在结束<strong>标记之前。此时按TAB,会将光标放在结束<strong>标记之后。

并在我的keybindings.json中添加了以下内容:

{
    "key": "ctrl+b",
    "command": "editor.action.insertSnippet",
    "args": { "name": "make_strong" }
}

答案 1 :(得分:10)

从版本1.9开始,Visual Studio Code似乎可以满足您的需求,无需其他扩展。

来自https://code.visualstudio.com/updates/v1_9#_insert-snippets

&#34;您现在可以将自己喜欢的代码段绑定到键绑定。用单引号括起选区的示例如下所示:&#34;

将下面的代码段添加到keybindings.json(打开“键盘快捷键”编辑器,然后点击For advanced customizations open and edit keybindings.json链接)

{
    "key": "cmd+k",
    "command": "editor.action.insertSnippet",
    "args": { "snippet": "'$TM_SELECTED_TEXT'" }
}