ELPA Logo GNU ELPA: company

company Atom Feed

Description
Modular text completion framework
Latest
company.tar (.sig), 2026-Jul-21, 0.03 KiB
Maintainer
Dmitry Gutov <dmitry@gutov.dev>
Other versions:
development version
Website
http://company-mode.github.io/
ELPA's Repository
CGit or Gitweb
All Dependencies
posframe (.tar)
Badge

To install this package from Emacs, use package-install or list-packages.

Full description

Company is a modular completion framework.  Modules for retrieving completion
candidates are called backends, modules for displaying them are frontends.

Company comes with many backends, e.g. `company-etags'.  These are
distributed in separate files and can be used individually.

Enable `company-mode' in all buffers with M-x global-company-mode.  For
further information look at the documentation for `company-mode' (C-h f
company-mode RET).

If you want to start a specific backend, call it interactively or use
`company-begin-backend'.  For example:
M-x company-abbrev will prompt for and insert an abbrev.

To write your own backend, look at the documentation for `company-backends'.
Here is a simple example completing "foo":

(defun company-my-backend (command &optional arg &rest ignored)
  (interactive (list 'interactive))
  (pcase command
    (`interactive (company-begin-backend 'company-my-backend))
    (`prefix (company-grab-symbol))
    (`candidates (list "foobar" "foobaz" "foobarbaz"))
    (`meta (format "This value is named %s" arg))))

Sometimes it is a good idea to mix several backends together, for example to
enrich gtags with dabbrev-code results (to emulate local variables).  To do
this, add a list with both backends as an element in `company-backends'.

Old versions

company-1.1.0.0.20260721.0.tar.lz2026-Jul-211.74 MiB
company-1.1.0.0.20260721.0.tar2026-Jul-212.43 MiB
company-1.0.2.0.20260718.178.tar.lz2026-Jul-181.74 MiB
company-1.0.2.0.20260718.175.tar.lz2026-Jul-181.74 MiB
company-1.0.2.0.20260717.170.tar.lz2026-Jul-171.74 MiB
company-1.0.2.0.20260627.143.tar.lz2026-Jun-272.04 MiB
company-1.0.2.0.20260618.138.tar.lz2026-Jun-182.04 MiB
company-1.0.2.0.20251021.221153.tar.lz2025-Oct-222.04 MiB
company-1.0.1.0.20240921.215325.tar.lz2024-Sep-222.04 MiB
company-1.0.0.0.20240921.5345.tar.lz2024-Sep-212.04 MiB
company-0.10.2.0.20240911.20707.tar.lz2024-Sep-122.04 MiB
company-0.9.13.0.20230926.3256.tar.lz2023-Sep-302.03 MiB

News

History of user-visible changes

2026-07-21 (1.1.0)

(with-eval-after-load 'company
  (define-key company-active-map (kbd "C-h") #'company-show-doc-buffer)
  (define-key company-active-map (kbd "<f1>") #'company-show-doc-buffer)
  (define-key company-active-map (kbd "C-w") #'company-show-location)
  (define-key company-active-map (kbd "M-h") nil)
  (define-key company-active-map (kbd "M-g") nil))

2024-09-23 (1.0.2)

2024-09-21 (1.0.1)

2024-09-21 (1.0.0)