【问题标题】:How to keep Visual Studio autocomplete from overwriting the next word如何防止 Visual Studio 自动完成覆盖下一个单词
【发布时间】:2014-03-31 06:52:24
【问题描述】:

我在 Visual Studio 中有一个非常烦人的问题。 (我的版本是 2010,我安装了 ReSharper 和 VsVim,但我认为这并不重要。)当我在一些现有代码的开头添加一些代码之前的文本时,自动完成喜欢覆盖一些现有的代码。

以这个示例代码为例:

当我开始在string.Format的开头插入一些代码时:

然后我使用 Tab 来自动完成,它会覆盖string,而我想要的是在string 之前插入的自动完成代码:

我不希望它在我自动完成之后自动删除文本。如果我想删除文本,我可以很容易地自己删除它(尤其是使用 VsVim)。有什么办法可以防止这种行为?我发现自己一直在解决这个问题。

【问题讨论】:

  • 我也很想知道如何解决这个问题。它一直发生在我身上,非常烦人。
  • @ChrisKentfield 我们现在有答案了!

标签: visual-studio autocomplete


【解决方案1】:

使用 Reshaper 2018.3 我发现这是禁用您遇到的行为的方法

转到Resharper -> Options -> Enviroment -> Intellisense -> Completing Characters

对于选项Tab Key,请选择Insert,而不是默认的Replace

【讨论】:

    【解决方案2】:

    尝试使用 EnterSpace 代替 Tab

    【讨论】:

    • 你让我的生活变得更好了。有没有办法将这些重新映射到 Tab,我想知道...?
    • 我有VS2013,既不输入也不空格防止覆盖。 :(
    • 我撤回我的上述评论。您需要使用 Ctrl+Alt+Space 切换完成模式或转到 Edit > Intellisense > Toggle Completion Mode。
    • 对我来说不太好,当我只写一个单词的一部分并按空格或回车时,我实际上输入了一个空格或换行符。它仅在我开​​始使用箭头选择建议时才有效,因此下一个答案对我来说更好
    【解决方案3】:

    我在 Visual Studio 2015(resharper Ultimate 2016.3.1)中通过禁用 Resharper IntelliSense 解决了这个问题。

    转到...

    Resharper -> 选项 -> 环境 -> IntelliSense -> 常规

    ...然后选择“Visual Studio”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-03-12
      • 2017-05-20
      • 2022-07-17
      • 1970-01-01
      • 2018-05-27
      • 2017-07-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多