Modular in-buffer completion framework for Emacs

View on GitHub

狠狠色哥哥碰狠狠日易会满履新200天:务实 松绑 伴随科创板扬帆起航


  劉陵嘆息一聲道︰“雲瑯,你性子散漫,最是受不得約束,跟我走吧,只要你肯跟我走,我就向劉徹上書,上降表都成,正式以詔書的方式將我匈奴故地交付大漢。   劉陵循聲走去,圍觀的匈奴武士自動分開,正在場中正在鏖戰的兩個人,也各自停了手。狠狠色   “劉陵跑了,匈奴跑了,而陛下又是一個沒敵人就過不下去的人,我們有很大概率成為陛下新的敵人。你想好怎麼應對了沒有?”哥哥碰   “李勇,李紳那邊如何了?”   雲瑯看看自己手上光禿禿的骨頭,遺憾的丟到一邊,對霍去病道︰“再忍忍,等劉陵打下大月氏之後,我們就能繼續去勒索劉陵了。”狠狠日   隋越習慣性的準備上前看看,卻猛地停下了腳步,快步來到道路邊上,卑微的躬下腰,雙手抱拳靠在胸口,等待貴人過去。

Company is a text completion framework for Emacs. The name stands for "complete anything". It uses pluggable back-ends and front-ends to retrieve and display completion candidates.

It comes with several back-ends such as Elisp, Clang, Semantic, Eclim, Ropemacs, Ispell, CMake, BBDB, Yasnippet, dabbrev, etags, gtags, files, keywords and a few others.

The CAPF back-end provides a bridge to the standard completion-at-point-functions facility, and thus works with any major mode that defines a proper completion function.


company-elisp company-semantic


This package is part of GNU ELPA (M-x list-packages).

Advanced users can also download the development snapshot.


Once installed, enable company-mode with M-x company-mode.

Completion will start automatically after you type a few letters. Use M-n and M-p to select, <return> to complete or <tab> to complete the common part. Search through the completions with C-s, C-r and C-o. Press M-(digit) to quickly complete with one of the first 10 candidates.

Type M-x company-complete to initiate completion manually. Bind this command to a key combination of your choice.

When the completion candidates are shown, press <f1> to display the documentation for the selected candidate, or C-w to see its source. Not all back-ends support this.

To use company-mode in all buffers, add the following line to your init file:

(add-hook 'after-init-hook 'global-company-mode)

To see or change the list of enabled back-ends, type M-x customize-variable RET company-backends. Also see its description for information on writing a back-end.

For information on specific back-ends, also check out the comments inside the respective files.

For more information, type M-x describe-function RET company-mode.

To customize other aspects of its behavior, type M-x customize-group RET company.

See Also


If you experience any problems or have a feature request, please use the issue tracker.


Company is subject to the same copyright assignment policy as Emacs itself, org-mode, CEDET and other packages in GNU ELPA. Any legally significant contributions can only be accepted after the author has completed their paperwork. Please ask for the request form, and we'll send it to you.

More Reading