当我使用 VisualStudioCode (按回车键后创建一条新线)复制和粘贴一段代码时,会发生以下情况:
它似乎保留了由新行创建的缩进,并在其上添加了来自复制代码片段的先前信息。我宁愿代码在粘贴上自动美化。
可以通过设置更改此行为吗?
编辑: 我指的不是跨平台的复制粘贴,我指的是在 Visual Studio Code 中在同一个文件中进行复制和粘贴。
这个插件可以帮助你:
粘贴缩进扩展
你只要改变捷径就行了。请记住,如果您使用的是 Mac,那么您可能希望使用 'cmd'而不是 'ctrl'。 像这样:
'cmd'
'ctrl'
{ "key": "ctrl+v", "command": "pasteAndIndent.action", "when": "editorTextFocus && !editorReadonly" }, { "key": "ctrl+v", "command": "editor.action.clipboardPasteAction", "when": "!editorTextFocus" }, { "key": "ctrl+shift+v", "command": "editor.action.clipboardPasteAction", "when": "editorTextFocus && !editorReadonly" }
这已经集成在 vscode 中,在设置中具有 "editor.formatOnPaste": true属性。
"editor.formatOnPaste": true
一个简单的修复方法是在复制代码后尝试 Ctrl + Shift + V。它将正确粘贴所有代码与缩进在其中。
Ctrl + V紧随其后的 Ctrl + Z似乎可以立竿见影。
试试我的 粘贴缩进分机。根据当前行的缩进粘贴内容,并使其对齐该缩进。
我使用 vs code 1.68.0对 ubuntu 20.04和以下工作为我。
vs code 1.68.0
ubuntu 20.04
ctrl + [ + V.
ctrl
[
V
但话又说回来,它只是 ctrl + [和 ctrl + v的组合(如果正常的 ctrl + v是“正确的”运行)。 同样,如果正常的 ctrl + v是“左”运行,那么可以使用 ctrl + ] + V。
v
]
这一直让我抓狂,实际上我需要设置 "editor.formatOnPaste": false
"editor.formatOnPaste": false