我想在VS代码的标签内包装我所选择的html。 我怎么做呢?


当前回答

在我看来,使用snippet有一个更好的答案

用这样的定义创建一个代码片段:

"name_of_your_snippet": {
    "scope": "javascript,html",
    "prefix": "name_of_your_snippet",
    "body": "<${0:b}>$TM_SELECTED_TEXT</${0:b}>"
}

然后在键绑定中将其绑定到一个键。例如:

{ 
    "key": "alt+w",
    "command": "editor.action.insertSnippet",
    "args": { "name": "name_of_your_snippet" }
}

我认为这应该给你完全相同的结果htmlltagwrap,但不需要安装扩展。

它将在选定的文本周围插入标签,默认为<b>标签&选择标签,因此键入可以更改它。

如果您想使用不同的默认标记,只需更改代码片段的body属性中的b。

其他回答

在VSCode市场上快速搜索:https://marketplace.visualstudio.com/items/bradgashler.htmltagwrap。

启动VS代码快速打开(Ctrl+P) 粘贴ext install htmltagwrap并进入 选择HTML 按Alt + W (Mac选项+ W)。

嵌入的艾米特可以做到这一点:

选择文本(可选) 打开命令面板(通常是Ctrl+Shift+P) 执行Emmet:用缩写结尾 输入标签div(或缩写。wrapper>p) 回车

命令可以分配给键绑定。


这个东西甚至支持传递参数:

{
    "key": "ctrl+shift+9",
    "command": "editor.emmet.action.wrapWithAbbreviation",
    "when": "editorHasSelection",
    "args": {
        "abbreviation": "span",
    },
},

像这样使用它:

span.myCssClass 跨度# myCssId b b.myCssClass

许多命令已经附加到简单的ctrl+[key],你也可以做和弦键绑定,如ctrl a+b。

(如果这是你第一次阅读和弦键绑定:它们的工作原理是不放开ctrl键,然后在第一个键后按第二个键。)

我有我的Emmet: Wrap with缩写绑定到((ctrl) (w+a))。

在windows中:文件>首选项>键盘快捷键((ctrl) (k+s))>搜索带缩写的换行>双击>添加你的组合。

在VSCode 1.47+中,你可以简单地使用OPT-w。

利用内置功能来触发emmet,这是最简单的方法:

选择你的text/html。 Shift +选项+ w 在命令面板中打开的emmet窗口中,输入所需的标记或包装代码。 输入 瞧

由于我不能评论,我将详述亚历克斯的精彩答案。

如果你想要类似于sublime的换行体验,打开键盘快捷键(command⌘/Ctrl+shift+P > Preferences: open Keyboard Shortcuts (JSON)),并添加以下对象:

{
    "key": "alt+w",
    "command": "editor.emmet.action.wrapWithAbbreviation",
    "when": "editorHasSelection && editorTextFocus"
}

哪个将Emmet wrap命令绑定到选项 当选择文本时,为“/Alt+W”。

你也可以使用UI来做到这一点,打开键盘快捷键菜单并搜索“emmet wrap with缩写”来添加快捷键。