Автозаполнение кода C в Eclipse - PullRequest
7 голосов
/ 24 марта 2010

Я разработчик Java, и я скачал Eclipse для C (для целей курса), и, к моему изумлению, ярлык control + space (для автозаполнения) не работал. Я создал новый проект и новый класс, используя wizzards, начал печатать «print», а затем попытался найти функцию автозаполнения. После небольшого поиска я пришел к C/C++ -> Editor -> Content Assist -> Advanced и там я убедился, что опции Help proposals, Parsing-based proposals и Template proposals были проверены. Затем я перешел на страницу настроек Keys, используя ссылку на этой странице, и ввел привязку для всей релевантной справки по контенту до C\C++ Content Assist (type...) и выбрал в поле When параметр C\C++ Editor. Но, увы, автозаполнение не предлагалось. Может кто-нибудь указать мне правильное направление?

ОБНОВЛЕНИЕ: Я принимаю ответ не потому, что уверен, что он прав, а потому, что осознал, что допустил некоторые ошибки в конфигурации затмения и видел это при другой установке / configuration (то есть друг шахты) eclipse выполняет автозаполнение, даже если в нем по-прежнему отсутствуют многие функции Java-версии.

Ответы [ 7 ]

6 голосов
/ 19 марта 2013

Используйте панель «Дополнительно» в окне «Установки» для настройки поведения команды Content Assist (Ctrl + Пробел).
Перейдите на Настройки-> C / C ++ -> Редактор-> Помощник по содержимому-> Дополнительно .
Проверьте Предложения на основе парсинга в видах предложений по умолчанию.

5 голосов
/ 24 марта 2010

Хотя затмение не обеспечивает идеального автозаполнения, но оно работает .. Это иногда происходит, когда у вас отключен индексатор.

Попробуйте включить индексатор и перестроить индекс.

См. Этот вопрос в CDT FAQ . Он содержит информацию о том, как найти ошибку индексатора, которая может помешать автозаполнению.

0 голосов
/ 22 декабря 2017

Возможно, это связано с привязками KeyAssist.

Если вы пытались с помощью контента:

Войдите в Окно> Настройки. Меню «Общие» -> «Ключи»

Внутри ищем "Шаблон" и устанавливаем:

Ключ Связывание с -> "Ctrl + Пробел"

Когда: «Редактирование теста»

Помощник по изображениям Полный код помощи в меню изображений

0 голосов
/ 17 апреля 2014

я ответил здесь: Eclipse: Как добавить включаемый путь, который будет использоваться автозаполнением

Вы должны явно указать ему, где найти заголовок:

⇒ Щелкните правой кнопкой мыши по вашему проекту.
⇒ перейдите к 'C / C ++ Включить пути и Символы '
⇒ выберите' Добавить внешний путь включения ... '
⇒ просмотрите к местоположению ваших заголовочных файлов
⇒ обновить

0 голосов
/ 28 декабря 2010

Vim предлагает эту функцию, сканируя ваши # include (ярлык - Ctrl-N или Ctrl-P для поиска в обратном направлении). Если вы не можете найти лучшего решения, то в крайнем случае можно обратиться к eclim , который интегрирует функции vim в Eclipse (или наоборот), и это обязательно предложит эту функцию.

0 голосов
/ 25 декабря 2010


Вы должны убедиться, что у вас есть gcc home (то есть C: \ MinGW-4.4.1 \ bin), заданный в переменной окружения пути (если вы используете windows, а если нет, то это equivelant). Также убедитесь, что файл имеет суффикс .c и что индексатор включен, как сказал yousf. Я думаю, не уверен, что вам нужно запустить eclipse с флагом -clean, и автозаполнение будет работать.

Еффий

0 голосов
/ 25 марта 2010

Я не эксперт по Eclipse (и я даже не играю по телевизору), но может случиться так, что он только автозаполняет имена функций, которые объявлены в текущей области - вы добавили #include <stdio.h> в начало ваш исходный файл, чтобы получить объявления для стандартных функций ввода / вывода?

...