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