我试图找到在Visual Studio代码中复制一行的快捷方式(我使用1.3.1),我尝试了明显的CTRL + D,但似乎不起作用。


复制可以通过CTRL+C和CTRL+V实现,光标在行中,没有任何选择。


点击文件>首选项>键盘快捷键:

在键盘快捷键中搜索copyLinesDownAction或copyLinesUpAction

通常是SHIFT+ALT +↓


Ubuntu更新:

Ubuntu似乎隐藏了这个快捷方式,不让VSCode看到(也就是说,它自己可能会使用它)。在GitHub上有一个问题。

为了在Ubuntu中工作,你必须定义自己的快捷方式,例如使用ctrl+shift+alt+j和ctrl+shift+alt+ k复制一行,你可以使用一个键绑定。Json是这样的:

[
    { "key": "ctrl+shift+alt+j", "command": "editor.action.copyLinesDownAction",
                                    "when": "editorTextFocus && !editorReadonly" },
    { "key": "ctrl+shift+alt+k", "command": "editor.action.copyLinesUpAction",
                                    "when": "editorTextFocus && !editorReadonly" }
]

使用以下方法:Shift + Alt+(↓或↑)


另外2个非常有用的快捷键是上下移动选定的行,就像sublime text…

{
  "key" : "ctrl+shift+down", "command" : "editor.action.moveLinesDownAction",
  "when" : "editorTextFocus && !editorReadonly"
},

and

{
  "key" : "ctrl+shift+up", "command" : "editor.action.moveLinesUpAction",
  "when" : "editorTextFocus && !editorReadonly"
}

VC代码版本:1.22.2 转到:代码->首选项->键盘快捷键(cmd + K;cms + S); 更改(编辑):"Add Selection To Next Find Match": "cmd + what you want" //对我来说这是"cmd + D",我pur cmd + F; 进入"Copy Line Down": "cmd + D" //编辑并设置cmd + D为例 对我来说就是这样,我用mac;


根据操作系统的不同,可以使用以下方法:

窗口:

Shift+ Alt + ↓ 或 Shift+ Alt + ↑

Mac:

Shift +Option +↓或Shift +Option +↑

Linux:

Ctrl+Shift+Alt+↓或Ctrl+Shift+Alt+↑

注意:对于一些linux发行版使用Numpad箭头


在键盘快捷键中搜索copyLinesDownAction或copyLinesUpAction

通常为SHIFT+ALT+↓


Ubuntu:

重复排列:Ctrl + Alt + Shift + 8 重复行下:Ctrl + Alt + Shift + 2


在v1.40中有一个新命令:editor.action.duplicateSelection取消绑定到任何按键绑定。

重复选择 我们添加了一个名为Duplicate Selection的新动作。当执行时, 当前选择将被复制,结果将是 选中。当没有选择时,当前行将为 复制,所有没有写入系统剪贴板。

从https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_40.md

有些人可能会发现它在某些情况下很有用。


Mac:

重复行下:shift + option +↓

重复排列:shift + option +↑


窗口:

重复行下:Ctrl + Shift + D


可以创建仅在Vim for VSCode打开并处于特定模式(即“正常”、“插入”或“可视”)时才激活的键绑定。

为此,使用Ctrl + Shift + P打开VSCode的命令面板,然后搜索“首选项:打开键盘快捷键(JSON)”选择这个选项会打开keybindings.json。在这里,可以添加自定义绑定。

例如,这里是经典的VSCode命令移动/复制行调整,以方便在Vim中使用。

    [
      {
        "key": "alt+j",
        "command": "editor.action.moveLinesDownAction",
        "when": "editorTextFocus && vim.active && vim.mode == 'Normal'"
      },
      {
        "key": "alt+shift+j",
        "command": "editor.action.copyLinesDownAction",
        "when": "editorTextFocus && vim.active && vim.mode == 'Normal'"
      },
      {
        "key": "alt+k",
        "command": "editor.action.moveLinesUpAction",
        "when": "editorTextFocus && vim.active && vim.mode == 'Normal'"
      },
      {
        "key": "alt+shift+k",
        "command": "editor.action.copyLinesUpAction",
        "when": "editorTextFocus && vim.active && vim.mode == 'Normal'"
      },
    ]

现在我们可以在VSCode中使用这些vim友好的命令了!

Alt + J向下移动一行 Alt + K向上移动一行 Shift + Alt + J复制一行 Shift + Alt + K复制一行


如果Ubuntu用户仍然想使用↑和↓键而不是另一组键,这个更新可能会帮助他们。

我刚刚在Ubuntu 18.04 LTS上安装了一个新版本的VSCode,上面添加光标和下面添加光标的命令都是重复的

原来的快捷键

我只是删除了使用Ctrl的绑定,并添加了自己的绑定

拷贝顺序

Ctrl + Shift +↑

拷贝行向下

Ctrl + Shift +↓

新快捷键


根据操作系统的不同,可以使用以下方法:

窗口:

帽子Shift + Alt +↓还是是Shift + Alt +↑。

Mac:

Shift +Option +↓或Shift +Option +↑


要复制当前行而不进行选择,⌘Command + C将完成此操作。对于那些在VSCode上启用了vim的人,你需要确保设置如下:

"vim.overrideCopy": false

这些是默认设置:

窗户

SHIFT+ALT+↓或SHIFT+ALT+↑

操作系统

SHIFT +选项选项+↑↓或SHIFT键+。

然而,如果你想用CTRL+D复制一行,那么你必须修改VS Code的键盘快捷键。

窗户

文件>首选项>键盘快捷方式

操作系统

管理>键盘快捷键(适用于macOS)

然后搜索“复制行向下”。从那里添加CTRL+D或你想要的组合键。