在没有鼠标或键盘箭头的情况下滚动浏览Visual Studio Intellisense列表

时间:2013-08-09 18:44:18

标签: c# visual-studio-2010 visual-studio visual-studio-2012

我是Visual Studio中Intellisense的重度用户。我也是“把手放在键盘上”并“让他们保持在原位”的爱好者,所以我一直在寻找方法让我的双手集中在 A S d ˚F Ĵ ķ ; 尽可能多的密钥。

每当Intellisense列表在Visual Studio中弹出时,如果列表中有许多单词以与我正在尝试选择的单词相同的字母开头,则键入前几个字母以便在我的选择中磨练。 t help,因为列表不会跳到我的首选选项,直到我输入足够的字符才能最终到达单词中的第一个唯一字符。将我的右手从 J K L ; 键移开并上下移动通常会更快箭头键手动滚动列表。

我宁愿把双手放在原位,理想情况下使用类似 J K 键的内容在Intellisense列表中上下移动(类似如何 J K 在Vim中上下移动...尤其是因为我在Visual Studio中使用了VsVim。

MSDN Intellisense documentation仅列出向上/向下箭头键并滚动(鼠标滚轮, PgUp / PgDn 键等)作为执行此操作的选项: enter image description here


所以这是我的问题(按照优先顺序排列):

  1. Visual Studio中是否存在任何键盘快捷键,可以在滚动智能感知列表时将双手保持在原位?

  2. 有没有办法自定义地图键盘键(例如 J K )在智能感知列表中进行向上/向下滚动吗

  3. 是否有支持此功能的插件?

  4. 还有其他方法可以实现这一目标吗?

6 个答案:

答案 0 :(得分:31)

我已将 CTRL + P 重新映射到Edit.LineUp,将 CTRL + N 重新映射到Edit.LineDown,这可以在Intellisense下拉列表中使用。出于某种原因,当按 CTRL 时,Intellisense下拉列表会变暗,因此很难看到下拉列表中的内容。这不是一个大问题,因为你总是可以释放 CTRL ,它会再次点亮。当我不知道方法的名称并想要浏览它时,我主要使用这种方法。

如果我知道名称或名称的一部分,只需在方法名称中输入一些字母就可以更快。如果我知道例如我想要的方法的名称是GetHashCode,那么我只需输入“geh”或“has”或类似的,因为它将被intellisense匹配。

答案 1 :(得分:8)

以30美元的价格购买二手Kinect,并将语音命令或头部手势映射到鼠标滚动事件。 SDK非常易于使用。你可以说如果头部向上倾斜向上滚动或向右滚动。

SDK http://www.microsoft.com/en-us/kinectforwindows/develop/developer-downloads.aspx

文档 http://www.microsoft.com/en-us/kinectforwindows/develop/learn.aspx

示例项目 http://channel9.msdn.com/coding4fun/kinect

你只受想象力的限制。

答案 2 :(得分:2)

我不确定您更喜欢使用哪种键盘,但是可以选择使用可通过拇指操作的滚轮键盘吗?或类似Microsoft Natural Ergonomic 4000之类的东西,它本身就是一个非常棒的键盘,但有一个缩放滑块,可以在主行上的食指访问。 With some work您可以将缩放功能更改为scrollup和scrolldown。

答案 3 :(得分:1)

我希望完成与Doktorn在Visual Studio Code中建议的相同,所以我会把解决方案放在这里以防万一有人需要它。

您必须在keybindings.json中添加两个新的键绑定:

[
    { "key": "alt+j",                    "command": "selectPrevSuggestion",
                                         "when": "suggestWidgetVisible" }, 
    { "key": "alt+k",                    "command": "selectNextSuggestion",
                                         "when": "suggestWidgetVisible" }                                                                                 
]

答案 4 :(得分:0)

此方法在Windows 10 VSCode最新版本中有效。就像上下箭头一样工作。

    {
        "key": "alt+j",
        "command": "selectNextSuggestion",
        "when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus"
    },
    {
        "key": "alt+k",
        "command": "selectPrevSuggestion",
        "when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus"
    }

答案 5 :(得分:0)

此!

当我的手离开键盘时,90%的时间是箭头键,通常会接受智能提示。

所以 自动热键。以下脚本为我提供了所有应用程序中的箭头键。我把它们放在楼上的那排以避免碰撞。一个脚本在SSMS,Visual和Visual Code以及其他所有功能中具有相同的作用。

u 向上 i 向下 o p 右。

像魅力一样工作。我会喜欢这个。

^u::
Send,{up}
Return

^i::
Send,{down}
Return

^o::
Send,{left}
Return

^p::
Send,{right}
Return