如何在Visual Studio代码中复制行或选择?

Chr*_*ris 628 keyboard-shortcuts editor visual-studio-code

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

这是我不断使用的功能,并且在没有它的情况下使用Visual Studio Code正在努力.

Ben*_*ero 1131

您正在寻找的命令是editor.action.copyLinesDownActioneditor.action.copyLinesUpAction.

您可以通过选择" 文件">"首选项">"键盘快捷键"来查看关联的键绑定

视窗:

Shift+ Alt+ DownShift+ Alt+Up

苹果电脑:

Shift+ Option+ DownShift+OptionUp

Linux的:

Ctrl+ Shift+ Alt+ DownCtrl+ Shift+ Alt+Up

(可能需要使用numpad DownUpLinux)

此外,命令editor.action.moveLinesUpActioneditor.action.moveLinesDownAction对移动线的,他们必然Alt+ DownAlt+ Up在Windows和Mac Ctrl+ DownCtrl+ Up在Linux上.

  • 似乎"Alt + Up"或"Alt + Down"会上下移动现有的一行.尼斯 (51认同)
  • 不适合我.在ubuntu上工作14. (19认同)
  • Linux上的`ctrl + shift + alt + down/up`仅适用于数字键盘箭头键. (19认同)
  • 你知道如何"重复选择"吗?我找不到合适的命令:( (14认同)
  • `Ctrl-Shift-Alt-Down/Up` 对于这种常见的排序来说是一个非常痛苦的快捷方式:( 我喜欢 Pycharm 中的 `Ctrl-D` (5认同)
  • **工具| 选项| 环境| 键盘**在VS2015中 (4认同)
  • 值得注意的是,copyLines操作不存在于完整的Visual Studio中,只存在于Visual Studio Code中. (2认同)
  • 那不一样。在这种情况下,当您选择_line结尾+下一行完整_时,它将复制2行(整个第一行,而不仅仅是\ r \ n)。这很烦人:( (2认同)
  • 默认的`ctrl + shift + alt + down`在ubuntu上对我不起作用.它在重新分配到'ctrl + shift + d`时有效. (2认同)
  • Ctrl-Shift-Alt-Down / Up在Ubuntu 17.10.1上不起作用-这可作为Gnome的工作场所移位器。 (2认同)
  • 因此,在没有数字键盘的 Linux 笔记本电脑中,该快捷方式不起作用。 (2认同)
  • 奇怪的是,在 Linux 上,“在上方添加光标”和“在下方添加光标”有两个键绑定。其中之一是“向上/向下复制行”的默认 Windows 快捷方式。不确定 **When `!editorReadonly`** 的实际用途是什么,但我已经重新分配了键绑定,以便在 Linux 上具有与 Windows 相同的快捷方式。 (2认同)
  • @Seralto 回答了一个新命令,称为“editor.action.duplicateSelection” (2认同)

man*_*ukn 163

你可以找到键盘快捷键

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

默认键盘快捷键是,

Copy Lines Down Action:shift+ alt+down

Copy Lines Up Action : shift+ alt+up

Move Lines Up Action : alt+up

向下移动行动 : alt+down

或者您可以覆盖键盘快捷键

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

并编辑 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"
    }
]
Run Code Online (Sandbox Code Playgroud)


Ant*_*Man 38

它错过了这个问题的答案,"如何复制代码选择"类似于Sublime的cmd/ ctrl+ shift+ d或Jetbrains' cmd/ ctrl+ d行为.

安装插件从VS Code Marketplace 重复选择或行

重复选择或行VS Code插件

此扩展为ctrl+ d(Windows/Linux)和cmd+ d(MacOS)提供绑定.自定义键盘快捷键首选项 - >键盘快捷键:

{
  "mac": "cmd+d",
  "key": "ctrl+d",
  "command": "geeebe.duplicateText",
  "when": "editorTextFocus"
}
Run Code Online (Sandbox Code Playgroud)

注意:快捷方式也会出现重复行,因此如果您安装它,请删除之前的ctrl+ d快捷方式copyLinesDownAction(如果您之前已执行此操作),否则重复选择可能会出错.

  • 我对“向下复制行”快捷方式感到沮丧,它的行为并不完全像 Sublime Text/Intellij Ctrl+D 功能(它复制了整行而不是仅复制了所选内容)。感谢您指出这个插件! (5认同)
  • 我本来打算放弃 vscode 并安装atom,但这个扩展阻止了我。vscode 默认的重复功能不符合要求。原子在这方面要好得多。 (2认同)

Nah*_*hid 28

在VScode中,他们称之为Copy Line UpCopy Line Down

从菜单中,转到:

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

检查已指定的键盘快捷键,或调整您的.

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

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

在此输入图像描述


Nic*_*eer 18

VSCode Ctrl + CCtrl+中V复制下面的整行.

我更喜欢这个被接受的答案,因为它只需要一只手就可以做到这一点并感觉更自然.

对于大多数人来说,接受的答案可能会做到这一点,但是Down键盘的另一面也是如此.所以你有两个选择,双手打开(左手:L Shift+ L Alt+右手:) Up/Down,或者用一只手使用右手R Shift+ R Alt+ Up/Down.在我看来,第二种选择感觉很奇怪.我宁愿使用我的手自然地坐在键盘上的选项,如果它的一只手,甚至更好.

  • 这样做的主要问题是您松开了剪贴板上的内容 (3认同)

eil*_*diz 16

试试ALT+ SHIFT+ UP/DOWN

它对我有用!


Nat*_*lie 13

重复行:alt+ shift+ \xe2\x96\xb3/\xe2\x96\xbd

\n

上/下移动行:alt+ \xe2\x96\xb3/\xe2\x96\xbd

\n


Sum*_*kla 11

  • 对于迁移到VSCode 的Jetbrains IDE 用户,没问题。

  • 安装:
    1) JetBrains IDE Keymap :扩展
    2) vscode-intellij-idea-keybindings扩展 (Preferred)

  • 使用这个Intellij Darcula Theme扩展

  • 键盘映射覆盖了 VS Code 的大部分键盘快捷键,让 VS Code 更像JetBrains IDE

  • 以上扩展将键绑定从 JetBrains 导入到 VS Code。安装扩展并重新启动 VS Code 后,您可以像IntelliJ IDEA、Webstorm、PyCharm等一样使用 VS Code 。

  • 只需 JetBrains IDE Keymap 扩展即可。这为您提供了熟悉的“ctrl”-“D”快捷键。 (2认同)

小智 11

只需转到文件 -> 首选项 -> 键盘快捷键 在那里您可以更改您喜欢的任何快捷键。搜索重复项并将其更改为您在其他编辑器中始终使用的任何内容。我改为Ctrl+D

  • 您需要在键盘快捷键列表中更改的命令称为:“Duplicate Selection”“(editor.action.duplicateSelection)” (4认同)
  • 绝对是我现在的想法。我在 Linux 上尝试了公认的答案,但它根本不起作用。编辑自己的快捷方式是一个很好的实践,也是美好未来的新开始。CTRL + D 是最直观、最简单的快捷命令。为什么......为什么...... CTRL + SHIFT + ALT + ..请停止,我的电脑在执行此操作后几乎关闭并重置。 (3认同)

Yat*_*ari 11

Ctrl+ c+v在 Windows 中同时按下这些键而不是分开


Dav*_*dow 10

请注意,对于Ubuntu用户(<= 17.4),Unity使用CTRL+ ALT+ SHIFT+ Arrow Key跨虚拟工作区移动程序,这与VS Code快捷方式冲突.您需要重新绑定editor.action.copyLinesDownActioneditor.action.copyLinesUpAction避免冲突(或更改工作区键绑定).

对于使用GNOME的Ubuntu 17.10+,似乎GNOME 不会根据其文档以相同的方式使用此键绑定,但如果在17.10上使用vanilla工作区的人可以确认这一点,则可能对将来的求助者有所帮助.


Ama*_*pta 10

对于Windows

向上复制 - shift+ alt+up

向下复制 - shift+ alt+down

对于Mac

向上复制 - shift+ option+up

向下复制 - shift+ option+down

对于linux

向上复制 - ctrl+ shift+ alt+8

向下复制 - ctrl+ shift+ alt+2

注意:您可以通过按ctrl+ shift+p来更改 Visual Studio 代码的键盘快捷键键绑定,然后在托盘中键入打开键盘快捷键,然后按Enter,这样将打开新文件(键盘快捷键文件), 您可以在其上看到所有快捷键并且可以通过在相应的键绑定上单击两次然后输入您自己的键绑定来更改键绑定,最后按回车键。

希望这会帮助某人!


Gra*_*ful 9

问题

Ubuntu 上原始的“duplicate line down”快捷方式似乎存在问题,主要是由于与操作系统上现有的工作区相关快捷方式发生冲突。

解决方法

但是,一种简单的解决方法是简单地CTRL+ C(复制整行)和CTRL+ V(将复制的行粘贴到新行上)...有效地为您提供相同的最终结果。


Ser*_*lto 9

如果未选择任何内容或复制所选单词,则此键盘映射将复制当前行

  1. 使用权:

    文件/首选项/键盘快捷键

  2. 在右上角,单击“打开键盘快捷键 (JSON)”

  3. 插入这个键盘映射:

     {
       "key": "shift+alt+d",
       "command": "editor.action.duplicateSelection"
     }
    
    Run Code Online (Sandbox Code Playgroud)
  4. 使用alt+向上/向下箭头移动线条(VS Code 的默认行为)。


小智 8

在 MacOS 中我通常使用:

\n
    \n
  • 复制上面的行shift+ option+\xe2\x86\x91
  • \n
  • 复制下面的行shift+ option+\xe2\x86\x93
  • \n
\n


cyb*_*fly 6

如果您来自Sublime Text并且不想重新学习新的键绑定,则可以将此扩展用于Visual Code Studio.

VS代码的Sublime文本键映射

此扩展程序将最流行的Sublime Text键盘快捷方式移植到Visual Studio Code.安装扩展并重新启动VS Code后,您可以使用Sublime Text中最喜欢的键盘快捷键.

https://marketplace.visualstudio.com/items?itemName=ms-vscode.sublime-keybindings