Documentation
Commentary
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'.
Requires
Dependencies
Consumers
Reverse Dependencies
- ac-php
- alchemist
- boogie-friends
- company-ansible
- company-auctex
- company-bibtex
- company-c-headers
- company-cabal
- company-dcd
- company-dict
- company-edbi
- company-emoji
- company-ess
- company-flow
- company-flx
- company-ghc
- company-go
- company-inf-ruby
- company-irony
- company-irony-c-headers
- company-lua
- company-math
- company-ngram
- company-restclient
- company-shell
- company-statistics
- company-tern
- company-try-hard
- company-web
- eclim
- elpy
- ensime
- intero
- jquery-doc
- meghanada
- nand2tetris
- ncl-mode
- netrunner
- nixos-options
- nm
- pollen-mode
- processing-mode
- python-mode
- rtags
- slime-company
- sly-company
- sourcekit
- wsd-mode
- ycm
- ycmd
- company-coq
- matlab-mode
- graphene
- company-erlang
- nxhtml
- fstar-mode
- indium
- helm-company
- company-terraform
- sparql-mode
- lean-mode
- company-plsense
- company-glsl
- company-lsp
- esh-autosuggest
- nix-mode
- notmuch
- bmx-mode
- company-suggest
- company-box
- solidity-mode
- company-reftex
- prescient
- company-posframe
- company-tabnine
- dante
- psc-ide
- battle-haxe
- stan-mode
- company-anaconda
- company-fuzzy
- company-ctags
- company-ghci
- company-quickhelp
- company-jedi
- native-complete
- basic-ide
- company-org-roam
- company-plisp
- company-racer
- ejc-sql
- company-manually
- company-ledger
- typo-suggest
- neuron-mode
- gkroam
- maxima
- company-nginx
- company-ebdb
- company-wordfreq
- frontside-javascript
- company-ipa
- company-org-block
- company-emojify
- consult-company
- chezmoi
- cool-mode
- gap-mode
- esn
- haskell-tng-mode
- company-spell
- koopa-mode
- merlin
- company-eask
- company-forge
- magik-company
- telega
- fussy