4

有没有办法在 Visual Studio 中应用“贪婪”行为和键?“贪婪”是指当光标位置和下一个单词绑定之间的所有空格都可以使用一次击键删除时的这种行为。

4

9 回答 9

7

好吧,我不认为您可以更改删除键或退格键的绑定 - 但 CTRL+DEL 和 CTRL+Backspace 非常接近您想要的。

于 2008-09-18T13:10:47.623 回答
3

您可以使用Ctrl+Shift+箭头键进行选择,然后点击 Delete。您可能需要在仍按Ctrl+Shift组合的同时多次按箭头键,但由于手指处于同一位置,因此速度非常快。这也适用于增量选择单词。

于 2008-09-18T13:06:59.037 回答
3

实际上,您需要这样做:Ctrl+ Shift+ Left+Right - 这将只给您选择的空间,然后您可以按删除。

这是假设您来自右侧,并且您必须删除左侧的空间。

当然,这仍然是 5 次击键……但它胜过一次又一次按退格键……

于 2008-09-18T13:11:31.037 回答
2

只需Ctrl+Backspace ...

于 2008-09-18T13:09:03.523 回答
2

Ctrl+Back SpaceCtrl+Delete也是贪婪的,它们删除各自方向上最近的单词。

于 2008-09-18T13:12:10.320 回答
1

听起来您可以为其编写宏,然后分配给键盘快捷键(例如SHIFT+ DEL)。

如果您探索 EnvDTE 命名空间,您可以做很多事情来更改活动文档窗口中的文本。我会先检查类似...

    Public Sub RemoveWhiteSpace()
        DTE.ActiveDocument.Selection.WordRight(True)
        DTE.ActiveDocument.Selection.Text = " "
    End Sub

这只是一个简单的例子,但你可以很容易地进一步扩展它

于 2008-09-18T13:11:27.387 回答
1

您正在寻找:

Edit.DeleteHorizo​​ntalWhiteSpace

我将它设置为 Ctrl+K, Ctrl+\ 我认为这是默认设置,但可能不是

于 2009-09-08T11:47:33.787 回答
1

最近,ReSharper 将其作为一个选项。默认情况下它是打开的,这导致了这个问答:Visual Studio 最近的“饥饿”或“贪婪”退格行为更新?

也许这不符合直接在 Visual Studio 中应用该行为的条件,但很高兴了解这一点。

于 2019-08-09T15:21:48.337 回答
0

好的,我有这个 < Ctrl > 的东西。并应用这些知识,我找到了相应的 VS 命令:Edit.WordDeleteToStartEdit.WordDeleteToEnd

我已经使用 Options->Environment->Keyboard 对话框成功地重新映射了 < Delete > 和 < Backspace > 键。不幸的是,这个命令不仅适用于我希望的空白,但仍然感谢大家!

于 2008-09-18T14:42:04.207 回答