在Visual Studio中有没有选择当前行的快捷方式?

62

我在VS的快捷键列表中找不到这样的功能。有什么办法吗?


27
首页,Shift+End? :) - Assaf Lavie
2
有时候你需要按两次“主页”键,有时候只要按一次,所以它不是幂等的(也就是不能使用肌肉记忆),因此不是理想的。 - Ivan Castellanos
20个回答

3

其他回答需要使用鼠标或按下多个组合键。因此,我创建了一个宏,用于想要类似于VSCode的Ctrl+L行为的人。它可以选择多行,对于移动代码块非常有用。

要使用它,请安装Visual Commander宏扩展:https://marketplace.visualstudio.com/items?itemName=SergeyVlasov.VisualCommander

然后创建一个新命令,选择C#作为语言,并粘贴此代码:

using EnvDTE;
using EnvDTE80;

public class C : VisualCommanderExt.ICommand
{
    public void Run(EnvDTE80.DTE2 DTE, Microsoft.VisualStudio.Shell.Package package) 
    {
        var ts = DTE.ActiveDocument.Selection as EnvDTE.TextSelection;
        if (!ts.ActivePoint.AtStartOfLine)
            ts.StartOfLine();
        ts.LineDown(true, 1);
    }
}

现在您可以在首选项中指定所需的快捷方式:

enter image description here

在 VS 2022 中测试。


我已经习惯了在Sublime文本编辑器中使用Ctrl+L,而这个解决方案正好像那样工作,谢谢。 - FamousSnake

1
你可以使用CTRL + U。这个快捷键也用于取消注释。
你可以更改此功能的快捷键。转到 工具->选项->环境->键盘->编辑。UncommentSelection并分配CTRL + W(与Resharper相同),或者您可以使用您想要的任何快捷键。

1
只需在左边的边距处单击即可。 如果您单击大纲展开符号[+][-]左侧的边距,它将选择整行。 您还可以只需点击并拖动以选择多行。 Necvetanov 在他上面的答案中提到了这一点,即单击行号。 没错...但恰巧行号在边距中。 这是 Visual Studio 中所有键盘快捷键的完整列表Visual Studio 的默认键盘快捷键

1
这是唯一接近的事情。谢谢。 - StayCool

1

您可以将绑定设置为 Edit.ExpandSelection 命令: enter image description here

在选项中,单击快捷键,直到选择整行。

上面的截图来自 Visual Studio 2022 的 Edit > Advanced 菜单。我自己设置了这个 Alt+E, E 快捷键,我不记得它最初是否设置为某些内容。


0

如果想要选择整行,按下 Ctrl E + U


当行是注释行时,这种方法效果不太好。 - NetMage

0

您可以输入home,然后再按shift + end。这样做的效果是将光标移动到行首并选择整行直至行尾。或者您也可以先输入end,然后再按shift + home


0
一个解决方法是:
ctrl+d = 复制行
ctrl+l = 复制行
ctrl+v = 粘贴复制的文本


0
在 Mac 上,它是 +L
但如果您有一些特定的冲突键绑定,这将无法正常工作。在我的情况下,VSCode Live Server 扩展自动注册了这些键的几个绑定。我删除了它们,然后它就可以正常工作了。

0

在 VS Code 左侧显示的行号上单击即可。只需一次点击,就可以选择一行。


0
我为以下功能分配了一个快捷键。我按下快捷键,直到它选择整个当前行:
Edit.SubwordExpandSelection

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接