使用微软的Visual Studio Code,我如何复制一行代码,然后上下移动它?(类似于Sublime的cmd+shift+d行为)

这是一个我经常使用的特性,如果没有它,我很难使用Visual Studio Code。


当前回答

在VSCode中,Ctrl+CCtrl+V复制下面的整行。

与公认的答案相比,我更喜欢这个,因为它只需要一只手来做这个,而且感觉更自然。

公认的答案可能对大多数人都适用,但键盘的另一边是“下”。 所以你有两个选择,使用双手(左手:L Shift+L Alt+右手:上/下),或单手使用右R Shift+R Alt+上/下。在我看来,第二种选择很奇怪。我宁愿使用手自然地放在键盘上的选项,如果是一只手,那就更好了。

其他回答

你可以找到快捷键

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

默认的快捷键是,

向下复制行动作:shift+alt+向下

动作:shift+alt+向上

移动队列动作:alt+向上

向下移动线条动作:alt+向下

或者你可以覆盖键盘快捷键从

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

编辑keybindings.json

例子:

[
    {
        "key": "ctrl+d",
        "command": "editor.action.copyLinesDownAction",
        "when": "editorTextFocus"
    },
    {
        "key": "ctrl+shift+up",
        "command": "editor.action.moveLinesUpAction",
        "when": "editorTextFocus"
    },
    {
        "key": "ctrl+shift+down",
        "command": "editor.action.moveLinesDownAction",
        "when": "editorTextFocus"
    }
]

对于Linux用户:我注意到在Linux上你经常需要使用win键。Windows组合为: CTRL + shift + Alt + up

Linux也一样,只需要添加win键: CTRL + shift + win + Alt + up

我注意到现在有几个组合是这样的。说ctrl + alt + L锁定Linux,但ctrl + win + alt + L为Intellij格式的代码。在Windows下只需按ctrl + alt + L来格式化代码。

在MacOS中,我通常使用:

复制上面的行shift + option +↑ 复制行下面的shift + option +↓

在VScode中,他们称之为向上复制行和向下复制行

从菜单转到:

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

检查已经分配的键盘快捷键,或调整你的。

有时默认分配的快捷方式可能不起作用,主要是由于操作系统。

在我的Ubuntu中,我将其调整为:Ctrl+Shift+D

重复行:alt + shift +△/▽

那里震撼/唐氏的铁公园:alt +△/▽。