1 # History of user-visible changes
5 * New user option `company-clang-insert-arguments`, by default t.
6 * Default value of `company-idle-delay` lowered to `0.5`.
7 * New user option `company-tooltip-minimum-width`, by default 0.
8 * New function `company-grab-symbol-cons`.
9 * `company-clang` fetches completion candidates asynchronously.
10 * Added support for asynchronous back-ends (experimental).
11 * Support for back-end command `crop` dropped (it was never documented).
12 * Support for Emacs 23 dropped.
13 * New user option `company-abort-manual-when-too-short`.
17 * New user option `company-etags-ignore-case`.
21 * Support for Emacs 22 officially dropped.
22 * `company-clang` supports `indent-tabs-mode` and multibyte chars before point.
26 * Group of back-ends can now contain keyword `:with`, which makes all back-ends
27 after it to be skipped for prefix calculation.
28 * New function `company-version`.
29 * New bundled back-end `company-yasnippet`.
30 * Completion candidates returned from grouped back-ends are tagged to remember
31 which back-end each came from.
32 * New user option `company-tooltip-align-annotations`, off by default.
33 * New bundled back-end `company-bbdb`.
37 * New back-end command, `match`, for non-prefix completion.
38 * New user option `company-continue-commands`. The default value aborts
39 completion on buffer saving commands.
40 * New back-end command, `annotation`, for text displayed inline in the popup
41 that's not a part of completion candidate.
42 * `company-capf`, `company-clang` and `company-eclim` use `annotation`.
43 * `company-preview*` faces inherit from `company-tooltip-selection` and
44 `company-tooltip-common-selection` on light themes.
45 * New user option `company-transformers`.
46 * First transformer, `company-sort-by-occurrence`.
47 * New user options controlling `company-dabbrev` and `company-dabbrev-code`.
49 ## 2014-01-25 (0.6.14)
51 * The tooltip front-end is rendered with scrollbar, controlled by the user
52 option `company-tooltip-offset-display`.
53 * The tooltip front-end is rendered with margins, controlled by the user option
54 `company-tooltip-margin`.
56 ## 2014-01-14 (0.6.13)
58 * Experimental support for non-prefix completion.
59 * Starting with Emacs version 24.4, `company-capf` is included in
60 `company-backends` and replaces `company-elisp`.
61 * `company-capf` supports completion tables that return non-default boundaries.
62 * `company-elisp` is enabled in `inferior-emacs-lisp-mode`.
64 ## 2013-09-28 (0.6.12)
66 * Default value of `company-begin-commands` changed to `(self-insert-command)`.
67 * Futher improvement in `org-indent-mode` compatibility.
69 ## 2013-08-18 (0.6.11)
71 * `company-template-c-like-templatify` removes all text after closing paren, for
72 use in backends that display additional info there.
73 * `company-cmake` is now bundled.
74 * Better `linum` compatibility in Emacs <= 24.2.
75 * `company-global-modes`: New option.
77 ## 2013-05-26 (0.6.10)
79 * Plays nicer with `org-indent-mode`.
80 * Works in horizontally scrolled windows.
84 * `company-capf` respects `:exit-function` completion property.
85 * `company-backends`: `prefix` command can return `t` in the cdr.
86 * `company-clang-begin-after-member-access`: New option.
87 * Mouse click outside the tooltip aborts completion.
88 * `company-clang` uses standard input to pass the contents of current buffer to
89 Clang 2.9+, otherwise saves the buffer and passes the path to the file.
90 * `company-clang-auto-save` option has been removed.
91 * Better interaction with `outline-minor-mode`.
92 * `company-dabbrev-code` supports all `prog-mode` derivatives.
96 * `company-auto-complete` is disabled by default.
97 * `company-auto-complete-chars` default value includes fewer syntax classes.
98 * In expanded function calls, arguments skipped by the user default to "argN".
99 * `company-eclim` and `company-clang` do not strip argument types from fields.
100 * `company-clang` expands function calls for all three modes now.
101 * `company-clang` supports `c++-mode` by default.
103 ## 2013-04-05 (0.6.7)
105 * Two `company-elisp` tweaks.
107 ## 2013-04-01 (0.6.6)
109 * `company-elisp` doesn't offer completions when typing the name and the
110 arguments of a new function or macro definition, allowing to fall back to
111 other back-ends like `company-dabbrev-code`.
113 ## 2013-03-30 (0.6.5)
115 * Fixed keybindings when running in a terminal.
116 * `company-elisp-show-locals-first`: new customizable variable.
117 * `company-elisp` shows more accurate and comprehensive candidates list.
119 ## 2013-03-26 (0.6.4)
121 * `company-eclim` shows valid completions after an opening paren.
122 * Expanded template does not get removed until the point leaves it. After your
123 input the last argument in a method call expanded by `company-eclim`, you can
124 press `<tab>` once more, to jump after the closing paren. No other bundled
125 back-ends are affected.
127 ## 2013-03-25 (0.6.3)
129 * New tooltip face colors used on themes with light background.
130 * Pseudo-tooltip stays up-to-date when text is inserted after the point.
131 * Fixed `company-require-match` mechanics.
133 ## 2013-03-24 (0.6.2)
135 * `global-company-mode` is now autoloaded.
137 ## 2013-03-23 (0.6.1)
139 * Documented `init` and `post-completion` back-end commands.
140 * `company-eclim` and `company-clang` only expand the template on explicit user
141 action (such as `company-complete-{selection,number,mouse}`).
142 * `company-template` has some breaking changes. When point is at one of the
143 fields, it's displayed at the beginning, not right after it; `<tab>` jumps to
144 the next field, `forward-word` and `subword-forward` remappings are removed;
145 when you jump to the next field, if the current one hasn't been edited, the
146 overlay gets removed but the text remains.
147 * `company-eclim` shows method overloads and expands templates for calls.
148 * `company-clang-objc-templatify` does not insert spaces after colons anymore.
149 * `company-clang` is now only initialized in supported buffers.
150 So, no error messages if you don't have Clang until you open a C file.
151 * `company-clang` recognizes Clang included in recent Xcode.
152 * New commands `company-select-previous-or-abort` and
153 `company-select-next-or-abort`, bound to `<up>` and `<down>`.
157 * Across-the-board bugfixing.
158 * `company-pysmell` is not used by default anymore.
159 * Loading of `nxml`, `semantic`, `pymacs` and `ropemacs` is now deferred.
160 * Candidates from grouped back-ends are merged more conservatively: only
161 back-ends that return the same prefix at point are used.
162 * `company-clang` now shows meta information, too.
163 * Some performance improvements.
164 * Fixed two old tooltip annoyances.
165 * Instead of `overrriding-terminal-local-map`, we're now using
166 `emulation-mode-map-alists` (experimental). This largely means that when the
167 completion keymap is active, other minor modes' keymaps are still used, so,
168 for example, it's not as easy to accidentally circumvent `paredit-mode`
170 * `company-elisp` has seen some improvements.
171 * Added `company-capf`: completion adapter using
172 `completion-at-point-functions`. (Stefan Monnier)
173 * Clang completions now include macros and are case-sensitive.
174 * Switching between tag files now works correctly with `company-etags`.
178 * `company-ropemacs` now provides location and docs. (Fernando H. Silva)
179 * Added `company-with-candidate-inserted` macro.
180 * Added `company-clang` back-end.
181 * Added new mechanism for non-consecutive insertion.
182 (So far only used by clang for ObjC.)
183 * The semantic back-end now shows meta information for local symbols.
184 * Added compatibility for CEDET in Emacs 23.2 and from CVS. (Oleg Andreev)
186 ## 2009-05-07 (0.4.3)
188 * Added `company-other-backend`.
189 * Idle completion no longer interrupts multi-key command input.
190 * Added `company-ropemacs` and `company-pysmell` back-ends.
192 ## 2009-04-25 (0.4.2)
194 * In C modes . and -> now count towards `company-minimum-prefix-length`.
195 * Reverted default front-end back to `company-preview-if-just-one-frontend`.
196 * The pseudo tooltip will no longer be clipped at the right window edge.
197 * Added `company-tooltip-minimum`.
198 * Windows compatibility fixes.
200 ## 2009-04-19 (0.4.1)
202 * Added `global-company-mode`.
203 * Performance enhancements.
204 * Added `company-eclim` back-end.
205 * Added safer workaround for Emacs `posn-col-row` bug.
209 * Automatic completion is now aborted if the prefix gets too short.
210 * Added option `company-dabbrev-time-limit`.
211 * `company-backends` now supports merging back-ends.
212 * Added back-end `company-dabbrev-code` for generic code.
213 * Fixed `company-begin-with`.
215 ## 2009-04-15 (0.3.1)
217 * Added 'stop prefix to prevent dabbrev from completing inside of symbols.
218 * Fixed issues with tabbar-mode and line-spacing.
219 * Performance enhancements.
223 * Added `company-begin-commands` option.
224 * Added abbrev, tempo and Xcode back-ends.
225 * Back-ends are now interactive. You can start them with M-x backend-name.
226 * Added `company-begin-with` for starting company from elisp-code.
228 * Added `company-require-match` and `company-auto-complete` options.
230 ## 2009-04-05 (0.2.1)
232 * Improved Emacs Lisp back-end behavior for local variables.
233 * Added `company-elisp-detect-function-context` option.
234 * The mouse can now be used for selection.
238 * Added `company-show-location`.
239 * Added etags back-end.
240 * Added work-around for end-of-buffer bug.
241 * Added `company-filter-candidates`.
242 * More local Lisp variables are now included in the candidates.
244 ## 2009-03-21 (0.1.5)
246 * Fixed elisp documentation buffer always showing the same doc.
247 * Added `company-echo-strip-common-frontend`.
248 * Added `company-show-numbers` option and M-0 ... M-9 default bindings.
249 * Don't hide the echo message if it isn't shown.