Ответ 1
Самое лучшее, что я придумал до сих пор, - это Ctrl + F7, чтобы перейти к представлению "Проблемы", затем ↓, чтобы выбрать самую верхнюю ошибку, затем Enter, чтобы перейти к ней (которая возвращает фокус редактору).
Предположим, что я делаю изменение подписи метода, которое разбивает несколько абонентов, и я хочу вручную просмотреть сайты вызовов, чтобы их обновить.
Как только я сменил подпись, в моем представлении "Проблемы" показано, скажем, дюжина ошибок.
Какие клавиши можно использовать для навигации по ним, оставив фокус клавиатуры в редакторе для быстрого исправления?
(Прошло некоторое время, но я думаю, что эквивалент Visual Studio F8.)
Обратите внимание, что этот вопрос не дублирует Eclipse: как перейти к ошибке, используя только клавиатуру (клавиатура-ярлык)?, поскольку она предназначена для навигации только между маркерами в текущем файле. В этом случае я хочу перейти к следующей ошибке независимо от того, в каком файле она находится.
( "Маркер" - это общий термин Eclipse для ошибок, предупреждений и т.д.)
Самое лучшее, что я придумал до сих пор, - это Ctrl + F7, чтобы перейти к представлению "Проблемы", затем ↓, чтобы выбрать самую верхнюю ошибку, затем Enter, чтобы перейти к ней (которая возвращает фокус редактору).
Здесь вы можете перейти к следующей ошибке, независимо от редактора, одним нажатием клавиши. Он не идеален, но работает до тех пор, пока он не будет зафиксирован в Eclipse.
Откройте представление "Маркеры". Нажмите стрелку вниз в правом верхнем углу и выберите "Настроить содержимое". Снимите флажок "Показать все" и создайте представление, чтобы отображать только те проблемы, которые вы хотите увидеть. Вероятно, вы захотите также отменить "предупреждения" и "ошибки". Сохраните его.
Нажмите ту же стрелку вниз "Маркеры" и выберите "Группировать по". Выберите "Нет". Это важно, потому что вы не хотите показывать узлы уровня родительского дерева, иначе некоторые из ваших "последующих" действий перенесут вас в те, которые не представляют ошибки.
В клавишах Eclipse → preferences → найдите "Маркеры". Если на экране "Маркеры" нет клавиши, создайте ее. Я использую Ctrl + Shift + M
Получите инструмент горячих клавиш для клавиатуры, например AutoHotKey (для ПК) или iKey для Mac. Я использую iKey, но есть много других инструментов Mac, которые вы можете использовать. В инструменте hotkey определите действие для нажатия клавиши, которое вы хотите использовать для "следующей ошибки". Я выбрал стандартный CMD + .
Для этого нажатия клавиши/действия в вашем инструменте горячих клавиш создайте 3 нажатия клавиш в следующем порядке:
Конечно, вы захотите изменить первый на все, что вы выбрали для себя. Вероятно, вы захотите ограничить это действие, которое будет выполнено, только если Eclipse является текущим приложением.
Сохраните это, создайте некоторые ошибки компиляции и протестируйте его.
Попробуйте Ctrl + 3 для всплывающего окна быстрого доступа.
Если "Маркерное представление" еще не видно, введите "маркеры" в поле поиска во всплывающем окне. После того, как вы его выбрали, он останется в наличии, когда вы нажмете Ctrl + 3 в следующий раз.
У меня была такая же проблема после рефакторинга некоторых частей кода. У меня было много ошибок в разных файлах, и мне пришлось пройти через все это.
Я использовал следующее решение:
.
В моем случае это решение было намного быстрее, чем каждый раз переключаясь на просмотр проблем.
Здесь введена ошибка Eclipse, в которой есть вложение, похожее на то, что вы хотите.
Вы можете использовать AutoHotkey: сохраните положение мыши, отправьте событие мыши, чтобы щелкнуть стрелку в консоли CDT, а затем верните мышь обратно в исходное местоположение. Запишите координаты мыши с помощью шпиона окна или воспользуйтесь функцией автоматического поиска по функции изображения (сначала захватите изображения двух стрелок с помощью печатного экрана в растровые изображения).