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