Прокрутка списка Visual Studio Intellisense без мыши или клавиатуры
Я большой пользователь Intellisense в Visual Studio. Я также поддерживаю "держать руки на клавиатуре" и "держу их в исходном положении", поэтому я всегда ищу способы сосредоточить свои руки на A S D F J K L ; как можно больше.
Всякий раз, когда список Intellisense появляется в Visual Studio, если в списке есть много слов, которые начинаются с тех же букв, что и слово, которое я пытаюсь выбрать, набрав первые несколько букв, чтобы отточить мой выбор, t help, так как список не будет сбрасываться до моего предпочтительного выбора, пока я не наберу достаточное количество символов, чтобы, наконец, достигнуть первого уникального символа в слове. Как правило, быстрее вывести мою правую руку с помощью клавиш J K L ; и использовать стрелки вверх/вниз для ручного прокрутки списка.
Я предпочитаю держать мои руки в исходном положении и в идеале использовать что-то вроде клавиш J и K для перемещения вверх и вниз в списке Intellisense (подобно тому, как перемещаются J и K вверх и вниз в Vim... и тем более, что я использую VsVim внутри Visual Studio).
Документация MSDN Intellisense содержит только клавиши со стрелками вверх и вниз и прокрутку (колеса мыши, клавиши PgUp/PgDn и т.д.)..) в качестве вариантов для этого:
![enter image description here]()
Итак, вот мои вопросы (в порядке предпочтения):
-
Есть ли какие-либо существующие сочетания клавиш в Visual Studio, которые позволяют держать руки в исходном положении при прокрутке списка Intellisense?
-
Есть ли способ настроить пользовательские клавиши клавиатуры карты (например, J и K) для прокрутки вверх/вниз в списке Intellisense?
-
Есть ли какие-либо плагины, которые активируют эту функциональность?
-
Есть ли другой способ сделать это?
Ответы
Ответ 1
Я переделал CTRL+P в Edit.LineUp и CTRL+N в Edit.LineDown, и это работает в раскрывающемся списке Intellisense. По какой-то причине раскрывающийся список Intellisense исчезает при нажатии CTRL, поэтому становится трудно увидеть содержимое в раскрывающемся списке. Это не большая проблема, потому что вы всегда можете отпустить CTRL, и он снова загорится. В основном я использую этот метод, когда не знаю имя метода и хочу его просмотреть.
Если я знаю имя или часть имени, часто бывает просто просто ввести некоторые буквы в имени метода. Если я знаю, например, что имя метода, которое я хочу, это GetHashCode, тогда я бы просто набрал "geh" или "has" или аналогичный, поскольку это будет соответствовать intellisense.
Ответ 2
Перейдите к используемому Kinect за 30 долларов и нарисуйте либо голосовую команду, либо жест головы на событие прокрутки мыши. 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
Вы ограничены только своим воображением.
Ответ 3
Я не уверен, какую клавиатуру вы предпочитаете использовать, но можно ли получить клавиатуру с колесом прокрутки с большим пальцем? Или что-то вроде Microsoft Natural Ergonomic 4000, которая сама по себе довольно красивая клавиатура, но имеет слайдер с масштабированием, доступный для ваших указательных пальцев в домашнем ряду. С помощью некоторой работы вы можете изменить функциональность масштабирования для прокрутки и прокрутки.
Ответ 4
Я хотел выполнить то же самое, что предложил Докторн в Visual Studio Code, поэтому я поставлю решение здесь на случай, если кому-то понадобится то же самое.
Вам нужно добавить два новых привязки клавиш в keybindings.json:
[
{ "key": "alt+j", "command": "selectPrevSuggestion",
"when": "suggestWidgetVisible" },
{ "key": "alt+k", "command": "selectNextSuggestion",
"when": "suggestWidgetVisible" }
]
Ответ 5
Этот метод работает в VSCode для Windows 10, последней версии. Работает так же, как стрелки вверх и вниз.
{
"key": "alt+j",
"command": "selectNextSuggestion",
"when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus"
},
{
"key": "alt+k",
"command": "selectPrevSuggestion",
"when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus"
}