]> git.gir.st - VimFx.git/blob - CHANGELOG.md
VimFx v0.20.1
[VimFx.git] / CHANGELOG.md
1 ### 0.20.1 (2016-10-09)
2
3 - Improved: Caret mode is now a bit more robust. It can no longer make you end
4 up with [Firefox’s own Caret mode] accidentally enabled.
5 - Improved: If you try use for example `<ctrl>-j` as a keyboard shortcut, VimFx
6 will now tell you that you probably want `<c-j>` instead.
7 - Fixed: Using a keyboard shortcut to switch keyboard layout in GNOME while
8 inside a text input no longer causes the focus of that text input to be lost
9 when the Prevent autofocus option is enabled.
10 - Updated locale: zh-CN. Thanks to @av2000ii!
11
12 [Firefox’s own Caret mode]: http://kb.mozillazine.org/Accessibility_features_of_Firefox#Allow_text_to_be_selected_with_the_keyboard
13
14 ### 0.20.0 (2016-10-02)
15
16 - Added: The `g[` and `g]` commands, which let you scroll to previous and next
17 scroll positions of the current page. This is similar to Vim’s jump list.
18 - Added: The `/` mark. Pressing `'/` takes you to the scroll position before the
19 last `/`, `a/` or `g/`.
20 - Fixed: Pressing `''` multiple times in a row now flips back and forth
21 between two scroll positions as expected.
22 - Fixed: Version 0.19.0 claimed to include the following improvement: “The hint
23 marker for a smaller element can no longer cover the hint marker for a larger
24 element (unless you press `<c-space>` to rotate them).” However, a silly
25 mistake caused that improvement not to work. Now it does. For real.
26 - Fixed: All VimFx commands that copy text to the clipboard are now made sure to
27 also copy to the “selection clipboard” (if your system has such a thing). For
28 example, if you copy text using the `yv` command, the `p` command now uses
29 that copied text as expected.
30
31 ### 0.19.1 (2016-09-26)
32
33 - Fixed: The `'` command no longer crashes. (Regression since 0.19.0.)
34
35 ### 0.19.0 (2016-09-25)
36
37 #### Changes and improvements to Hints mode
38
39 **New feature:** Hint markers can now be filtered by element text, similar to
40 Vimium, Vimperator and Pentadactyl. This is useful for people who simply prefer
41 that workflow, and for clicking tiny pagination links (simply type its number!).
42
43 By default, filtering by element text is done by typing _uppercase_ characters
44 (hold down shift!). All characters other than the hint characters are now used
45 to filter hint markers by element text (rather than just being ignored). Do you
46 prefer filtering by element text, but dislike typing uppercase letters? Have a
47 look at how [hint characters] work to make things the other way around!
48
49 The markers with the best hint are now highlighted with a different color. You
50 may at any time press `<enter>` to activate those markers (or `<c-enter>` or
51 `<a-enter>` to change where and how to open links, just like you can hold ctrl
52 or alt for the last hint character).
53
54 Because of the above new features, the following default **Hints mode shortcuts
55 had to be changed:**
56
57 - `<space>` → `<c-space>` (`<s-space>` is left untouched)
58 - `<s->` → `<c-s->` (hold ctrl _and_ shift to peek through hint markers)
59 - `<enter>` → `<up>`
60 - `<c-enter>` → `<c-backspace>`
61
62 To make it easier to see the element text, hint markers are now nudged to the
63 left if they cover the text.
64
65 Other hint marker improvements:
66
67 - Hint markers are now 20% smaller by default. While trying to match text sizes
68 set by your operating system, they ended up a bit too large on most systems.
69 Check out the [Styling] documentation if you’d like to change the font size.
70 - Hint markers now have stronger contrast between the background color and the
71 text color, which should make them easier to read.
72 - The CSS for hint markers have been improved, making it easier to use custom
73 [Styling].
74 - When several elements have the same area, the best hint is now correctly given
75 to the _first_ of those elements. Previously, it happened to be the other way
76 around.
77 - The hint marker for a smaller element can no longer cover the hint marker for
78 a larger element (unless you press `<c-space>` to rotate them).
79 - Hint markers are now better positioned when having zoomed the page in or out.
80 - Hints mode is now more robust in general. Several race conditions have been
81 fixed.
82
83 [hint characters]: https://github.com/akhodakivskiy/VimFx/blob/8bafdf0454043c1630bac8b13d13f1fb4e5ee9e7/documentation/options.md#hint-characters
84 [Styling]: https://github.com/akhodakivskiy/VimFx/blob/8bafdf0454043c1630bac8b13d13f1fb4e5ee9e7/documentation/styling.md
85
86 #### Other updates
87
88 - Added: The ability to **export, import and reset all** VimFx options. There
89 are three shiny new buttons for this in VimFx’s options page in the Add-ons
90 Manager!
91 - Added: The `gB` command, which lets you **quickly blacklist** (and
92 un-blacklist) sites.
93 - Added: The `ec` command, for opening the context menu of elements.
94 - Added: The `ep` command, for opening links in new private windows.
95 - Improved: `h`, `l`, `j` and `k` now feel more like scrolling with the arrow
96 keys when held down, by boosting the scrolling speed. See the
97 [`scroll.horizontal_boost` and `scroll.vertical_boost`][scroll-boost] options
98 for more information.
99 - Fixed: VimFx’s find bar integration is now much more robust. Most notably, if
100 you start typing directly after pressing `/` and Firefox is slow at opening
101 the find bar, your keypresses can no longer trigger VimFx commands or Firefox
102 built-in commands.
103 - Improved: VimFx no longer leaks keypresses to the web page in some modes. (For
104 example, counts in Caret mode).
105 - Improved: The `eb` command now finds more clickable elements in the devtools.
106 - Changed: `vimfx.addKeyOverrides` no longer lets you easily break for example
107 Hints mode, by now only being applied to Normal mode. You might need to change
108 your matchers from `(location, mode) => ...` to simply `location => ...`.
109 (Breaking API change.)
110 - Changed: The object passed to custom commands (and custom modes) no longer
111 contains a `uiEvent` property. Instead, there’s an `event` property. This
112 property can be used the same way if you check `vim.isUIEvent(event)` first.
113 (Breaking API change.)
114
115 [scroll-boost]: https://github.com/akhodakivskiy/VimFx/blob/8bafdf0454043c1630bac8b13d13f1fb4e5ee9e7/documentation/options.md#scrollhorizontal_boost-and-scrollvertical_boost
116
117 ### 0.18.1 (2016-08-27)
118
119 - Fixed: `vimfx.addOptionOverrides` no longer crashes on startup.
120 - Fixed: `vimfx.addOptionOverrides` can now override the `prevent_autofocus`
121 pref again.
122
123 ### 0.18.0 (2016-08-20)
124
125 #### Changed default shortcuts
126
127 Some default keyboard shortcuts have been changed.
128
129 - Hint commands. Many of the old ones were difficult to remember, and there was
130 no space for adding new ones.
131
132 - `gf` → `et` (t as in tab)
133 - `gF` → `ew` (w as in window)
134 - `zf` → `ef` (f as in focus)
135 - `zF` → `eb` (b as in browser)
136 - `zv` → `av` (you actually select _all_ of the element’s text)
137
138 (`f`, `yf`, `af`, `v` and `yv` stay unchanged.)
139
140 There is a longer [explanation of these new defaults][hint-shortcuts] in the
141 documentation.
142
143 - `zr` → `gC`. `zr` was the only shortcut starting with `z`. This frees that key
144 up for other uses.
145
146 - `` ` `` → `'`. The `` ` `` shortcut (“scroll to mark”) as well as the `` ` ``
147 mark (“last position mark”) have both been changed to `'`. Both `` ` `` and
148 `'` are used in Vim. `'` is a better default, because it is easier to
149 type–both on an en-US QWERTY keyboard and, more importantly, on some
150 international layouts, such as the sv-SE QWERTY layout.
151
152 Note: If you miss Firefox’s default `'` shortcut to open the Quick Find bar
153 (which is now overridden), remember that VimFx provides `g/` which does the
154 same thing. (You can of course also change VimFx’s shortcuts.)
155
156 See also issue [#788].
157
158 [hint-shortcuts]: https://github.com/akhodakivskiy/VimFx/blob/e8d9df31dd5c8df999ac22e3b3b8d548a68c6fa7/documentation/commands.md#mnemonics-and-choice-of-default-hint-command-shortcuts
159 [#788]: https://github.com/akhodakivskiy/VimFx/issues/788
160
161 #### Other updates
162
163 - Added: It is now possible to create [custom hint commands].
164 - Fixed: The bottom-right corner of the page scrollbars can now be used with the
165 mouse again.
166 - Fixed: The toolbar button now correctly toggles VimFx’s Keyboard Shortcuts
167 dialog again.
168 - Updated locales: fr, ru. Thanks to Mickaël RAYBAUD-ROIG (@m-r-r) and Nicholas
169 Guriev (@mymedia2)!
170
171 [custom hint commands]: https://github.com/akhodakivskiy/VimFx/blob/e8d9df31dd5c8df999ac22e3b3b8d548a68c6fa7/documentation/api.md#custom-hint-commands
172
173 ### 0.17.4 (2016-07-11)
174
175 - Improved: The usage of modifier keys in Hints mode is now shown in VimFx’s
176 Keyboard Shortcuts help dialog. The functionality has been there for a long
177 time, but should now be easier to find. Thanks to our awesome translators,
178 the new help text is already available in most supported locales!
179 - Improved: If you submit a form while still being inside one of its text
180 inputs, that text input is now automatically blurred. This lets you use VimFx
181 commands while waiting for the form to submit without having to press
182 `<escape>` first.
183 - Improved: The `gu` command now works better on some pages, by preserving a
184 trailing slash. Thanks to @sinkuu!
185 - Improved: VimFx now recognizes text areas in the TYPO3 CMS.
186 - Improved: The `<escape>` command and the toolbar button now let you escape
187 back to Normal mode if VimFx ever gets stuck thinking that you are typing in a
188 text input.
189
190 ### 0.17.3 (2016-06-27)
191
192 - Improved: The `zF` command can now open even more dropdown menus of buttons.
193
194 ### 0.17.2 (2016-06-19)
195
196 - Improved: The `zF` command now works with more buttons and is able to open
197 dropdown menus of buttons.
198 - Fixed: The `f` commands now recognize more file upload buttons.
199 - Fixed: Rotating hint markers now works more as expected after having entered a
200 few hint chars.
201 - Fixed: Scrolling now works in SVG documents.
202 - Fixed: Opening links in new tabs in Firefox 50.
203 - Updated locales: pt-BR and ru. Thanks to Átila Camurça Alves (@atilacamurca)
204 and Nicholas Guriev (@mymedia2)!
205
206 ### 0.17.1 (2016-06-12)
207
208 - Fixed: The `zF` command no longer accidentally double-clicks instead of
209 single-clicking. Thanks to Alan Wu (@XrXr)!
210 - Fixed: The `zF` command no longer crashes in Firefox 49+.
211 - Fixed: The “URL popup,” shown when hovering or focusing links, now appears
212 again when focusing links using `zf` (regression since 0.17.0).
213 - Updated locale: it. Thanks to Carlo Bertoldi (@cbertoldi)!
214
215 ### 0.17.0 (2016-06-08)
216
217 - Fixed: VimFx no longer scrolls smaller elements on a page instead of the
218 entire page on some sites.
219 - Improved: The `/`, `n` and `N` have been drastically sped up (when
220 [`find_from_top_of_viewport`][find_from_top_of_viewport-1] is on). Previously,
221 they appeared to freeze on some sites, but not anymore.
222 - Improved: You can no longer accidentally trigger VimFx between pressing `/`
223 and the find bar input being is focused.
224 - Improved: The `n` and `N` commands are now more robust.
225 - Improved: “Fullscreen” buttons and “Copy to clipboard” buttons can now be
226 activated the `f` command. Thanks to Alan Wu (@XrXr)!
227 - Changed: After having pressed `m` or `` ` `` VimFx no longer waits
228 indefinitely for you to press a mark key. Instead, the [timeout] option is
229 honored.
230 - Changed: After having pressed `m` or `` ` `` you can now press `<escape>` to
231 abort those commands.
232 - Changed: Find mode is no longer shown in VimFx’s Keyboard Shortcuts help
233 dialog, to reduce clutter. (This can be changed through custom
234 [styling][styling-1].)
235 - Changed: The `?` command as well as the toolbar button now _toggle_ VimFx’s
236 Keyboard Shortcuts help dialog (instead of always showing it, even if it was
237 already shown.)
238 - Changed: Counts are now ignored in Ignore mode. Previously, pressing number
239 keys would both send those key presses to the page _and_ contribute to the
240 count for commands (showing up in the bottom-right corner). This is no longer
241 the case.
242 - Updated locales: fr, zh-CN and zh-TW. Thanks to Mickaël RAYBAUD-ROIG (@m-r-r),
243 @av2000ii and Robert Wang (@cyberrob)!
244
245 [find_from_top_of_viewport-1]: https://github.com/akhodakivskiy/VimFx/blob/288bd3317cbed3a57e42a754099b96efe6c1e38d/documentation/options.md#find_from_top_of_viewport
246 [timeout]: https://github.com/akhodakivskiy/VimFx/blob/288bd3317cbed3a57e42a754099b96efe6c1e38d/documentation/options.md#timeout
247 [styling-1]: https://github.com/akhodakivskiy/VimFx/blob/288bd3317cbed3a57e42a754099b96efe6c1e38d/documentation/styling.md
248
249 ### 0.16.1 (2016-05-29)
250
251 - Fixed: The `zF` command no longer crashes (regression since 0.16.0).
252
253 ### 0.16.0 (2016-05-29)
254
255 - Fixed: The text input focus detection problems introduced in 0.15.1, which
256 sometimes caused VimFx commands to be triggered while typing in text inputs,
257 have been fixed.
258 - Improved: If you press `n` or `N` when there are are no matches for your
259 search, the find bar is no longer opened. Only a notification is shown. The
260 reliability of those notifications has also been improved.
261 - Improved: Hints mode now finds more links.
262 - Improved: Pressing `<c-enter>` in Hints mode now includes more elements.
263 - Updated locales: es, zh-CN. Thanks to @strel and @av2000ii!
264
265 ### 0.15.1 (2016-05-22)
266
267 - Improved: Better hints on Twitter.
268 - Improved: Compatibility with the [Evernote Web Clipper] add-on (and
269 potentially other add-ons with similar UI).
270 - Updated locale: ja. Thanks to Kaoru Esashika (@pluser)!
271
272 [Evernote Web Clipper]: https://addons.mozilla.org/firefox/addon/evernote-web-clipper/
273
274 ### 0.15.0 (2016-05-18)
275
276 - Improved: Hint markers now appear up to twice as fast on many pages. This is
277 done by creating the hint markers in two phases. Most are created in the
278 first, fast, phase. The rest take the same time as older VimFx versions to
279 show up.
280 - Fixed: VimFx no longer triggers commands while typing in fancy text inputs on
281 some sites, such as when composing a new tweet on Twitter. (See also the
282 [`blur_timeout`] pref.)
283 - Changed: The `<c-enter>` Hints mode command no longer _replaces_ all hint
284 markers on screen (with new ones for all elements on screen). Instead, it
285 _toggles_ your current hint markers with ones for all _other_ elements on
286 screen.
287 - Changed: There was a breaking change to the [`vimfx.setHintMatcher`] function
288 of the `frame.js` config file API. It no longer receives and returns an object
289 (of the shape `{type, semantic}`), but instead simply receives and returns the
290 `type` of the element.
291 - Improved: Some internal robustness refactoring.
292 - Updated locales: de, id, nl and zh-CN. Thanks to @just-barcodes, Yoppy
293 Halilintar (@comepradz), @HJTP, @av2000ii and @mozillazg.
294
295 [`blur_timeout`]: https://github.com/akhodakivskiy/VimFx/blob/4a1d2468ee558ad1fdf9a4ab60f942d81bbc0b57/documentation/options.md#blur_timeout
296 [`vimfx.setHintMatcher`]: https://github.com/akhodakivskiy/VimFx/blob/4a1d2468ee558ad1fdf9a4ab60f942d81bbc0b57/documentation/api.md#vimfxsethintmatcherhintmatcher
297
298 ### 0.14.3 (2016-05-08)
299
300 - Fixed: Version 0.14.2 attempted to fix smooth scrolling speed in newer Firefox
301 versions. However, there was a tiny typo that caused the fix not to work. That
302 typo has been corrected.
303
304 ### 0.14.2 (2016-05-08)
305
306 - Fixed: Smooth scrolling speed is now correct again in newer Firefox versions.
307 - Fixed: The `yv` Caret mode command now only copies text that you can see on
308 screen (not any hidden text that might be on the page), making it truly work
309 like `zv` followed by `y`, as intended. This problem was very noticeable on
310 Slack. This also improves copying of 'contenteditable' elements using `yf`.
311 - Fixed: `<escape>` and arrow key handling as well as hint markers in the
312 devtools now work correctly again in newer Firefox versions.
313 - Fixed: VimFx no longer makes it impossible to open the Developer Toolbar.
314 - Improved: VimFx now ignores `<numlock>` and `<capslock>`. If your keyboard
315 sends `<numlock>` before some symbols, such as `<numlock>$` instead of just
316 `$`, shortcuts like `gx$` now work out of the box. This also means that you
317 can use `<capslock>` instead of `<shift>` when typing the `J` in `gJ`, for
318 example.
319 - Improved: Some minor cosmetic tweaks in VimFx’s Keyboard Shortcuts help
320 dialog.
321
322 ### 0.14.1 (2016-04-30)
323
324 - Fixed: The Find commands (such as `/`, `n` and `N`) no longer crash on some
325 sites (regression since 0.14.0).
326
327 ### 0.14.0 (2016-04-29)
328
329 - Added: [Caret mode], which lets you copy text from web pages using the
330 keyboard.
331 - Improved: The Find commands (such as `/`, `n` and `N`) now search from the top
332 of the viewport, instead of from the top of the document, which is more
333 Vim-like and less disorienting. To read more about it (or to return to the
334 Firefox default behavior) please see the [`find_from_top_of_viewport`] pref.
335 - Improved: Compatibility with the [BackTrack Tab History] add-on.
336 - Added: The `<c-enter>` Hints mode command, which creates hint markers for
337 _all_ elements.
338 - Fixed: `__dirname` inside config files now works on Windows. Thanks to
339 Zhong Jianxin (@azuwis)!
340 - Fixed: Unnecessary full-page hint markers on some sites, such as Hackernews,
341 no longer appear.
342
343 [Caret mode]: https://github.com/akhodakivskiy/VimFx/blob/4ffda62560096f91244f3f7731171002ed174f05/documentation/commands.md#the-v-commands--caret-mode
344 [`find_from_top_of_viewport`]: https://github.com/akhodakivskiy/VimFx/blob/4ffda62560096f91244f3f7731171002ed174f05/documentation/options.md#find_from_top_of_viewport
345 [BackTrack Tab History]: https://addons.mozilla.org/firefox/addon/backtrack-tab-history/
346
347 ### 0.13.2 (2016-04-08)
348
349 - Improved: The “last position mark” `` ` `` now works more reliably.
350 - Improved: More video players are now recognized. Many video players lets you
351 press `<space>` while focused to toggle play/pause. VimFx tries to detect if
352 the currently focused element is a video player. If so, `<space>` is passed to
353 the video player instead of scrolling the page. (For those interested, see
354 also the [`adjustable_element_keys`] pref.)
355
356 [`adjustable_element_keys`]: https://github.com/akhodakivskiy/VimFx/blob/645e35d7d82019b0551534c43926bc126e7105bd/documentation/options.md#adjustable_element_keys
357
358 ### 0.13.1 (2016-04-01)
359
360 - Fixed: Blacklisting of some XUL pages.
361 - Fixed: The current mode is no longer lost when a page loads. For example, if
362 you press `zF` while a page is loading, the markers no longer disappear.
363 - Fixed: Elements that you have focused using an `f` command no longer get stuck
364 appearing as if you’d put the mouse pointer.
365 - Updated locale: zh-CN. Thanks to @mozillazg!
366
367 ### 0.13.0 (2016-03-19)
368
369 - Added: The `T` command, which opens a new tab after the current.
370 - Changed: The `gl` command now deals with _visited_ tabs only.
371 - Added: The [`gL`] command, which deals with <em>un</em>visited tabs only, in
372 oldest-first order. Use this to step through your unvisited background tabs in
373 the order you opened them (for example using the `F` command).
374 - Improved: The `gi` command no longer tries to focus the last focused text
375 input if it has been removed from the page. If so, it finds a new one instead.
376 - Fixed: You can now type in sidebar text inputs (such as in the history
377 sidebar) without having to switch to Ignore mode.
378 - Changed: If you enter Ignore mode you will now stay in Ignore mode in that tab
379 until you explicitly exit it (by pressing `<s-escape>`), even if you reload
380 the page or follow a link. If Ignore mode was entered automatically because of
381 the [blacklist][blacklist-2], though, you will be automatically returned to
382 Normal mode if
383 the URL changes to a non-blacklisted page.
384 - Added: VimFx can now automatically enter and exit Ignore mode based on the
385 currently focused element. Currently, the [wasavi] extension as well as
386 [CodeMirror] in Vim mode are detected. Both of those provide Vim-style
387 editors. This allows sending `<escape>` to those editors in order to exit
388 their Insert mode, without blurring the editor.
389 - Improved: CodeMirror editors now get better hints, keeping the cursor where
390 you left it.
391 - Improved: The [blacklist][blacklist-2] is now applied faster on some pages.
392 - Improved: Many audio and video elements are now recognized as “adjustable”,
393 allowing you to press for example `<space>` on them to toggle play/pause,
394 without scrolling the page.
395 - Improved: Scrolling by pages, such as using the `<space>` command, now takes
396 fixed heaears and footers into account, just like Firefox does.
397 - Fixed: Access keys now work correctly in context menus in the devtools and
398 `about:config`.
399 - Improved: The arrow keys now Just Work in the devtools, even if you have bound
400 them to VimFx commands.
401 - Changed: The public API has been removed, and turned into the Config file API.
402 If you were already using a config file, it will no longer work. You need to
403 set up a new one, but you should be able to simply copy and paste the contents
404 of the old one into the new one. Read the [config file] documentation for more
405 information.
406 - Changed: There are a few minor breaking changes to the API, though I doubt it
407 will affect anyone.
408 - If you use [`vimfx.on`], you probably need to adjust the arguments of the
409 your callbacks. They are now _always_ passed an object of data, instead of
410 sometimes passing the data directly.
411 - `match.focus` of [match object]s has been removed, and replaced by
412 `vim.focusType` of [vim object]s.
413 - Fixed: The toolbar button’s icon is now correctly sized when setting
414 `layout.css.devPixelsPerPx` to `2`. Thanks to Robert Ma (@Hexcles) and Dale
415 Whinham (@dwhinham)!
416 - Fixed: Find commands now work when the find bar was opened before the page had
417 finished loading.
418 - Improved: Lots of internal improvements. This should make VimFx faster, more
419 reliable and more responsive.
420 - All keyboard event handling (except `<late>` shortcuts) are now handled in
421 the UI process, instead of mostly in each tab’s web page content process.
422 This should make VimFx’s shortcuts more reliable and responsive.
423 - Removed all synchronous message passing (execpt for `<late>` keypresses).
424 Mozilla recommends using them only where absolutely necessary. Turns out
425 VimFx doesn’t need them anymore!
426 - The `f` commands are now more reliable. Before, they could crash on rare
427 occasions (on certain web pages), but that is less likely now.
428 - Less `MutationObserver`s are now used. This should improve performance.
429 - Less uncaught errors (especially on shutdown).
430 - Lots of minor improvements.
431 - Updated locale: ja. Thanks to Kaoru Esashika (@pluser)!
432
433 [`gL`]: https://github.com/akhodakivskiy/VimFx/blob/44b3e1bc350ceb1560176ee5b4ae97d9671a04db/documentation/commands.md#gl-1
434 [blacklist-2]: https://github.com/akhodakivskiy/VimFx/blob/44b3e1bc350ceb1560176ee5b4ae97d9671a04db/documentation/options.md#blacklist
435 [wasavi]: http://appsweets.net/wasavi/
436 [CodeMirror]: https://codemirror.net/demo/vim.html
437 [config file]: https://github.com/akhodakivskiy/VimFx/blob/44b3e1bc350ceb1560176ee5b4ae97d9671a04db/documentation/config-file.md
438 [`vimfx.on`]: https://github.com/akhodakivskiy/VimFx/blob/44b3e1bc350ceb1560176ee5b4ae97d9671a04db/documentation/api.md#vimfxoneventname-listener-and-vimfxoffeventname-listener
439 [match object]: https://github.com/akhodakivskiy/VimFx/blob/44b3e1bc350ceb1560176ee5b4ae97d9671a04db/documentation/api.md#match-object
440 [vim object]: https://github.com/akhodakivskiy/VimFx/blob/44b3e1bc350ceb1560176ee5b4ae97d9671a04db/documentation/api.md#vim-object
441
442 ### 0.12.0 (2016-02-03)
443
444 - Improved: More clickable elements are now recognized. Most notably, elements
445 with click event listeners added by JavaScript now get hints.
446 - Improved: Autofocus prevention after using the `[` and `]` commands.
447 - Added: In VimFx’s Keyboard Shortcuts help dialog (which can be opened by
448 pressing `?`) you can now click on any command to open VimFx’s settings page
449 in the Add-ons Manager and automatically select the text input for that
450 command, letting you edit its shortcuts. Tip: Use the `zF` command to click
451 without using the mouse.
452 - Changed: Autofocus is no longer prevented in Firefox internal pages, such as
453 `about:preferences`, `about:addons` and `about:config` (as well as other XUL
454 pages).
455 - Fixed: VimFx and the Beyond Australis extension do not conflict with each
456 other anymore.
457 - Fixed: The `gH` command no longer nags you about “No back/forward history”
458 even though there is.
459 - Added: The `gl` command now takes a [count][gl-count].
460 - Improved: Optimized CPU usage in Hints mode. (See also the [`hints_sleep`]
461 pref.)
462 - Improved: The `H` and `L` commands should now be more reliable in Firefox 43
463 and later.
464 - Changed: There was a tiny breaking change to the Public API, though I doubt it
465 will affect anyone. (See [commit 0ca807605e] if you’re especially interested.)
466 - Improved: _Several_ minor things, and some really nice internal refactoring.
467 - Updated locale: de. Thanks to @just-barcodes!
468
469 [`hints_sleep`]: https://github.com/akhodakivskiy/VimFx/blob/92b483c4a4f6da0b2c998267e0f01d3d999f93b6/documentation/options.md#hints_sleep
470 [gl-count]: https://github.com/akhodakivskiy/VimFx/blob/92b483c4a4f6da0b2c998267e0f01d3d999f93b6/documentation/commands.md#gl
471 [commit 0ca807605e]: https://github.com/akhodakivskiy/VimFx/commit/0ca807605e8d69fdc01ef9ce5d539cf66ce7d96f
472
473 ### 0.11.0 (2016-01-15)
474
475 - Fixed: The `` ` `` command is no longer broken.
476 - Fixed: Memory leak.
477 - Added: The `gl` command, which takes you to the most recent tab.
478 - Improved: The Keyboard Shortcuts help dialog is now scrollable using VimFx’s
479 scrolling commands. To allow for this, the search field is no longer
480 autofocused. Instead, press `/` to open it.
481 - Improved: Using the `f` commands, such as `f` and `zf`, now works like
482 actually moving your mouse onto the link, making hover menus and such-like
483 appear.
484 - Improved: VimFx should now work better with Google Drive Documents, Etherpad
485 and a few other fancy text editors.
486 - Improved: The `]` command now works on google.com.
487 - Improved: Checkboxes and menu items on gmail.com are now given hints by the
488 `f` command.
489 - Improved: The `gi` command now also recognizes 'contenteditable' elements.
490 - Improved: Hint markers now move along together with their elements.
491 - Fixed: Hint markers should now be correctly positioned when zooming.
492 - Fixed: The toolbar button icon should now look correctly on Retina screens.
493 - Added: You may now disable counts by using toggling the [`counts_enabled`]
494 pref.
495 - Updated locale: de. Thanks to @just-barcodes!
496 - Improved: Several minor things.
497
498 [`counts_enabled`]: https://github.com/akhodakivskiy/VimFx/blob/8dae7aec9008595da31b939d5ae2d239849cf6dc/documentation/options.md#counts_enabled
499
500 ### 0.10.0 (2015-12-09)
501
502 - Added: The `zF` command, which lets you click browser elements.
503 - Improved: The scrolling commands can now scroll browser elements (in other
504 words, not only web page content), by first selecting the scollable element
505 using `zF`.
506 - Added: The `gr` command, which toggles [Reader View].
507 - Added: The `gX` command, which opens the Recently Closed Tabs menu at the
508 middle of the screen.
509 - Added: The keys you’ve typed so far of a command, as well the count, are now
510 shown in a [notification]. (You may disable this using the
511 [`notify_entered_keys`] pref.)
512 - Improved: When commands don’t do anything, they show a [notification] instead,
513 letting you know that you actually pressed the right keys. For example, if you
514 press `f` but there are no markable elements visible, a notification is shown
515 telling you so, instead of silently doing nothing.
516 - Improved: `<space>` now scrolls _about a line less_ than a full page, just
517 like Firefox does by default. `d` scroll about _half_ a line less (by
518 default), so that pressing `d` twice works like pressing `<space>` once. (See
519 the [`scroll.full_page_adjustment` and `scroll.half_page_adjustment`] prefs
520 for more information.)
521 - Improved: `gi` now only selects all text in its text input if you haven’t
522 focused a text input yet (allowing you to easily replace pre-filled text),
523 instead of _always_ doing so. Otherwise, it now puts the cursor where you left
524 off typing the last time.
525 - Fixed: The `f` commands now put the cursor where you left off typing the last
526 time when focusing a text input. Previously, they accidentally selected all
527 text in the text input (use `zf` for that behavior).
528 - Fixed: Yet a scrolling fix. VimFx’s scrolling commands should now “just work”
529 on even more sites.
530 - Fixed: AltGr should now work out of the box on Windows. (See the
531 [`ignore_ctrl_alt`] pref for more information.)
532 - Removed: The el-GR, hu and pl locales were sadly too out of date to be useful,
533 and nobody has shown interest in updating them, so they were removed.
534 - Updated locales: id, de and zh-CN. Thanks to Yoppy Halilintar, @just-barcodes
535 and @mozillazg!
536 - Fixed: Several tiny bugs.
537
538 [Reader View]: https://support.mozilla.org/kb/firefox-reader-view-clutter-free-web-pages
539 [notification]: https://github.com/akhodakivskiy/VimFx/blob/ba9d4675e19ce315e6855b64400aae092e727975/documentation/notifications.md
540 [`notify_entered_keys`]: https://github.com/akhodakivskiy/VimFx/blob/ba9d4675e19ce315e6855b64400aae092e727975/documentation/options.md#notify_entered_keys
541 [`scroll.full_page_adjustment` and `scroll.half_page_adjustment`]: https://github.com/akhodakivskiy/VimFx/blob/ba9d4675e19ce315e6855b64400aae092e727975/documentation/options.md#scrollfull_page_adjustment-and-scrollhalf_page_adjustment
542 [`ignore_ctrl_alt`]: https://github.com/akhodakivskiy/VimFx/blob/ba9d4675e19ce315e6855b64400aae092e727975/documentation/options.md#ignore_ctrl_alt
543
544 ### 0.9.0 (2015-12-02)
545
546 - Fixed: Links with the `onclick` attribute can now be opened in new tabs again.
547 (Regression since 0.8.0.)
548 - Fixed: The text size in VimFx’s Keyboard Shortcuts help dialog is now
549 correctly resized.
550 - Added: The `gH` command. It opens the back/forward button context menu in the
551 middle of the window, allowing you to choose a history entry with the arrow
552 keys and `<enter>`.
553
554 ### 0.8.0 (2015-12-01)
555
556 - Fixed: VimFx now works properly in tabs moved to other windows.
557 - Fixed: An unreliable check for multi-process mode has been eliminated, fixing
558 various problems for some users.
559 - Fixed: VimFx’s toolbar button now changes color correctly when switching
560 between blacklisted and non-blacklisted tabs.
561 - Fixed: Dead keys now work out of the box on Windows.
562 - Improved: Links with the `onclick` attribute (abused as buttons) can no longer
563 get the same hint as another link.
564 - Added: The Keyboard Shortcuts help dialog (shown by pressing `?`) is now
565 searchable.
566 - Added: The `g/` command. It’s like `/` but searches links only.
567
568 - Added: [Marks].
569
570 - Use `ma` to mark the current scroll position and `` `a `` to return to it.
571 (You may substitute `a` with any key press.)
572 - Use ``` `` ``` to return to the position before the last `gg`, `G`, `0`,
573 `$`, `/`, `n`, `N` or `` ` ``. (You can change this mark using the
574 [`last_scroll_position_mark`] pref.)
575
576 - Added: Window commands.
577
578 - `w`: Open new window.
579 - `W`: Open new private window.
580 - `gw`: Move tab to new window.
581 - `gF`: Follow link in new window.
582
583 [Marks]: https://github.com/akhodakivskiy/VimFx/blob/47fc699ce8217ee90af4d12e81f102f2bea09d61/documentation/commands.md#marks-m-and-
584 [`last_scroll_position_mark`]: https://github.com/akhodakivskiy/VimFx/blob/47fc699ce8217ee90af4d12e81f102f2bea09d61/documentation/options.md#last_scroll_position_mark
585
586 ### 0.7.3 (2015-11-22)
587
588 - Fixed: Scrolling now works correctly in pages in quirks mode (lacking a
589 doctype), such as Hackernews.
590 - Improved: The largest scrollable element is now detected better in frames.
591 - Fixed: Hints mode now exits correctly when focusing a text input using `af`,
592 or `f` with a count.
593
594 ### 0.7.2 (2015-11-21)
595
596 - Fixed: The blinking text caret now always appears correctly when focusing text
597 inputs.
598
599 ### 0.7.1 (2015-11-21)
600
601 - Fixed: The scrolling commands should now “just work” when using non-default
602 zoom or DPI settings, most notably on Google Groups.
603
604 ### 0.7.0 (2015-11-19)
605
606 - Changed: Instead of using system notifications, which turned out to be a bit
607 too intrusive, [notifications] are now similar to the “URL popup” (shown when
608 hovering or focusing links) but are placed on the opposite side,.
609 - Changed: The “Focus next element” and “Focus previous element” commands have
610 been removed. The reason they existed was to let `<tab>` and `<s-tab>` only
611 cycle between text inputs (as opposed to _all_ focusable elements) after
612 you’ve pressed `gi`. Now, `<tab>` and `<s-tab>` are handled specially instead,
613 and _only_ after pressing `gi`. The reason for this change is that the now
614 removed commands were too intrusive, breaking user habits. One of VimFx’s main
615 goal is _not_ to do that. (You can turn the special handling of `<tab>` and
616 `<s-tab>` off using the the new [`focus_previous_key` and `focus_next_key`]
617 prefs.)
618 - Fixed: The scrolling commands should now “just work” in a lot more situations,
619 most notably on Gmail and Google Groups. More scrollable elements are also
620 recognized by the `f` and `zf` commands.
621 - Improved: The right border of hint markers for scrollable elements is now
622 styled to remind of a scroll bar, making them easier to recognize among hints
623 for links.
624 - Improved/Changed: `J` and `gJ` now allow a count on the first tab.
625 Consequently, `K` and `gK` now allow a count on the _last_ tab.
626 - Changed: `gJ` and `gK` can no longer be used to pin or unpin tabs. They now
627 only wrap around tabs of the same pinned state. Use `gp` to toggle between
628 pinned and non-pinned.
629 - Fixed: Many elements that got a hint before VimFx 0.6.0 now do again.
630 - Improved: Comment fields on Facebook can now be focused using `f` and blurred
631 using `<escape>`.
632 - Improved: VimFx’s toolbar button is no greyed out when you focus a text input.
633 This is to show that your key presses will be passed into the text input
634 rather than activating VimFx commands.
635 - Added: [`g0`, `g^` and `g$` now accept counts][tab-index-counts], allowing you
636 to go to tab number _count._
637 - Improved: `gi` now finds text inputs inside frames.
638 - Fixed: “gi mode” is now exited properly when blurring a text input.
639 - Fixed: `<select>` elements are no longer considered to be text inputs when
640 using `<tab>` and `<s-tab>` in “gi mode.”
641 - Fixed: Using `<force>` or `<late>` in a shortcut no longer applies to _every_
642 shortcut for the command, but only that shortcut.
643 - Fixed: The order of the Previous/Next page patterns is now respected. This
644 caused the wrong link to be picked by the `[` and `]` commands on some pages.
645
646 [`focus_previous_key` and `focus_next_key`]: https://github.com/akhodakivskiy/VimFx/blob/d70b5bb14be89d9ce52138b0e9abdef1b31ad337/documentation/options.md#focus_previous_key-and-focus_next_key
647 [notifications]: https://github.com/akhodakivskiy/VimFx/blob/d70b5bb14be89d9ce52138b0e9abdef1b31ad337/documentation/notifications.md
648 [tab-index-counts]: https://github.com/akhodakivskiy/VimFx/blob/d70b5bb14be89d9ce52138b0e9abdef1b31ad337/documentation/commands.md#g0-g-g
649
650 ### 0.6.2 (2015-11-11)
651
652 - Improved: If the entire page isn’t scrollable, the largest scrollable element
653 is scrolled instead.
654 - Fixed: VimFx’s keyboard shortcuts now works on slowly loading pages.
655 - Fixed: Numbers may now be used as shortcut keys (overriding counts).
656 - Fixed: The toolbar button’s icon is now correctly sized in high DPI.
657 - Fixed: Hint markers are now correctly positioned when zooming using the “Zoom
658 text only” option.
659 - Fixed: The `P` command now works with the InstantFox add-on.
660
661 ### 0.6.1 (2015-11-10)
662
663 - Fixed: If you customized the “esc” command before VimFx 0.6.0 it should now
664 work as expected.
665 - Fixed: `<tab>` now works as expected in the location bar and in the dev tools.
666 - Fixed: Light-weight themes can no longer make VimFx’s Keyboard Shortcuts help
667 dialog and hint markers unreadable.
668 - Added: The [notifications\_enabled] option.
669
670 [notifications\_enabled]: https://github.com/akhodakivskiy/VimFx/blob/56c4b7c514ea8b58d2cdcecf3d2654648c48ca31/documentation/options.md#notifications_enabled
671
672 ### 0.6.0 (2015-11-09)
673
674 ##### Most important (breaking) changes
675
676 - VimFx now works properly with **any keyboard layout.** Users of **multiple
677 layouts** should enable the **[ignore keyboard layout] option.** #249 #259
678
679 - Features related to disabling VimFx, and to the [toolbar button]:
680
681 - **Insert Mode** has been renamed to **_Ignore_ mode.**
682 - **[Blacklisted][blacklist] sites** now **enter Ignore mode automatically,**
683 instead of being specially handled.
684 - The feature to click the toolbar button (or press `<a-V>`) to **disable
685 VimFx** has been **removed.** Use **Ignore mode** (`i`) and the
686 **[blacklist] instead.**
687 - The **toolbar button** is now **red in Ignore mode** (which also means that
688 it is red on blacklisted sites) and green otherwise (never grey anymore).
689 - The toolbar button no longer offers to (un-)blacklist the current domain.
690 (Head into VimFx’s settings page in the Add-ons Manager and add
691 `*currentdomain.com*` to the [blacklist] option yourself instead.)
692
693 (See [commit 3552282] for more information.)
694
695 - **Some default shortcuts have changed,** mostly because they conflicted with
696 standard Firefox shortcuts: #308
697
698 - `<c-J>` → `gJ`
699
700 - `<c-K>` → `gK`
701
702 - `g^` and `gH` → `g0`
703
704 `g^` now selects the first _non pinned_ tab instead, while `g0`
705 selects the first tab regardless of whether it is pinned or not. #317
706
707 - `<c-e>` (alias for `j`) and `<c-y>` (alias for `k`) have been removed.
708
709 - `<c-f>` → `<space>` and `<c-b>` → `<s-space>`
710
711 - `vf` → `zf`
712
713 This frees up `v` for future shortcuts (instead making `z` a
714 “namespace” key, just like in Vim).
715
716 - To **exit Ignore mode:** `<escape>` → `<s-escape>`. This is because Ignore
717 mode has replaced the disable feature, as well as the special blacklist
718 state (see above). Sites are likely to use `<escape>` but not `<s-escape>`.
719 (In a way, this new role of Ignore mode also means that the old (many times
720 broken) shortcut to disable VimFx (`<a-V>`) has been replaced by `i`.) #64
721 \#375 #432
722
723 - VimFx’s Keyboard Shortcuts help dialog is now help only, and more accessible.
724 To **customize keyboard shortcuts,** go to VimFx’s settings page **in the
725 Add-ons Manager,** just like you would to customize other settings. Also,
726 **commas** between every key are **no longer needed:** Type `gJ` instead of
727 `g,J`.
728
729 - For performance reasons, **Hint markers** are now placed vertically **centered
730 instead of at the top** of the element. Don’t be surprised if you see the same
731 hint repeated several times**—links that go to the same place now get the same
732 hint.** The “Smart hints” option has been removed—hints are _always_ smart
733 now, and a lot smarter than before. Finally, hints now also work in the new
734 tab page, the Add-ons Manager and the preferences page. If you want to, you
735 can read more about [the `f` commands]. \#51 #60 #176 #320 #325 #468 #471 #475
736
737 - The **`F`** command now _always_ opens tabs in new **background** tabs, while
738 **`gf`** has been added to open tabs in new **foreground** tabs. #227 #464
739
740 - **Autofocus prevention** is now **off by default.** One of VimFx’s core
741 philosophies is to be nice to your browser habits. Some find autofocus
742 prevention too big a change. Turn it on again if you like it! By the way,
743 autofocus prevention now works much more reliably and should not cause issues
744 with other extensions. #497 #541
745
746 - The **“Scroll step”** option has been **removed**. The scrolling commands that
747 used it now **work like the arrow keys instead,** and are customized just like
748 them. See [scrolling prefs] for more information.
749
750 - Speaking of scrolling, **which elements scrolls** when you use VimFx’s
751 scrolling commands **has changed.** See [scrolling commands] for more
752 information.
753
754 ##### New features
755
756 - New commands:
757
758 - `gp` pins or unpins the current tab. (Also see `g^` and `g0` mentioned
759 above.) #121
760 - `yt` duplicates the current tab. #121
761 - `0` and `^` scroll to the far left, and `$` scrolls to the far right.
762 - [`gi`] has finally been implemented. #47
763 - [Ignore mode `<s-f1>`] let you run a Normal mode command without exiting
764 Ignore mode.
765
766 - In Hints mode you can now hold ctrl and alt to change behavior of the matched
767 marker. Hold shift to temporarily make the hints see-through. See [the `f`
768 commands] for more information. #220 #421 #484
769
770 - Some commands now accept [counts]. #374
771
772 - It is now possible to create shortcuts that work inside text inputs. See the
773 [`<force>`] key for more information. #258
774
775 - It is now possible to create shortcuts that the page can override. See the
776 [`<late>`] key for more information.
777
778 - A number of [advanced options] have been added. Rather than listing everything
779 regarding them here, follow that link if you’re interested. #452 #489
780
781 - You may now, if you want to, configure VimFx through a [config file], using
782 the new [public API]. Customizing VimFx through a config file also gives extra
783 abilities, such as [site-specific options][option-overrides] and [disabling
784 certain commands on certain sites][key-overrides]. It also allows to add
785 [custom commands] \(and other extensions to extend VimFx). #158 #235 #255 #261
786 \#300 #408 #445 #490 #515
787
788 - It is now easier to customize VimFx through custom [styling]. An example is
789 changing the way hint markers look. #220 #233 #424 #432 #465
790
791 - VimFx now has [documentation] and a [wiki].
792
793 - A few new locales were added:
794
795 - fr. Thanks to Mickaël RAYBAUD-ROIG (@m-r-r)!
796 - pt-BR. Thanks to Átila Camurça Alves (@atilacamurca)!
797 - sv-SE. Thanks to Andreas Lindhé (@lindhe)!
798
799 ##### Improvements
800
801 - VimFx is now multi-process/Electrolysis/e10s compatible! This means that you
802 can run VimFx on a version of Firefox with multi-process enabled without
803 issues, and that we’re future proof for the day when Firefox becomes
804 multi-process by default. Best of all, it also made VimFx more reliable in
805 non-multi-process (“regular”) Firefox. #378
806
807 - The `[` and `]` commands are now smarter, recognizing more links to the
808 previous/next page correctly. You may read more about [previous/next page
809 patterns]. #396
810
811 - The `n` and `N` commands now notify you when they wrap around the page, or the
812 phrase you searched for could not be found. #398
813
814 - _All_ shortcuts in _all modes_ can now be customized. For example, this allows
815 you to disable VimFx’s Vim-style `<enter>` behavior in the find bar. #222 #390
816 \#421
817
818 - The `p` and `P` commands are now smarter regarding whether to treat the
819 clipboard contents as a URL or a search, by working exactly like pasting in
820 the location bar. They also now read the selection clipboard, if available.
821 \#353 #382
822
823 - VimFx’s toolbar button is now properly implemented. #303 #349 #383
824
825 - Most locales were updated. Thanks to our awesome [translators]!
826
827 ##### Minor bug fixes
828
829 - VimFx now works correctly in tabs dragged to other windows. #57
830 - The `p` command is no longer broken. #494
831 - Non-ASCII shortcut keys now work properly. #433
832 - The Keyboard Shortcuts help dialog can no longer be covered by page elements.
833 \#477
834 - Hint markers can no longer be covered by page elements.
835 - VimFx no longer causes scripts on icloud.com to get stuck in an infinite loop.
836 \#389
837
838 [advanced options]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/options.md#advanced-options
839 [blacklist]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/options.md#blacklist
840 [ignore keyboard layout]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/options.md#ignore-keyboard-layout
841 [previous/next page patterns]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/options.md#previousnext-page-patterns
842 [scrolling prefs]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/options.md#scrolling-prefs
843 [counts]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/commands.md#counts
844 [`gi`]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/commands.md#gi-1
845 [Ignore mode `<s-f1>`]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/commands.md#ignore-mode-s-f1
846 [scrolling commands]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/commands.md#scrolling-commands-1
847 [the `f` commands]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/commands.md#the-f-commands-1
848 [`<force>`]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/shortcuts.md#force
849 [`<late>`]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/shortcuts.md#late
850 [config file]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/config-file.md
851 [public api]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/api.md
852 [option-overrides]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/api.md#vimfxaddoptionoverridesrules
853 [key-overrides]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/api.md#vimfxaddkeyoverridesrules
854 [styling]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/styling.md
855 [toolbar button]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/styling.md
856 [translators]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/PEOPLE.md#translators
857 [documentation]: https://github.com/akhodakivskiy/VimFx/blob/c790b0fc1127c66bb7b33ccbaf4c0e8090e5530b/documentation/
858 [wiki]: https://github.com/akhodakivskiy/VimFx/wiki/
859 [custom commands]: https://github.com/akhodakivskiy/VimFx/wiki/Custom-Commands
860 [commit 3552282]: https://github.com/akhodakivskiy/VimFx/commit/355228217d7e7a61f5e1edbb9efbfb0f3e4ef81c
861
862 ### 0.5.17 (2015-01-23)
863
864 - Fixed: The hints generation no longer crashes on some pages (regression since
865 version 0.5.15).
866
867 ### 0.5.16 (2015-01-22)
868
869 - Fixed: The toolbar button no longer throws errors. (This fix should have been
870 in 0.5.15 but was forgotten. Luckily an AMO reviewer found it.)
871
872 ### 0.5.15 (2015-01-21)
873
874 - Improved: This version is now forwards-compatible with the upcoming version
875 0.6.0. Downgrading from 0.6.0 to 0.5.14 or older might cause VimFx to crash,
876 but downgrading from 0.6.0 to 0.5.15 is safe.
877 - Fixed: Non-hintchars key presses in hints mode are now suppressed. They used
878 to be passed along to the browser, which could confusingly activate site
879 commands.
880 - Fixed: The 'f' command now always opens links in the same tab. Links used to
881 be able to force a new tab or window.
882 - Fixed: Pressing 'Esc' in the location bar now restores the URL, as is the
883 default behaviour of Firefox. You may now also close Firefox dialogs using
884 'Esc'.
885 - Improved: Updated the de locale. Thanks to Alexander Haeussler!
886 - Improved: Updated the pl locale. Thanks to morethanoneanimal!
887
888 ### 0.5.14 (2014-08-16)
889
890 - Fixed: Locales should now work properly.
891 - Improved: Updated the zh-CN locale (@mozillazg).
892 - Improved: Updated the de locale (@Kambfhase).
893 - Added: Japanese locale (@pluser).
894 - Fixed: If you switched to another tab or window while an `<input>` element
895 was focused and then switched back, the `<input>` element got blurred, while
896 it should have stayed focused. This caused the auto-type feature of KeePassX
897 to break.
898
899 ### 0.5.13 (2014-08-02)
900
901 - Fixed: The vote button on StackExchange sites are now markable again.
902 - Improved: Detection of previous/next links. Should work better on gmail now.
903 - Fixed: It is now possible to use Enter/Return in keyboard shortcuts.
904 - Improved: The n/N commands (etc.) now work even if you didn’t open the finbar
905 using the VimFx command (such as the default key binding ctrl+f, or by
906 clicking a menu item).
907 - Improved: It is now possible to blur text inputs without sending Esc to the
908 page, which could cause dialogs etc. to annoyingly close.
909 - Improved: Updated the el-GR locale (@sirodoht).
910 - Fixed: Autofocus prevention sometimes made text inputs impossible to focus
911 until you reloaded the page.
912 - Improved: Autofocus prevention now works on more sites than before.
913 - Improved: Autofocus prevention now prevents _all_ automatic focusing (not
914 just when the page loads). This makes devdocs.io much easier to use.
915 - Added: When viewing images directly and the image has been resized to fit the
916 screen the image is now markable, allowing you to toggle zoom on it using the
917 keyboard.
918 - Fixed: It is no longer possible to add conflicting shortcuts (such as adding
919 'a' when 'af' and 'as' are already present).
920
921 ### 0.5.12 (2014-06-01)
922
923 - Fixed: Autofocus prevention got stuck sometimes, making it impossible to
924 focus inputs.
925
926 ### 0.5.11 (2014-06-01)
927
928 - Fixed: The focus search bar command was broken.
929 - Fixed: Autofocus prevention was broken.
930 - Fixed: The top bar on YouTube could not be accessed by VimFx.
931 - Fixed: You can no longer add blank hotkeys.
932 - Improved: Tab Groups are supported.
933 - Improved: Matching of previous/next links should be more reliable.
934 - Improved: A few minor things.
935
936 ### 0.5.10 (2014-05-07)
937
938 - Fixed yet another bug related to the default preferences
939
940 ### 0.5.9 (2014-05-04)
941
942 - Fixed a bug with default preferences not being set
943 - Fixed gg and G to be faster
944
945 ### 0.5.8 (2014-04-18)
946
947 - AMO Preliminary Review bug fix (sorry for such long delay)
948
949 ### 0.5.7 (2014-03-03)
950
951 - Bug fix
952
953 ### 0.5.6 (2014-02-26)
954
955 - Updated some translations
956 - Updated pagination patterns and logic
957
958 ### 0.5.5 (2014-01-03)
959
960 - Hotfix release to address a bug that has been introduced in 0.5.4
961
962 ### 0.5.4 (2014-01-03)
963
964 - Fix for popup passthrough mode stucking
965 - Make toolbar button click depend on current mode
966 - Higher weight markers should not be overlapped
967 - Refactor find mode to use Firefox native search bar
968 - Bump minimum required Firefox version to 25
969 - Added commands to go in the URL path
970 - Added commands to navigate previous and next links with customizable link
971 patterns
972 - Use Firefox 24+ native console API
973 - Update zh-CN localization
974
975 ### 0.5.3 (2013-10-16)
976
977 - Lots of refactoring
978 - Insert mode (`i` command)
979 - Follow multiple links with `af` command
980 - Hint marker rotation with `space` while in hints mode
981
982 ### 0.5.1 (2013-08-21)
983
984 - Fixed regression with stylesheets
985 - Updated icon
986
987 ### 0.5 (2013-08-19)
988
989 - Added command to focus search bar: `O`
990 - Added commands to stop loading current page and all pages: `s` and `as`
991 - Invisible elements will not get hint markers
992 - Compatibility with Firefox 25
993 - Simple shortcut customization with UI in Help dialog
994 - Use Huffman coding algorithm for hint markers generation which results in
995 shorter links
996 - Implemented Bloom filters to achieve shorter hints for those shortcuts that
997 are used often
998 - Reimplemented scrolling - now works with pages where window is not scrollable
999 - Find disabled on non HTML documents
1000 - Find string is now global for all windows.
1001 - Fixed logic of locale discovery. Now we rely on general.useragent.locale
1002 Firefox preference for current locale
1003
1004 ### 0.4.8 (2013-06-12)
1005
1006 - `embed` and `object` tags will now have their own hints
1007 - Bug fixes related to custom hint chars (@LordJZ)
1008 - Fixed `t` - now it will be nice to other extensions
1009 - Updated Chinese translations (@mozillazg)
1010 - Reenter Normal mode on page reloads to avoid getting stuck in Hints mode
1011 without any hints
1012 - Search will focus element that contains matching text
1013 - Fixed hint markers for iframes
1014 - Marker bug fixes (@LordJZ)
1015
1016 ### 0.4.6 (2013-03-27)
1017
1018 - Reimplemented find mode: CJK support, performance boost
1019 - `a/` or `a.` to highlight all matches of the search string on the page
1020 - Hint markers will now reach into iframes
1021 - Key handling is disabled when a popupmenu or panel are shown
1022 - `yf` will now also focus links and copy values from text/textarea element
1023 - `vf` will show hit markers to focus the underlying element
1024
1025 ### 0.4.5 (2013-03-12)
1026
1027 - `:` to open Firefox Developer Toolbar, `Esc` to close it.
1028 - Add Hungarian locale (@thenonameguy).
1029 - Add Polish locale (@grn).
1030 - Don't close pinned tabs when pressing x (@grn).
1031 - Switched to Makefile for building the extension release (@carno).
1032 - Mrakers CSS tweaks (@helmuthdu)
1033
1034 ### 0.4.4 (2013-01-30)
1035
1036 - Thanks to @mozillazg and @mcomella for translation contributions.
1037 - Added `gh` command that will navigate to the home page.
1038 - Added `o` command to focus location bar.
1039 - `p` and `P` will parse the contents of the clipboard. If the string in the
1040 clipboard appears to be a URL then it will navigate to this URL. Otherwise it
1041 will search for the string in the clipboard using currently selected search
1042 provider.
1043 - Now hint markers for links will stay on top of all the markers for different
1044 kinds of elements.
1045 - Esc will now also close the focused default search bar.
1046 - Fixed bugs related to keyboard events handling, XUL documents, and some other
1047 issues.
1048 - Bug fixed where not all the commands could be disabled via the Help dialog.
1049
1050 ### 0.4.3 (2012-12-27)
1051
1052 - Toolbar button bugfix
1053 - Added an option to disable individual commands via the help dialog
1054
1055 ### 0.4.1, 0.4.2 (2012-12-12)
1056
1057 - Small tweaks of the find feature.
1058 - Bugfix for keyboard handling on non-english keyboard layouts
1059
1060 ### 0.4 (2012-12-09)
1061
1062 - Implemented find with `/` and `n/N`
1063 - Added `ar` and `aR` commands to reload pages in all open tabs.
1064 - Added a preference that enables blurring from any element that has input focus
1065 in the browser on Esc keydown (on by default)
1066 - Fixed bug where markers and help dialog would blow up some of the pages.
1067 - Marker hints are now sorted with respect to the underlying element area.
1068 Elements with larger area get shorter hints
1069 - Added *mail.google.com* to the default black list
1070 - Various bug fixed and improvements.
1071
1072 ### 0.3.2, 0.3.2, 0.3.3 (2012-11-20)
1073
1074 - Hotfixes for the build script to include localization related files and folders
1075
1076 ### 0.3 (2012-11-19)
1077
1078 - Fixed [Desktop](https://addons.mozilla.org/en-us/firefox/addon/desktop/)
1079 extension compatibility problem
1080 - Removed c-b/c-f for now. c-f is a standard search hotkey. Will put c-f back
1081 when proper Vim-like search with / is implemented
1082 - Scrolling with G will now reach the bottom of the page
1083 - Implemented localization, currently there is only Russian localization.
1084 Community is welcome [to contribute your localizations](https://github.com/akhodakivskiy/VimFx/tree/master/extension/locale)!
1085 - Implemented simple smooth scrolling
1086
1087 ### 0.2 (2012-11-05)
1088
1089 - document.designMode='on' is now honored. Will also provide hint markers for
1090 iframes on the page.
1091 - Bug fixed where it would completely reset the toolbar while installing the
1092 toolbar button.
1093 - Bug fixed where it's not possible to change the text in the blacklisting
1094 textbox
1095 - Changed u/d to scroll half a page, added c-f/c-b to scroll full page
1096 - Added tab movement commands: c-J and c-K.
1097 - Invisible markers bug fixed.
1098 - Global hotkey to disable the commands (equal to the toolbar button click):
1099 Alt-Shift V
1100 - ^u and ^d are removed from the command list. ^u is commonly used to show the
1101 page source code
1102 - Opening new tab with now focuses the location bar
1103 - Other small bugs nailed down.
1104
1105 ### 0.1.1 (2012-10-27)
1106
1107 - Just to deal with AMO - no changes
1108
1109 ### 0.1 (2012-10-26)
1110
1111 - Initial Release
Imprint / Impressum