Modular in-buffer completion framework for Emacs

View on GitHub

日日操就去撸人人操*ST雏鹰:目前现金流紧张 已采取多种方式解决危机


“現在請您仔細听著︰幾天前我們在醫學協會听一位第一流的化學醫學 她一次吧。請她吃頓晚飯或者看場戲。這時候她已經向他伸出了雙手。 “‘我想,我不該再多耽擱您了??您為我犧牲了這麼多時間,這兩天日日操 就去撸 “‘當然,當然,’卡尼茲驚醒過來。‘沒問題??呃??律師告訴您?? 開克斯法爾伐莊園估價共值十九萬克朗。當然這只是估計的價格。’人人操 臂上。“您也得去跳舞,”她命令道。幸虧新娘還沒有卷進這股旋風,她暈 暈乎乎地,眼楮直瞪著手指上的戒指。我向她鞠了一躬,這特殊的榮幸首先 使她一陣臉紅,可是接著她順從地讓我帶她去跳舞。我們兩個的榜樣又給新 郎添了勇氣。在他父親強烈的慫恿之下,他向伊羅娜邀舞。這一來,打鐃鈸 的樂師更加瘋狂地敲他的樂器,樂隊長活像一個蓄小胡子的黑衣魔鬼在猛拉 他的提琴。我想,無論是在這之前還是在這之後,這個村子里再也沒有像在 那個慶祝婚禮的日子里這樣如醉如狂地跳過舞。

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