使用微软的Visual Studio Code,我如何复制一行代码,然后上下移动它?(类似于Sublime的cmd+shift+d行为)
这是一个我经常使用的特性,如果没有它,我很难使用Visual Studio Code。
使用微软的Visual Studio Code,我如何复制一行代码,然后上下移动它?(类似于Sublime的cmd+shift+d行为)
这是一个我经常使用的特性,如果没有它,我很难使用Visual Studio Code。
当前回答
在MacOS中,我通常使用:
复制上面的行shift + option +↑ 复制行下面的shift + option +↓
其他回答
你要找的命令是editor.action.copyLinesDownAction和editor.action.copyLinesUpAction。
您可以通过选择文件>首选项>键盘快捷键来查看相关的键绑定
窗口:
Shift+Alt+下和Shift+Alt+上
Mac:
Shift+Option+Down和Shift+OptionUp
Linux:
Ctrl+Shift+Alt+Down和Ctrl+Shift+Alt+Up
(可能需要使用numpad向下和向上的Linux)
此外,命令editor.action.moveLinesUpAction和editor.action.moveLinesDownAction是移动行,它们在Windows和Mac上绑定为Alt+Down和Alt+Up,在Linux上绑定为Ctrl+Down和Ctrl+Up。
你可以找到快捷键
文件>首选项>键盘快捷方式
默认的快捷键是,
向下复制行动作: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"
}
]
在我的上一个版本Visual Studio Code 1.30.2 它将被自动更改为
ctrl + D
对于从WebStorm/PhpStorm迁移的用户,
你可以安装IntelliJ IDEA Keybindings来继续使用几乎所有的键盘快捷键,就像你在Webstorm/Phpstorm中所做的那样。
So,
重复的行=> CTRL + D 移动一行/选择的代码向上/向下=> Ctrl + Shift +向上/向下
另外,这里有一个推荐的VS Code扩展列表,可以让你从WebStorm/Phpstorm过渡得更容易。
对于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来格式化代码。