2010-05-31 2 views
80

Как сообщить Eclipse автоматически делать предложения по мере ввода? Я ищу Visual Studio Intellisense-подобную функцию с Resharper.Eclipse Intellisense?

В настоящее время я должен нажать CTRL +Space каждый раз.

ответ

72

Вам не нужно нажимать CTRL * пространство но может быть задержка слишком велика, или вам не нравится на спусковой крючок (по умолчанию «»). Перейти к

Window -> Preferences -> Java/редактор/Content Assist

И измените настройки под Auto Activation своим симпатиям.

Если это не работает для пользователей Windows, см. this answer.

+0

пользователя Kevin Rossi пытался изменить, чтобы указать на это (что на самом деле комментарий): «Это не работает с Eclipse, Juno C/C++ distro " –

+0

Каждый редактор в Eclipse может иметь свою собственную автоматическую активацию t риггеров - активизация на тех же персонажах не имеет смысла на любом языке. – nitind

+0

В Mac это 'ADT -> Настройки -> Java/Editor/Content Assist' –

158

Я ближе к VisualStudio-подобного поведения, установив «автозаполнения Trigger для Java», чтобы

.(abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 

и настройка задержки 0.

Теперь я хотел бы понять, как сделайте его автозаполненным именем метода, когда я нажимаю (как это делает VS Intellisense).

+0

спасибо за подсказку, это немного лучше, но все еще нет, где почти так же хорошо, как VS! – GreyCloud

+1

Какая версия затмения это? В текстовом поле «Автоматическая активация триггеров для Java» я могу ввести только 4 символа. – Zesty

+3

Это работает очень хорошо. Гораздо лучше, поскольку на самом деле он будет показывать локальные переменные и все. Благодаря! @ HappyCoder4U Это может не помочь, но я использую eclipse 3.7M5. – Howler

6

Если он не работает, даже если у вас уже включен Code Assist, файлы конфигурации Eclipse, вероятно, повреждены. Решение, которое сработало для меня (на Eclipse 3.5.2):

  1. Закрыть Затмение.
  2. Переименуйте каталог рабочей области.
  3. Запуск Eclipse. (Это создает новый каталог рабочей области.)
  4. Импорт (с копией) проектов Java из старого рабочего пространства.
+0

Хороший звонок. Исправлено это для меня. – onit

+0

Исправлено это для меня также – Kenci

+0

Хорошее решение, это было действительно полезно для меня, мой Eclipse не смог показать intellisense после (.), Мне пришлось использовать ctrl + space 3 раза, чтобы показать его, спасибо за хорошее решение :-) – Muhammad

36

Тони - это чистый гений. Однако для достижения еще более автозавершения попробуйте установить триггеры для этого:

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz =.(!+-*/~,[{@#$%^& 

(в частности, aranged в порядке использования для повышения производительности :)

+1

Этот метод вводит некоторые ошибки. Например, если я наберу '=', это немедленно предложит что-то. Если я нажимаю пробел, '=', он автоматически вставляет первое совпадение. – theGreenCabbage

+0

проверяя предложение Java, предложение типа Java и предложение не-типа Java и перемещая их сверху по порядку, работали для меня. –

+0

См. Этот вопрос о переполнении стека для некоторых решений проблемы пространства: http://stackoverflow.com/questions/14297735/stop-spacebar-keypress-from-triggering-autocomplete-in-eclipse –

3

я когда-то была такая же проблема, и я искал и нашел это, и это сработало для меня:

У меня были сняты некоторые из ящиков, поэтому я проверил их снова, затем он сработал. Просто зайдите в

Windows> Preferences> Java> Editor> Content Assist> Advanced

и флажки, которые вы хотите.

0

Ответ d3dave - это круто.Однако theGreenGarbage упомянул вопрос об этом, который я тоже нахожу довольно раздражающим. Так вот тот, который не сразу предложить что-то после знака «=» и при вводе пробела:

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz.(!+-*/~,[{@#$%^& 

То, что я был просто удалить пространство и «=» символы из массива :)

кроме того, если вы хотите, предложения при вводе пустого пространства, но не после знака «=»:

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz .(!+-*/~,[{@#$%^& 
Смежные вопросы