如何禁用 VS Code 自动重命名标签/HTML 镜像功能?

dmi*_*eev 25 visual-studio-code

我希望能够轻松地一起编辑 HTML 标签。在我看来,这在当今是一件很容易实现的事情,所以我安装了这个auto-rename-tag 扩展,结果它对我没有用:而不是帮助我编辑 html/jsx 代码,它破坏了一切,我必须撤消它所做的事情并尝试编辑该事物以避免触发它。

这里的合乎逻辑的事情显然是从我的系统中删除这个扩展。然而,这里唯一的问题是我似乎无法做到这一点 - 我已经卸载了它,甚至重新安装了 VS Code,尝试了 VS Code Insiders,但它仍然启用:

在行动

现在是内置的吗?如何禁用它?

VSCode 版本:1.41.0,提交 9579eda04fdb3a9bba2750f15193e5fafe16b959

Gin*_*pin 41

它已成为一个内置功能,与自动重命名标签扩展分开。如果你不喜欢它,你可以根据你安装的版本禁用它。


1.52+ 更新

该设置现已重命名为Linked Editing

在类型重命名为当其匹配的结束标记进行修改编辑标签功能现在被称为链接编辑。启用链接编辑的命令是开始链接编辑(??F2) 和 Escape 禁用链接编辑模式。

启用/禁用它的设置现在是:

"editor.linkedEditing": true 
Run Code Online (Sandbox Code Playgroud)

或者从用户界面:

设置 > 链接编辑


1.44+ 更新

他们更改了镜像光标功能,现在将其称为Synced Regions

在此处输入图片说明
(复制自 VS Code 1.44 发行说明)

当在 HTML 标签上激活时,如果开始和结束标签都变成“同步”,那么改变一个也会改变另一个。不过,该功能在默认情况下是禁用的,您可以明确执行On Type Rename Symbol命令或将editor.renameOnType设置设置为 true。

通过此更改,html.mirrorCursorOnMatchingTag1.41 中引入的内容现在将显示为已弃用(或变灰)。

在此处输入图片说明


1.42+ 更新

html.mirrorCursorOnMatchingTag现在默认情况下,在开始停用1.42
请参阅此其他答案以获取发行说明中的​​引用。


1.41 的原始答案

从 1.41 开始,它现在是一个内置功能。

HTML 镜像光标
https://code.visualstudio.com/updates/v1_41#_html-mirror-cursor

当您编辑 HTML 标签时,VS Code 现在会添加一个“镜像光标”。此行为由设置控制html.mirrorCursorOnMatchingTag,默认情况下该设置 处于启用状态。

当光标移动到 HTML 标记名称范围内时,此功能通过向匹配标记添加多光标来工作。就像在多光标模式下一样,您可以使用逐字删除或逐字选择。当您将光标移到标记名称范围之外时,镜像光标将被移除。

基本上,选择标签开始或标签结束会在每个标签上放置 2 个光标,因此编辑一个也会编辑另一个。它默认启用。

您可以从设置中明确禁用它。

通过用户界面:

在此处输入图片说明

通过 settings.json:

"html.mirrorCursorOnMatchingTag": false,
Run Code Online (Sandbox Code Playgroud)

  • 我发现这个功能在复制/粘贴操作时有很多错误并且损坏了 HTML。我在这里留下此评论是因为代码开发人员阻止在他们的网站上创建问题:( PS 看来 html.mirrorCursorOnMatchingTag = false 有所帮助 (15认同)
  • 这个功能有很多错误,当我编辑标签属性时,它会任意更改其他标签中的内容并删除大量内容。它不应该在这种状态下熄灭。像这样的事情有可能毁掉一个好的编辑器,当他们开始用半生不熟和未经测试的功能来膨胀它时,而它以前工作得很好。 (9认同)
  • 我同意 KoViMa 和 @Garret Wilson 的观点,即默认实现此功能会质疑代码开发团队的判断。在这个 MS 监控的线程中表达自己的想法:https://github.com/microsoft/vscode/issues/87737 (5认同)