Кажется, есть два основных расширения автозаполнения для emacs: автозаполнение и режим компании. Каковы некоторые из практических различий между ними, и когда я хотел бы использовать одно над другим? Кроме того, они совместимы друг с другом?
Кажется, есть два основных расширения автозаполнения для emacs: автозаполнение и режим компании. Каковы некоторые из практических различий между ними, и когда я хотел бы использовать одно над другим? Кроме того, они совместимы друг с другом?
Ответы:
Несколько лет назад я использовал режим автозаполнения и несколько месяцев назад переключился на режим компании.
В базовом использовании нет особой разницы. Как и кто-то другой опубликовал эту ссылку, есть хорошее резюме различий.
Я обнаружил, что режим компании проще в настройке и позволяет делать то, что я хочу. С режимом автозаполнения я время от времени сталкивался с проблемами, связанными с тем, что что-то не работает так, как я хотел, и с чем-то другим, когда он настраивался. При использовании я редко чувствую, что корпоративный режим мешает использованию Emacs, тогда как режим автозаполнения мешает время от времени.
Также для разработчиков легко добавить поддержку их пакетов в режиме компании, см. EmacsWiki: CompanyMode: Backends .
Они не совместимы друг с другом. На данный момент есть больше пакетов, которые поддерживают режим автозаполнения, но это быстро меняется.
ТЛ; др. Они в значительной степени делают то же самое. Начните с режима компании и попробуйте режим автозаполнения, если вы пропустите что-нибудь из первого.
Они в значительной степени эквивалентны, но company-mode
имеют более продуманный API для разработчиков плагинов. Это также намного более активно поддержано. Но есть два ключевых различия, которые могут иметь или не иметь значения для вас:
Во-первых, company-mode
теперь нацелены на Emacs 24, поэтому, если вы застряли с Emacs 23, вам не повезло. auto-complete
все еще работает с Emacs 23.
Во-вторых, auto-complete
имеет механизм «всплывающих документов», который отображает жёлтое наложение в виде всплывающей подсказки в текущем буфере, показывая информацию о символе в точке. IIRC, company-mode
может извлекать ту же информацию, но прямо сейчас это делается в отдельном окне.
Есть проблема, поданная для этого, и похоже, что company-mode
она получит поддержку всплывающих документов, возможно, через дополнительный пакет. Исторически такие всплывающие окна были несколько ошибочными, поэтому, возможно, стоит привыкнуть к company
подходу с отдельными окнами.
Если вы начинаете заново, и у вас есть Emacs 24, company-mode
это путь.
comp-any
было бы яснее, чем company
.