Variable: completion-styles

completion-styles is a customizable variable defined in minibuffer.el.gz.

Value

(basic partial-completion emacs22)

Documentation

List of completion styles to use.

An element should be a symbol which is listed in completion-styles-alist.

An element can also be a list of the form
(STYLE ((VARIABLE VALUE) ...))
STYLE must be a symbol listed in completion-styles-alist, followed by a let-style list of variable/value pairs. VARIABLE will be bound to VALUE (without evaluating it) while the style is handling completion. This allows repeating the same style with different configurations.

Note that completion-category-overrides may override these styles for specific categories, such as files, buffers, etc.

This variable was added, or its default value changed, in Emacs 31.1.

View in manual

Probably introduced at or before Emacs version 23.1.

Source Code

;; Defined in /usr/src/emacs/lisp/minibuffer.el.gz
(defcustom completion-styles
  ;; First, use `basic' because prefix completion has been the standard
  ;; for "ever" and works well in most cases, so using it first
  ;; ensures that we obey previous behavior in most cases.
  '(basic
    ;; Then use `partial-completion' because it has proven to
    ;; be a very convenient extension.
    partial-completion
    ;; Finally use `emacs22' so as to maintain (in many/most cases)
    ;; the previous behavior that when completing "foobar" with point
    ;; between "foo" and "bar" the completion try to complete "foo"
    ;; and simply add "bar" to the end of the result.
    emacs22)
  "List of completion styles to use.
An element should be a symbol which is listed in
`completion-styles-alist'.

An element can also be a list of the form
(STYLE ((VARIABLE VALUE) ...))
STYLE must be a symbol listed in `completion-styles-alist', followed by
a `let'-style list of variable/value pairs.  VARIABLE will be bound to
VALUE (without evaluating it) while the style is handling completion.
This allows repeating the same style with different configurations.

Note that `completion-category-overrides' may override these
styles for specific categories, such as files, buffers, etc."
  :type completion--styles-type
  :version "31.1")