Modular in-buffer completion framework for Emacs

View on GitHub

狠狠插狠撸撸色小姐非洲手机之王传音控股:借壳上市不成 目光瞄准科创板


  “你?你的身體也虧空麼?”   大長秋笑道︰“當沒有人知曉這東西的好處的時候,它就是一棵草,現在既然知道了,阿嬌已經把它當命來看了。你知道不,阿嬌喝了湯藥之後全身發熱的時候,她就想要我問你要回那棵人參,被我給阻止了。阿嬌貴人就重新給幽州刺史寫了信,要求他一年進貢一車,還許了他一個關內侯。”狠狠插   “試藥!”雲瑯呲著一嘴的白牙笑著對阿嬌道。狠撸撸   現在看來,皇帝更在乎一個臣子的忠誠,而不是智慧。   說話的人正是郭解。色小姐   司馬遷微笑著從頭上抽出一根白玉發簪放在雲錢堆上,然後就用袍子下擺兜上這些財物,放在滿身煤灰的少女面前道︰“應該夠半年所需。”

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