Modular in-buffer completion framework for Emacs

View on GitHub



爸爸媽媽給我們寫信,略有分工,媽媽側重于生活瑣事,爸爸側重于啟發教育。一九五四年到一九六六年爸爸給哥哥的中文信件共一百九十封,媽媽的信也有百余封。哥哥在外二十余年,幾經搬遷,信件有所失散。這本家書集選自哥哥保存的一百二十五封中文信和我僅有的兩封信。家書集雖然只收錄了一封媽媽的信,但她永遠值得懷念;媽媽是個默默無聞,卻給爸爸做了大量工作的好助手。爸爸一生的業績是同媽媽的辛勞分不開的。 既然傅雷自己的要求這麼高,現在要為他的《家書》譯注,自然就不能不顧到這種靈活彈性處理譯文的問題。傅雷在《家書》中,往往喜歡在同一段落中,連用好幾次同一個外文字,例如在第299頁(舊版第282頁)中,就用了五次drama,五次relax,見下列原文︰91爱搞搞 91爱蜜桃 柔和的氣氛, 一九六六年四月十三日91啵啵影院

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