Modular in-buffer completion framework for Emacs

View on GitHub



“是啊,可是事情就是這樣!??這簡直是發瘋︰她根本什麼療養也不 想要了,她根本就不願意再把病治好了!您知道,她說了些什麼嗎???‘我 無論如何絕不走開,我已經听夠了這些謊話了!??寧可當一輩子殘廢,像 我現在這樣,永遠呆在這里??我不願意再把病治好了,我下願意,這一切 都沒有什麼意義了。’” “我的確只呆十分鐘,太太??我得盡快去趕火車。” 這句話又使她臉上的重重愁雲一掃而光。她幾乎態度親切地向我轉過臉第四色最新主页奇米 我毫不羞慚地承認,當我做夢似的息象出這一切的時候,心里有一種奇 怪的自我滿足的情緒。我們無論做什麼事情,虛榮心總是最強大的推動力之 一。天性軟弱的人特別抵御不住這樣的誘惑︰做某件事情,對外給人以有力 量、有勇氣、堅決果斷的印象。我現在第一次有機會向伙伴們證明,我是一 個有自尊心的人,我是一個十足的男子漢!于是我越寫越快,我自己認為,1234成人色情网 將是什麼。不過我還是那句話——我看不見別的出路。你難道真的沒什麼工 —我一下子又感到他在我身邊,心里暖乎乎的,甚至懷著一股溫情——“自 己承擔一個重負,從而使別人減輕負擔,這樣做是值得的。”米奇影院第四色中文

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