Ответ 1
В соответствии с этот Microsoft KB F1 является общесистемным ярлыком, поэтому вы не сможете переназначить его внутри ваше приложение.
Как вы можете отменить привязку клавиш F1 в Eclipse? Я отключил его с помощью Windows → Preferences → General → Keys, но, похоже, не имеет никакого эффекта (F1 все еще вызывает панель справки, независимо от привязки в предпочтениях клавиш).
Является ли F1/Help рассматриваться как специальный ярлык в Windows?
В соответствии с этот Microsoft KB F1 является общесистемным ярлыком, поэтому вы не сможете переназначить его внутри ваше приложение.
Не имеет значения, что F1 создает событие справки в Windows. Как описано здесь, SWT генерирует как событие справки, так и ключевое событие при нажатии F1. Вы можете сопоставить вещи с F1, и он будет работать, но он все равно также откроет справку.
Чтобы исправить это, удалите JAR файл в каталоге плагинов, который начинается с "org.eclipse.help.base". Справка больше не открывается!
Изменить: на самом деле я использую это, чтобы курить мусор Eclipse:
rm -rf readme
rm -rf *.html
rm -rf features/org.eclipse.aether*
rm -rf features/org.eclipse.cvs*
rm -rf features/org.eclipse.egit*
rm -rf features/org.eclipse.gef*
rm -rf features/org.eclipse.help.ui*
rm -rf features/org.eclipse.jgit*
rm -rf features/org.eclipse.m2e*
rm -rf features/org.eclipse.mylyn*
rm -rf features/org.eclipse.team.cvs*
rm -rf features/org.eclipse.wb*
rm -rf features/org.eclipse.wst*
rm -rf features/org.eclipse.xsd*
rm -rf features/org.eclipse.epp.mpc*
rm -rf features/org.eclipse.buildship*
rm -rf features/org.eclipse.oomph*
rm -rf features/org.eclipse.recommenders*
rm -rf plugins/org.eclipse.aether*
rm -rf plugins/org.eclipse.cvs*
rm -rf plugins/org.eclipse.egit*
rm -rf plugins/org.eclipse.gef*
rm -rf plugins/org.eclipse.help.ui*
rm -rf plugins/org.eclipse.jgit*
rm -rf plugins/org.eclipse.m2e*
rm -rf plugins/org.eclipse.mylyn*
rm -rf plugins/org.eclipse.team.cvs*
rm -rf plugins/org.eclipse.wb*
rm -rf plugins/org.eclipse.wst*
rm -rf plugins/org.eclipse.xsd*
rm -rf plugins/org.eclipse.epp.mpc*
rm -rf plugins/org.eclipse.buildship*
rm -rf plugins/org.eclipse.oomph*
rm -rf plugins/org.eclipse.recommenders*
Изменить: ниже команды разрушают ваше завершение кода, если вы использовали установщик OOMPH. Я не восстанавливал все плагины один за другим, перезапускал Eclipse, чтобы увидеть, работает ли он снова, но только что восстановил все функции и плагины OOMPH и рекомендателей. Для этого я загрузил архив Eclipse (в моем случае JEE) и просто скопировал функции и плагины из извлеченного архива в мой .p2\pool\feature соответственно \plugins.
Чтобы изменить ответ @NateS для PowerShell, вы можете просто скопировать его. Если вы установили Eclipse через установщик, перейдите в каталог .p2 (скорее всего, C:\Users\Name.p2\pool и выполните команды оттуда.
Remove-Item -Force -Recurse features/org.eclipse.aether*
Remove-Item -Force -Recurse features/org.eclipse.gef*
Remove-Item -Force -Recurse features/org.eclipse.help.ui*
Remove-Item -Force -Recurse features/org.eclipse.jgit*
Remove-Item -Force -Recurse features/org.eclipse.m2e*
Remove-Item -Force -Recurse features/org.eclipse.mylyn*
Remove-Item -Force -Recurse features/org.eclipse.team.cvs*
Remove-Item -Force -Recurse features/org.eclipse.wb*
Remove-Item -Force -Recurse features/org.eclipse.wst*
Remove-Item -Force -Recurse features/org.eclipse.xsd*
Remove-Item -Force -Recurse features/org.eclipse.epp.mpc*
Remove-Item -Force -Recurse features/org.eclipse.buildship*
Remove-Item -Force -Recurse features/org.eclipse.oomph*
Remove-Item -Force -Recurse features/org.eclipse.recommenders*
Remove-Item -Force -Recurse plugins/org.eclipse.aether*
Remove-Item -Force -Recurse plugins/org.eclipse.gef*
Remove-Item -Force -Recurse plugins/org.eclipse.help.ui*
Remove-Item -Force -Recurse plugins/org.eclipse.jgit*
Remove-Item -Force -Recurse plugins/org.eclipse.m2e*
Remove-Item -Force -Recurse plugins/org.eclipse.mylyn*
Remove-Item -Force -Recurse plugins/org.eclipse.team.cvs*
Remove-Item -Force -Recurse plugins/org.eclipse.wb*
Remove-Item -Force -Recurse plugins/org.eclipse.wst*
Remove-Item -Force -Recurse plugins/org.eclipse.xsd*
Remove-Item -Force -Recurse plugins/org.eclipse.epp.mpc*
Remove-Item -Force -Recurse plugins/org.eclipse.buildship*
Remove-Item -Force -Recurse plugins/org.eclipse.oomph*
Remove-Item -Force -Recurse plugins/org.eclipse.recommenders*
Мне действительно нравится JGit и использовать его, чтобы удалить эту строку для функции/и плагинов /. Вы также можете прокомментировать их, добавив %
перед строкой.
Перейдите в каталог, где находится ваш eclipse.exe(в любом случае вы сами выбираете путь, когда вы извлекли архив или когда вы его установили). Mine находится под C:\eclipse\jee-oxygen\eclipse) и запускайте эти два команды.
Remove-Item -Force -Recurse readme
Remove-Item -Force -Recurse *.html
Если вы установили eclipse в местоположение по умолчанию, перейдите по ссылке:
C:\Users\[your username]\.p2\pool\plugins
и выполните поиск:
org.eclipse.help.base
затем после закрытия eclipse, добавьте .jbak
в конец найденного файла. Это должно решить проблему. Если по какой-либо причине вам это нужно, просто удалите .jbak
из имени файла и перезапустите eclipse.
Примечание. Вам нужно будет согласиться с предупреждением Windows и закрыть eclipse до, переименовав файл.