【问题标题】:How to Create Custom Key Binded Snippets in VS Code如何在 VS Code 中创建自定义键绑定片段
【发布时间】:2019-06-25 11:28:25
【问题描述】:

我是一个巨大的 Sublime Text 用户,并且学习了如何使用 Sublime 文本中的自定义来提高我的工作效率。但是随着 VScode 日益流行,想检查是否有任何方法可以将快捷键绑定到自定义操作。

例如,我在 VSCode 的任何文件中选择一个单词 ABC,然后按 CTRL+B,它会将我自己定义的值放在它周围,就像它应该变成的那样

<b>ABC</b>

我在 Sublime Text 中创建了以下 sn-p,当我在 Visual Studio Code 中编写时 - keybindings.json 没有任何效果。

{
    "keys": [
        "ctrl+b"
    ],
    "command": "insert_snippet",
    "args": {
        "contents": "<b>${0:$SELECTION}</b>"
    }
}

【问题讨论】:

    标签: visual-studio-code vscode-settings


    【解决方案1】:

    这将在您的 keybindings.json 中起作用:

    {
        "key": "ctrl+b",
        "command": "editor.action.insertSnippet",
        "when": "resourceExtname == .html",         // this is optional
        "args": {
          "snippet": "<b>${TM_SELECTED_TEXT}</b>"
        }
    },
    

    可选的when 子句用于将sn-p 的操作限制为.html 文件。

    更一般的做法是使用内置的 emmet 命令:命令面板中的Emmet: Wrap with Abbreviation。选择您的文本,打开命令面板,找到该命令并触发它 - 输入 b 或任何您的元素,它将使用开始和结束元素包裹所选文本。

    [注意有一个命令workbench.action.toggleSidebarVisibility已经绑定到Ctrl-B,但是上面版本的sn-p似乎优先——这意味着你失去了toggleSidebarVisibility 键绑定功能 - 你可以接受吗?]

    【讨论】:

    猜你喜欢
    • 2018-11-20
    • 1970-01-01
    • 2016-02-05
    • 1970-01-01
    • 2017-03-01
    • 1970-01-01
    • 2020-12-31
    • 1970-01-01
    • 2021-10-28
    相关资源
    最近更新 更多