That spelling is easier, and Emacs's own manual uses it (e.g. "font backends").
It also uses "back end" in other places, which is a bit inconsistent, but never
uses the version with a hyphen.
22 files changed:
-;;; company-abbrev.el --- company-mode completion back-end for abbrev
+;;; company-abbrev.el --- company-mode completion backend for abbrev
;; Copyright (C) 2009-2011, 2015 Free Software Foundation, Inc.
;; Copyright (C) 2009-2011, 2015 Free Software Foundation, Inc.
;;;###autoload
(defun company-abbrev (command &optional arg &rest ignored)
;;;###autoload
(defun company-abbrev (command &optional arg &rest ignored)
- "`company-mode' completion back-end for abbrev."
+ "`company-mode' completion backend for abbrev."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-abbrev
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-abbrev
-;;; company-bbdb.el --- company-mode completion back-end for BBDB in message-mode
+;;; company-bbdb.el --- company-mode completion backend for BBDB in message-mode
;; Copyright (C) 2013-2014 Free Software Foundation, Inc.
;; Copyright (C) 2013-2014 Free Software Foundation, Inc.
(declare-function bbdb-search "bbdb-com")
(defgroup company-bbdb nil
(declare-function bbdb-search "bbdb-com")
(defgroup company-bbdb nil
- "Completion back-end for BBDB."
+ "Completion backend for BBDB."
:group 'company)
(defcustom company-bbdb-modes '(message-mode)
:group 'company)
(defcustom company-bbdb-modes '(message-mode)
;;;###autoload
(defun company-bbdb (command &optional arg &rest ignore)
;;;###autoload
(defun company-bbdb (command &optional arg &rest ignore)
- "`company-mode' completion back-end for BBDB."
+ "`company-mode' completion backend for BBDB."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-bbdb))
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-bbdb))
-;;; company-capf.el --- company-mode completion-at-point-functions back-end -*- lexical-binding: t -*-
+;;; company-capf.el --- company-mode completion-at-point-functions backend -*- lexical-binding: t -*-
;; Copyright (C) 2013-2015 Free Software Foundation, Inc.
;; Copyright (C) 2013-2015 Free Software Foundation, Inc.
(when (and (consp (cdr data)) (integer-or-marker-p (nth 1 data))) data)))
(defun company-capf (command &optional arg &rest _args)
(when (and (consp (cdr data)) (integer-or-marker-p (nth 1 data))) data)))
(defun company-capf (command &optional arg &rest _args)
- "`company-mode' back-end using `completion-at-point-functions'."
+ "`company-mode' backend using `completion-at-point-functions'."
(interactive (list 'interactive))
(pcase command
(`interactive (company-begin-backend 'company-capf))
(interactive (list 'interactive))
(pcase command
(`interactive (company-begin-backend 'company-capf))
-;;; company-clang.el --- company-mode completion back-end for Clang -*- lexical-binding: t -*-
+;;; company-clang.el --- company-mode completion backend for Clang -*- lexical-binding: t -*-
;; Copyright (C) 2009, 2011, 2013-2015 Free Software Foundation, Inc.
;; Copyright (C) 2009, 2011, 2013-2015 Free Software Foundation, Inc.
(require 'cl-lib)
(defgroup company-clang nil
(require 'cl-lib)
(defgroup company-clang nil
- "Completion back-end for Clang."
+ "Completion backend for Clang."
:group 'company)
(defcustom company-clang-executable
:group 'company)
(defcustom company-clang-executable
0)))
(defun company-clang (command &optional arg &rest ignored)
0)))
(defun company-clang (command &optional arg &rest ignored)
- "`company-mode' completion back-end for Clang.
+ "`company-mode' completion backend for Clang.
Clang is a parser for C and ObjC. Clang version 1.1 or newer is required.
Additional command line arguments can be specified in
Clang is a parser for C and ObjC. Clang version 1.1 or newer is required.
Additional command line arguments can be specified in
-;;; company-cmake.el --- company-mode completion back-end for CMake
+;;; company-cmake.el --- company-mode completion backend for CMake
;; Copyright (C) 2013-2014 Free Software Foundation, Inc.
;; Copyright (C) 2013-2014 Free Software Foundation, Inc.
(require 'cl-lib)
(defgroup company-cmake nil
(require 'cl-lib)
(defgroup company-cmake nil
- "Completion back-end for CMake."
+ "Completion backend for CMake."
:group 'company)
(defcustom company-cmake-executable
:group 'company)
(defcustom company-cmake-executable
(point-max))))))
(defun company-cmake (command &optional arg &rest ignored)
(point-max))))))
(defun company-cmake (command &optional arg &rest ignored)
- "`company-mode' completion back-end for CMake.
+ "`company-mode' completion backend for CMake.
CMake is a cross-platform, open-source make system."
(interactive (list 'interactive))
(cl-case command
CMake is a cross-platform, open-source make system."
(interactive (list 'interactive))
(cl-case command
-;;; company-css.el --- company-mode completion back-end for css-mode -*- lexical-binding: t -*-
+;;; company-css.el --- company-mode completion backend for css-mode -*- lexical-binding: t -*-
;; Copyright (C) 2009, 2011, 2014 Free Software Foundation, Inc.
;; Copyright (C) 2009, 2011, 2014 Free Software Foundation, Inc.
;;;###autoload
(defun company-css (command &optional arg &rest ignored)
;;;###autoload
(defun company-css (command &optional arg &rest ignored)
- "`company-mode' completion back-end for `css-mode'."
+ "`company-mode' completion backend for `css-mode'."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-css))
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-css))
-;;; company-dabbrev-code.el --- dabbrev-like company-mode back-end for code -*- lexical-binding: t -*-
+;;; company-dabbrev-code.el --- dabbrev-like company-mode backend for code -*- lexical-binding: t -*-
;; Copyright (C) 2009, 2011, 2014 Free Software Foundation, Inc.
;; Copyright (C) 2009, 2011, 2014 Free Software Foundation, Inc.
(require 'cl-lib)
(defgroup company-dabbrev-code nil
(require 'cl-lib)
(defgroup company-dabbrev-code nil
- "dabbrev-like completion back-end for code."
+ "dabbrev-like completion backend for code."
:group 'company)
(defcustom company-dabbrev-code-modes
:group 'company)
(defcustom company-dabbrev-code-modes
"Modes that use `company-dabbrev-code'.
In all these modes (and their derivatives) `company-dabbrev-code' will
complete only symbols, not text in comments or strings. In other modes
"Modes that use `company-dabbrev-code'.
In all these modes (and their derivatives) `company-dabbrev-code' will
complete only symbols, not text in comments or strings. In other modes
-`company-dabbrev-code' will pass control to other back-ends
+`company-dabbrev-code' will pass control to other backends
\(e.g. `company-dabbrev'\). Value t means complete in all modes."
:type '(choice (repeat (symbol :tag "Major mode"))
(const tag "All modes" t)))
\(e.g. `company-dabbrev'\). Value t means complete in all modes."
:type '(choice (repeat (symbol :tag "Major mode"))
(const tag "All modes" t)))
;;;###autoload
(defun company-dabbrev-code (command &optional arg &rest ignored)
;;;###autoload
(defun company-dabbrev-code (command &optional arg &rest ignored)
- "dabbrev-like `company-mode' back-end for code.
-The back-end looks for all symbols in the current buffer that aren't in
+ "dabbrev-like `company-mode' backend for code.
+The backend looks for all symbols in the current buffer that aren't in
comments or strings."
(interactive (list 'interactive))
(cl-case command
comments or strings."
(interactive (list 'interactive))
(cl-case command
-;;; company-dabbrev.el --- dabbrev-like company-mode completion back-end -*- lexical-binding: t -*-
+;;; company-dabbrev.el --- dabbrev-like company-mode completion backend -*- lexical-binding: t -*-
;; Copyright (C) 2009, 2011, 2014, 2015 Free Software Foundation, Inc.
;; Copyright (C) 2009, 2011, 2014, 2015 Free Software Foundation, Inc.
(require 'cl-lib)
(defgroup company-dabbrev nil
(require 'cl-lib)
(defgroup company-dabbrev nil
- "dabbrev-like completion back-end."
+ "dabbrev-like completion backend."
:group 'company)
(defcustom company-dabbrev-other-buffers 'all
:group 'company)
(defcustom company-dabbrev-other-buffers 'all
;;;###autoload
(defun company-dabbrev (command &optional arg &rest ignored)
;;;###autoload
(defun company-dabbrev (command &optional arg &rest ignored)
- "dabbrev-like `company-mode' completion back-end."
+ "dabbrev-like `company-mode' completion backend."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-dabbrev))
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-dabbrev))
-;;; company-eclim.el --- company-mode completion back-end for Eclim
+;;; company-eclim.el --- company-mode completion backend for Eclim
;; Copyright (C) 2009, 2011, 2013, 2015 Free Software Foundation, Inc.
;; Copyright (C) 2009, 2011, 2013, 2015 Free Software Foundation, Inc.
-;; Using `emacs-eclim' together with (or instead of) this back-end is
+;; Using `emacs-eclim' together with (or instead of) this backend is
;; recommended, as it allows you to use other Eclim features.
;;
;; recommended, as it allows you to use other Eclim features.
;;
-;; The alternative back-end provided by `emacs-eclim' uses `yasnippet'
+;; The alternative backend provided by `emacs-eclim' uses `yasnippet'
;; instead of `company-template' to expand function calls, and it supports
;; some languages other than Java.
;; instead of `company-template' to expand function calls, and it supports
;; some languages other than Java.
(require 'cl-lib)
(defgroup company-eclim nil
(require 'cl-lib)
(defgroup company-eclim nil
- "Completion back-end for Eclim."
+ "Completion backend for Eclim."
:group 'company)
(defun company-eclim-executable-find ()
:group 'company)
(defun company-eclim-executable-find ()
prefix)))
(defun company-eclim (command &optional arg &rest ignored)
prefix)))
(defun company-eclim (command &optional arg &rest ignored)
- "`company-mode' completion back-end for Eclim.
+ "`company-mode' completion backend for Eclim.
Eclim provides access to Eclipse Java IDE features for other editors.
Eclim version 1.7.13 or newer (?) is required.
Eclim provides access to Eclipse Java IDE features for other editors.
Eclim version 1.7.13 or newer (?) is required.
-;;; company-elisp.el --- company-mode completion back-end for Emacs Lisp -*- lexical-binding: t -*-
+;;; company-elisp.el --- company-mode completion backend for Emacs Lisp -*- lexical-binding: t -*-
;; Copyright (C) 2009, 2011-2013 Free Software Foundation, Inc.
;; Copyright (C) 2009, 2011-2013 Free Software Foundation, Inc.
(require 'find-func)
(defgroup company-elisp nil
(require 'find-func)
(defgroup company-elisp nil
- "Completion back-end for Emacs Lisp."
+ "Completion backend for Emacs Lisp."
:group 'company)
(defcustom company-elisp-detect-function-context t
:group 'company)
(defcustom company-elisp-detect-function-context t
;;;###autoload
(defun company-elisp (command &optional arg &rest ignored)
;;;###autoload
(defun company-elisp (command &optional arg &rest ignored)
- "`company-mode' completion back-end for Emacs Lisp."
+ "`company-mode' completion backend for Emacs Lisp."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-elisp))
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-elisp))
-;;; company-etags.el --- company-mode completion back-end for etags
+;;; company-etags.el --- company-mode completion backend for etags
;; Copyright (C) 2009-2011, 2014 Free Software Foundation, Inc.
;; Copyright (C) 2009-2011, 2014 Free Software Foundation, Inc.
(require 'etags)
(defgroup company-etags nil
(require 'etags)
(defgroup company-etags nil
- "Completion back-end for etags."
+ "Completion backend for etags."
:group 'company)
(defcustom company-etags-use-main-table-list t
:group 'company)
(defcustom company-etags-use-main-table-list t
;;;###autoload
(defun company-etags (command &optional arg &rest ignored)
;;;###autoload
(defun company-etags (command &optional arg &rest ignored)
- "`company-mode' completion back-end for etags."
+ "`company-mode' completion backend for etags."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-etags))
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-etags))
-;;; company-files.el --- company-mode completion back-end for file paths
+;;; company-files.el --- company-mode completion backend for file paths
;; Copyright (C) 2009-2011, 2014-2015 Free Software Foundation, Inc.
;; Copyright (C) 2009-2011, 2014-2015 Free Software Foundation, Inc.
;;;###autoload
(defun company-files (command &optional arg &rest ignored)
;;;###autoload
(defun company-files (command &optional arg &rest ignored)
- "`company-mode' completion back-end existing file names.
+ "`company-mode' completion backend existing file names.
Completions works for proper absolute and relative files paths.
File paths with spaces are only supported inside strings."
(interactive (list 'interactive))
Completions works for proper absolute and relative files paths.
File paths with spaces are only supported inside strings."
(interactive (list 'interactive))
-;;; company-gtags.el --- company-mode completion back-end for GNU Global
+;;; company-gtags.el --- company-mode completion backend for GNU Global
;; Copyright (C) 2009-2011, 2014 Free Software Foundation, Inc.
;; Copyright (C) 2009-2011, 2014 Free Software Foundation, Inc.
(require 'cl-lib)
(defgroup company-gtags nil
(require 'cl-lib)
(defgroup company-gtags nil
- "Completion back-end for GNU Global."
+ "Completion backend for GNU Global."
:group 'company)
(defcustom company-gtags-executable
:group 'company)
(defcustom company-gtags-executable
;;;###autoload
(defun company-gtags (command &optional arg &rest ignored)
;;;###autoload
(defun company-gtags (command &optional arg &rest ignored)
- "`company-mode' completion back-end for GNU Global."
+ "`company-mode' completion backend for GNU Global."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-gtags))
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-gtags))
-;;; company-ispell.el --- company-mode completion back-end using Ispell
+;;; company-ispell.el --- company-mode completion backend using Ispell
;; Copyright (C) 2009-2011, 2013-2015 Free Software Foundation, Inc.
;; Copyright (C) 2009-2011, 2013-2015 Free Software Foundation, Inc.
(require 'ispell)
(defgroup company-ispell nil
(require 'ispell)
(defgroup company-ispell nil
- "Completion back-end using Ispell."
+ "Completion backend using Ispell."
:group 'company)
(defcustom company-ispell-dictionary nil
:group 'company)
(defcustom company-ispell-dictionary nil
;;;###autoload
(defun company-ispell (command &optional arg &rest ignored)
;;;###autoload
(defun company-ispell (command &optional arg &rest ignored)
- "`company-mode' completion back-end using Ispell."
+ "`company-mode' completion backend using Ispell."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-ispell))
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-ispell))
-;;; company-keywords.el --- A company back-end for programming language keywords
+;;; company-keywords.el --- A company backend for programming language keywords
;; Copyright (C) 2009-2011 Free Software Foundation, Inc.
;; Copyright (C) 2009-2011 Free Software Foundation, Inc.
;;;###autoload
(defun company-keywords (command &optional arg &rest ignored)
;;;###autoload
(defun company-keywords (command &optional arg &rest ignored)
- "`company-mode' back-end for programming language keywords."
+ "`company-mode' backend for programming language keywords."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-keywords))
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-keywords))
-;;; company-nxml.el --- company-mode completion back-end for nxml-mode
+;;; company-nxml.el --- company-mode completion backend for nxml-mode
;; Copyright (C) 2009-2011, 2013 Free Software Foundation, Inc.
;; Copyright (C) 2009-2011, 2013 Free Software Foundation, Inc.
;;;###autoload
(defun company-nxml (command &optional arg &rest ignored)
;;;###autoload
(defun company-nxml (command &optional arg &rest ignored)
- "`company-mode' completion back-end for `nxml-mode'."
+ "`company-mode' completion backend for `nxml-mode'."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-nxml))
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-nxml))
-;;; company-oddmuse.el --- company-mode completion back-end for oddmuse-mode
+;;; company-oddmuse.el --- company-mode completion backend for oddmuse-mode
;; Copyright (C) 2009-2011, 2014 Free Software Foundation, Inc.
;; Copyright (C) 2009-2011, 2014 Free Software Foundation, Inc.
;;;###autoload
(defun company-oddmuse (command &optional arg &rest ignored)
;;;###autoload
(defun company-oddmuse (command &optional arg &rest ignored)
- "`company-mode' completion back-end for `oddmuse-mode'."
+ "`company-mode' completion backend for `oddmuse-mode'."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-oddmuse))
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-oddmuse))
-;;; company-semantic.el --- company-mode completion back-end using Semantic
+;;; company-semantic.el --- company-mode completion backend using Semantic
;; Copyright (C) 2009-2011, 2013 Free Software Foundation, Inc.
;; Copyright (C) 2009-2011, 2013 Free Software Foundation, Inc.
(declare-function semantic-active-p "semantic")
(defgroup company-semantic nil
(declare-function semantic-active-p "semantic")
(defgroup company-semantic nil
- "Completion back-end using Semantic."
+ "Completion backend using Semantic."
:group 'company)
(defcustom company-semantic-metadata-function 'company-semantic-summary-and-doc
:group 'company)
(defcustom company-semantic-metadata-function 'company-semantic-summary-and-doc
;;;###autoload
(defun company-semantic (command &optional arg &rest ignored)
;;;###autoload
(defun company-semantic (command &optional arg &rest ignored)
- "`company-mode' completion back-end using CEDET Semantic."
+ "`company-mode' completion backend using CEDET Semantic."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-semantic))
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-semantic))
-;;; company-tempo.el --- company-mode completion back-end for tempo
+;;; company-tempo.el --- company-mode completion backend for tempo
;; Copyright (C) 2009-2011, 2015 Free Software Foundation, Inc.
;; Copyright (C) 2009-2011, 2015 Free Software Foundation, Inc.
;;;###autoload
(defun company-tempo (command &optional arg &rest ignored)
;;;###autoload
(defun company-tempo (command &optional arg &rest ignored)
- "`company-mode' completion back-end for tempo."
+ "`company-mode' completion backend for tempo."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-tempo
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-tempo
-;;; company-xcode.el --- company-mode completion back-end for Xcode projects
+;;; company-xcode.el --- company-mode completion backend for Xcode projects
;; Copyright (C) 2009-2011, 2014 Free Software Foundation, Inc.
;; Copyright (C) 2009-2011, 2014 Free Software Foundation, Inc.
(require 'cl-lib)
(defgroup company-xcode nil
(require 'cl-lib)
(defgroup company-xcode nil
- "Completion back-end for Xcode projects."
+ "Completion backend for Xcode projects."
:group 'company)
(defcustom company-xcode-xcodeindex-executable (executable-find "xcodeindex")
:group 'company)
(defcustom company-xcode-xcodeindex-executable (executable-find "xcodeindex")
company-xcode-tags))))))
;;;###autoload
(defun company-xcode (command &optional arg &rest ignored)
company-xcode-tags))))))
;;;###autoload
(defun company-xcode (command &optional arg &rest ignored)
- "`company-mode' completion back-end for Xcode projects."
+ "`company-mode' completion backend for Xcode projects."
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-xcode))
(interactive (list 'interactive))
(cl-case command
(interactive (company-begin-backend 'company-xcode))
-;;; company-yasnippet.el --- company-mode completion back-end for Yasnippet
+;;; company-yasnippet.el --- company-mode completion backend for Yasnippet
;; Copyright (C) 2014 Free Software Foundation, Inc.
;; Copyright (C) 2014 Free Software Foundation, Inc.
;;;###autoload
(defun company-yasnippet (command &optional arg &rest ignore)
;;;###autoload
(defun company-yasnippet (command &optional arg &rest ignore)
- "`company-mode' back-end for `yasnippet'.
+ "`company-mode' backend for `yasnippet'.
-This back-end should be used with care, because as long as there are
-snippets defined for the current major mode, this back-end will always
-shadow back-ends that come after it. Recommended usages:
+This backend should be used with care, because as long as there are
+snippets defined for the current major mode, this backend will always
+shadow backends that come after it. Recommended usages:
-* In a buffer-local value of `company-backends', grouped with a back-end or
+* In a buffer-local value of `company-backends', grouped with a backend or
several that provide actual text completions.
(add-hook 'js-mode-hook
several that provide actual text completions.
(add-hook 'js-mode-hook
(set (make-local-variable 'company-backends)
'((company-dabbrev-code company-yasnippet)))))
(set (make-local-variable 'company-backends)
'((company-dabbrev-code company-yasnippet)))))
-* After keyword `:with', grouped with other back-ends.
+* After keyword `:with', grouped with other backends.
(push '(company-semantic :with company-yasnippet) company-backends)
(push '(company-semantic :with company-yasnippet) company-backends)
;;; Commentary:
;;
;; Company is a modular completion mechanism. Modules for retrieving completion
;;; Commentary:
;;
;; Company is a modular completion mechanism. Modules for retrieving completion
-;; candidates are called back-ends, modules for displaying them are front-ends.
+;; candidates are called backends, modules for displaying them are frontends.
-;; Company comes with many back-ends, e.g. `company-elisp'. These are
+;; Company comes with many backends, e.g. `company-elisp'. These are
;; distributed in separate files and can be used individually.
;;
;; distributed in separate files and can be used individually.
;;
-;; Place company.el and the back-ends you want to use in a directory and add the
+;; Place company.el and the backends you want to use in a directory and add the
;; following to your .emacs:
;; (add-to-list 'load-path "/path/to/company")
;; (autoload 'company-mode "company" nil t)
;; following to your .emacs:
;; (add-to-list 'load-path "/path/to/company")
;; (autoload 'company-mode "company" nil t)
;; Enable company-mode with M-x company-mode. For further information look at
;; the documentation for `company-mode' (C-h f company-mode RET)
;;
;; Enable company-mode with M-x 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 back-end, call it interactively or use
+;; 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.
;;
;; `company-begin-backend'. For example:
;; M-x company-abbrev will prompt for and insert an abbrev.
;;
-;; To write your own back-end, look at the documentation for `company-backends'.
+;; 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)
;; Here is a simple example completing "foo":
;;
;; (defun company-my-backend (command &optional arg &rest ignored)
;; (`candidates (list "foobar" "foobaz" "foobarbaz"))
;; (`meta (format "This value is named %s" arg))))
;;
;; (`candidates (list "foobar" "foobaz" "foobarbaz"))
;; (`meta (format "This value is named %s" arg))))
;;
-;; Sometimes it is a good idea to mix several back-ends together, for example to
+;; Sometimes it is a good idea to mix several backends together, for example to
;; enrich gtags with dabbrev-code results (to emulate local variables).
;; enrich gtags with dabbrev-code results (to emulate local variables).
-;; To do this, add a list with both back-ends as an element in company-backends.
+;; To do this, add a list with both backends as an element in company-backends.
(add-to-list 'debug-ignored-errors "^Company not ")
(add-to-list 'debug-ignored-errors "^No candidate number ")
(add-to-list 'debug-ignored-errors "^Cannot complete at point$")
(add-to-list 'debug-ignored-errors "^Company not ")
(add-to-list 'debug-ignored-errors "^No candidate number ")
(add-to-list 'debug-ignored-errors "^Cannot complete at point$")
-(add-to-list 'debug-ignored-errors "^No other back-end$")
+(add-to-list 'debug-ignored-errors "^No other backend$")
;;; Compatibility
(eval-and-compile
;;; Compatibility
(eval-and-compile
(defcustom company-frontends '(company-pseudo-tooltip-unless-just-one-frontend
company-preview-if-just-one-frontend
company-echo-metadata-frontend)
(defcustom company-frontends '(company-pseudo-tooltip-unless-just-one-frontend
company-preview-if-just-one-frontend
company-echo-metadata-frontend)
- "The list of active front-ends (visualizations).
-Each front-end is a function that takes one argument. It is called with
+ "The list of active frontends (visualizations).
+Each frontend is a function that takes one argument. It is called with
one of the following arguments:
`show': When the visualization should start.
one of the following arguments:
`show': When the visualization should start.
(company-dabbrev-code company-gtags company-etags
company-keywords)
company-oddmuse company-files company-dabbrev)
(company-dabbrev-code company-gtags company-etags
company-keywords)
company-oddmuse company-files company-dabbrev)
- "The list of active back-ends (completion engines).
+ "The list of active backends (completion engines).
-Only one back-end is used at a time. The choice depends on the order of
+Only one backend is used at a time. The choice depends on the order of
the items in this list, and on the values they return in response to the
the items in this list, and on the values they return in response to the
-`prefix' command (see below). But a back-end can also be a \"grouped\"
+`prefix' command (see below). But a backend can also be a \"grouped\"
-`company-begin-backend' can be used to start a specific back-end,
-`company-other-backend' will skip to the next matching back-end in the list.
+`company-begin-backend' can be used to start a specific backend,
+`company-other-backend' will skip to the next matching backend in the list.
-Each back-end is a function that takes a variable number of arguments.
-The first argument is the command requested from the back-end. It is one
+Each backend is a function that takes a variable number of arguments.
+The first argument is the command requested from the backend. It is one
-`prefix': The back-end should return the text to be completed. It must be
+`prefix': The backend should return the text to be completed. It must be
text immediately before point. Returning nil from this command passes
text immediately before point. Returning nil from this command passes
-control to the next back-end. The function should return `stop' if it
+control to the next backend. The function should return `stop' if it
should complete but cannot (e.g. if it is in the middle of a string).
should complete but cannot (e.g. if it is in the middle of a string).
-Instead of a string, the back-end may return a cons where car is the prefix
+Instead of a string, the backend may return a cons where car is the prefix
and cdr is used instead of the actual prefix length in the comparison
against `company-minimum-prefix-length'. It must be either number or t,
and in the latter case the test automatically succeeds.
and cdr is used instead of the actual prefix length in the comparison
against `company-minimum-prefix-length'. It must be either number or t,
and in the latter case the test automatically succeeds.
from the list.
`no-cache': Usually company doesn't ask for candidates again as completion
from the list.
`no-cache': Usually company doesn't ask for candidates again as completion
-progresses, unless the back-end returns t for this command. The second
+progresses, unless the backend returns t for this command. The second
argument is the latest prefix.
`ignore-case': Return t here if the backend returns case-insensitive
argument is the latest prefix.
`ignore-case': Return t here if the backend returns case-insensitive
`company-require-match'. Return value `never' overrides that option the
other way around.
`company-require-match'. Return value `never' overrides that option the
other way around.
-`init': Called once for each buffer. The back-end can check for external
+`init': Called once for each buffer. The backend can check for external
programs and files and load any required libraries. Raising an error here
programs and files and load any required libraries. Raising an error here
-will show up in message log once, and the back-end will not be used for
+will show up in message log once, and the backend will not be used for
completion.
`post-completion': Called after a completion candidate has been inserted
into the buffer. The second argument is the candidate. Can be used to
modify it, e.g. to expand a snippet.
completion.
`post-completion': Called after a completion candidate has been inserted
into the buffer. The second argument is the candidate. Can be used to
modify it, e.g. to expand a snippet.
-The back-end should return nil for all commands it does not support or
+The backend should return nil for all commands it does not support or
does not know about. It should also be callable interactively and use
`company-begin-backend' to start itself in that case.
does not know about. It should also be callable interactively and use
`company-begin-backend' to start itself in that case.
-An element of `company-backends' can also itself be a list of back-ends,
-then it's considered to be a \"grouped\" back-end.
+An element of `company-backends' can also itself be a list of backends,
+then it's considered to be a \"grouped\" backend.
When possible, commands taking a candidate as an argument are dispatched to
When possible, commands taking a candidate as an argument are dispatched to
-the back-end it came from. In other cases, the first non-nil value among
-all the back-ends is returned.
+the backend it came from. In other cases, the first non-nil value among
+all the backends is returned.
The latter is the case for the `prefix' command. But if the group contains
The latter is the case for the `prefix' command. But if the group contains
-the keyword `:with', the back-ends after it are ignored for this command.
+the keyword `:with', the backends after it are ignored for this command.
-The completions from back-ends in a group are merged (but only from those
+The completions from backends in a group are merged (but only from those
that return the same `prefix').
that return the same `prefix').
The return value of each command can also be a cons (:async . FETCHER)
where FETCHER is a function of one argument, CALLBACK. When the data
The return value of each command can also be a cons (:async . FETCHER)
where FETCHER is a function of one argument, CALLBACK. When the data
True asynchronous operation is only supported for command `candidates', and
only during idle completion. Other commands will block the user interface,
True asynchronous operation is only supported for command `candidates', and
only during idle completion. Other commands will block the user interface,
-even if the back-end uses the asynchronous calling convention."
+even if the backend uses the asynchronous calling convention."
,@(mapcar (lambda (b) `(const :tag ,(cdr b) ,(car b)))
company-safe-backends)
(symbol :tag "User defined")
,@(mapcar (lambda (b) `(const :tag ,(cdr b) ,(car b)))
company-safe-backends)
(symbol :tag "User defined")
- (repeat :tag "Merged Back-ends"
- (choice :tag "Back-end"
+ (repeat :tag "Merged backends"
+ (choice :tag "backend"
,@(mapcar (lambda (b)
`(const :tag ,(cdr b) ,(car b)))
company-safe-backends)
,@(mapcar (lambda (b)
`(const :tag ,(cdr b) ,(car b)))
company-safe-backends)
:type '(choice
(const :tag "None" nil)
(const :tag "Sort by occurrence" (company-sort-by-occurrence))
:type '(choice
(const :tag "None" nil)
(const :tag "Sort by occurrence" (company-sort-by-occurrence))
- (const :tag "Sort by back-end importance"
+ (const :tag "Sort by backend importance"
(company-sort-by-backend-importance))
(repeat :tag "User defined" (function))))
(company-sort-by-backend-importance))
(repeat :tag "User defined" (function))))
The hook is called with the selected candidate as an argument.
If you indend to use it to post-process candidates from a specific
The hook is called with the selected candidate as an argument.
If you indend to use it to post-process candidates from a specific
-back-end, consider using the `post-completion' command instead."
+backend, consider using the `post-completion' command instead."
:type 'hook)
(defcustom company-minimum-prefix-length 3
:type 'hook)
(defcustom company-minimum-prefix-length 3
"If enabled, disallow non-matching input.
This can be a function do determine if a match is required.
"If enabled, disallow non-matching input.
This can be a function do determine if a match is required.
-This can be overridden by the back-end, if it returns t or `never' to
+This can be overridden by the backend, if it returns t or `never' to
`require-match'. `company-auto-complete' also takes precedence over this."
:type '(choice (const :tag "Off" nil)
(function :tag "Predicate function")
`require-match'. `company-auto-complete' also takes precedence over this."
:type '(choice (const :tag "Off" nil)
(function :tag "Predicate function")
(error
(put backend 'company-init 'failed)
(unless (memq backend company--disabled-backends)
(error
(put backend 'company-init 'failed)
(unless (memq backend company--disabled-backends)
- (message "Company back-end '%s' could not be initialized:\n%s"
+ (message "Company backend '%s' could not be initialized:\n%s"
backend (error-message-string err)))
(cl-pushnew backend company--disabled-backends)
nil)))
backend (error-message-string err)))
(cl-pushnew backend company--disabled-backends)
nil)))
inactive, as well.
The completion data is retrieved using `company-backends' and displayed
inactive, as well.
The completion data is retrieved using `company-backends' and displayed
-using `company-frontends'. If you want to start a specific back-end, call
+using `company-frontends'. If you want to start a specific backend, call
it interactively or use `company-begin-backend'.
By default, the completions list is sorted alphabetically, unless the
it interactively or use `company-begin-backend'.
By default, the completions list is sorted alphabetically, unless the
(lambda (result) (setq res result)))
(while (eq res 'trash)
(if (> (- (time-to-seconds) start) company-async-timeout)
(lambda (result) (setq res result)))
(while (eq res 'trash)
(if (> (- (time-to-seconds) start) company-async-timeout)
- (error "Company: Back-end %s async timeout with args %s"
+ (error "Company: backend %s async timeout with args %s"
backend args)
(sleep-for company-async-wait)))
res))))
backend args)
(sleep-for company-async-wait)))
res))))
(if (functionp company-backend)
(apply company-backend args)
(apply #'company--multi-backend-adapter company-backend args))
(if (functionp company-backend)
(apply company-backend args)
(apply #'company--multi-backend-adapter company-backend args))
- (error (error "Company: Back-end %s error \"%s\" with args %s"
+ (error (error "Company: backend %s error \"%s\" with args %s"
company-backend (error-message-string err) args))))
(defun company--multi-backend-adapter (backends command &rest args)
company-backend (error-message-string err) args))))
(defun company--multi-backend-adapter (backends command &rest args)
(defmacro company-with-candidate-inserted (candidate &rest body)
"Evaluate BODY with CANDIDATE temporarily inserted.
(defmacro company-with-candidate-inserted (candidate &rest body)
"Evaluate BODY with CANDIDATE temporarily inserted.
-This is a tool for back-ends that need candidates inserted before they
+This is a tool for backends that need candidates inserted before they
can retrieve meta-data for them."
(declare (indent 1))
`(let ((inhibit-modification-hooks t)
can retrieve meta-data for them."
(declare (indent 1))
`(let ((inhibit-modification-hooks t)
(dolist (frontend company-frontends)
(condition-case-unless-debug err
(funcall frontend command)
(dolist (frontend company-frontends)
(condition-case-unless-debug err
(funcall frontend command)
- (error (error "Company: Front-end %s error \"%s\" on command %s"
+ (error (error "Company: frontend %s error \"%s\" on command %s"
frontend (error-message-string err) command)))))
(defun company-set-selection (selection &optional force-update)
frontend (error-message-string err) command)))))
(defun company-set-selection (selection &optional force-update)
(defun company-sort-by-backend-importance (candidates)
"Sort CANDIDATES as two priority groups.
If `company-backend' is a function, do nothing. If it's a list, move
(defun company-sort-by-backend-importance (candidates)
"Sort CANDIDATES as two priority groups.
If `company-backend' is a function, do nothing. If it's a list, move
-candidates from back-ends before keyword `:with' to the front. Candidates
-from the rest of the back-ends in the group, if any, will be left at the end."
+candidates from backends before keyword `:with' to the front. Candidates
+from the rest of the backends in the group, if any, will be left at the end."
(if (functionp company-backend)
candidates
(let ((low-priority (cdr (memq :with company-backend))))
(if (functionp company-backend)
candidates
(let ((low-priority (cdr (memq :with company-backend))))
(when (ignore-errors (company-begin-backend backend))
(cl-return t))))
(unless company-candidates
(when (ignore-errors (company-begin-backend backend))
(cl-return t))))
(unless company-candidates
- (error "No other back-end")))
+ (error "No other backend")))
(defun company-require-match-p ()
(let ((backend-value (company-call-backend 'require-match)))
(defun company-require-match-p ()
(let ((backend-value (company-call-backend 'require-match)))
(defun company-complete-number (n)
"Insert the Nth candidate visible in the tooltip.
(defun company-complete-number (n)
"Insert the Nth candidate visible in the tooltip.
-To show the number next to the candidates in some back-ends, enable
+To show the number next to the candidates in some backends, enable
`company-show-numbers'. When called interactively, uses the last typed
character, stripping the modifiers. That character must be a digit."
(interactive
`company-show-numbers'. When called interactively, uses the last typed
character, stripping the modifiers. That character must be a digit."
(interactive
(defun company-begin-backend (backend &optional callback)
"Start a completion at point using BACKEND."
(defun company-begin-backend (backend &optional callback)
"Start a completion at point using BACKEND."
- (interactive (let ((val (completing-read "Company back-end: "
+ (interactive (let ((val (completing-read "Company backend: "
obarray
'functionp nil "company-")))
(when val
obarray
'functionp nil "company-")))
(when val
(when (>= overhang 0) overhang))))))
(defun company-pseudo-tooltip-frontend (command)
(when (>= overhang 0) overhang))))))
(defun company-pseudo-tooltip-frontend (command)
- "`company-mode' front-end similar to a tooltip but based on overlays."
+ "`company-mode' frontend similar to a tooltip but based on overlays."
(cl-case command
(pre-command (company-pseudo-tooltip-hide-temporarily))
(post-command
(cl-case command
(pre-command (company-pseudo-tooltip-hide-temporarily))
(post-command
(setq company-preview-overlay nil)))
(defun company-preview-frontend (command)
(setq company-preview-overlay nil)))
(defun company-preview-frontend (command)
- "`company-mode' front-end showing the selection as if it had been inserted."
+ "`company-mode' frontend showing the selection as if it had been inserted."
(pcase command
(`pre-command (company-preview-hide))
(`post-command (company-preview-show-at-point (point)))
(pcase command
(`pre-command (company-preview-hide))
(`post-command (company-preview-show-at-point (point)))
(company-echo-show)))
(defun company-echo-frontend (command)
(company-echo-show)))
(defun company-echo-frontend (command)
- "`company-mode' front-end showing the candidates in the echo area."
+ "`company-mode' frontend showing the candidates in the echo area."
(pcase command
(`post-command (company-echo-show-soon 'company-echo-format))
(`hide (company-echo-hide))))
(defun company-echo-strip-common-frontend (command)
(pcase command
(`post-command (company-echo-show-soon 'company-echo-format))
(`hide (company-echo-hide))))
(defun company-echo-strip-common-frontend (command)
- "`company-mode' front-end showing the candidates in the echo area."
+ "`company-mode' frontend showing the candidates in the echo area."
(pcase command
(`post-command (company-echo-show-soon 'company-echo-strip-common-format))
(`hide (company-echo-hide))))
(defun company-echo-metadata-frontend (command)
(pcase command
(`post-command (company-echo-show-soon 'company-echo-strip-common-format))
(`hide (company-echo-hide))))
(defun company-echo-metadata-frontend (command)
- "`company-mode' front-end showing the documentation in the echo area."
+ "`company-mode' frontend showing the documentation in the echo area."
(pcase command
(`post-command (company-echo-show-when-idle 'company-fetch-metadata))
(`hide (company-echo-hide))))
(pcase command
(`post-command (company-echo-show-when-idle 'company-fetch-metadata))
(`hide (company-echo-hide))))