- A new `:reader` mode has been added which Tridactyl binds can run on. If you prefer the old mode, it is accessible with `:reader --old`. We've left `gr` bound to the old mode for now but you can update it with `:bind gr reader`
- With `:set tabsort mru`, tab IDs within Tridactyl are now determined by recency of use almost everywhere. This means, e.g. that you can use `2gt` to switch to the second most recently used tab (so identical to `<C-^>`), `3gt` to the third most recently used tab, etc. ([#4595](https://github.com/tridactyl/tridactyl/issues/4595))
-`yq` bind added to display current URL as a QR code, with `q` bind in visual mode. See `:text2qr` for details ([#4728](https://github.com/tridactyl/tridactyl/issues/4728))
-`:set keyboardlayoutforce true` will now force Tridactyl to use, by default, the US keyboard layout for keybinds, even if you're using a different layout. Useful if you use multiple layouts but don't want Tridactyl binds to move, or if you use a layout such as a Cyrillic one where the default binds are difficult to use. Change the forced layout with `:set keyboardlayoutbase` ([#4532](https://github.com/tridactyl/tridactyl/issues/4532))
-`:hint -C [selectors]` added for custom hint modes while including the default selectors ([#4781](https://github.com/tridactyl/tridactyl/issues/4781))
-`;gd` rapid hint mode with discarded tabs added ([#4694](https://github.com/tridactyl/tridactyl/issues/4694))
-`:undo` now has fuzzy matching ([#4344](https://github.com/tridactyl/tridactyl/issues/4344))
-`:source` can now read from the command line and the clipboard with `--strings` and `--clipboard` ([#4821](https://github.com/tridactyl/tridactyl/issues/4821))
-`:tab{grab,push}` now respect `tabopenpos` ([#4867](https://github.com/tridactyl/tridactyl/issues/4867))
-`:jsua` command added to preserve "user action" intent when using browser binds, needed for triggering certain Web Extension APIs such as `browser.sidebarAction.open()`. See `:help jsua` for more information
-`tri.hinting_content.hintElements` function added for advanced usage in `:js` - see [the source](https://github.com/tridactyl/tridactyl/blob/82ac6064cc522b6dc79ed71c63bc3177897e0876/src/content/hinting.ts#L406) for documentation
- Groundwork for multi-browser support added ([#4768](https://github.com/tridactyl/tridactyl/issues/4768))
- All tests now run using GitHub actions ([#4769](https://github.com/tridactyl/tridactyl/issues/4769))
- Docs are now built and hosted [on our website](https://tridactyl.xyz/build/static/docs/modules/_src_excmds_.html) ([#4732](https://github.com/tridactyl/tridactyl/issues/4732))
Thanks to all of our contributors for this release: Oliver Blanthorn, dependabot[bot], R. David Dunphy, Denis Revunov, gholk, satyamk, Pascal Jufer, Gold Holk, glacambre, treapster, Tushar, petoncle, Aditya Prakash Gupta, Amir Hossein, Daniel Caixinha, Dhruva Sambrani, Imran Khan, Michael Joseph Rosenthal, Raffaele Mancuso, Richard Mathieson, Satyam Kumar, Simon, frikdt, josh, monirzadeh, nfd (aka alex), pataquets and themaherdev.
Extra special thanks go to Aditya Prakash Gupta, Amir Hossein, Daniel Caixinha, frikdt, monirzadeh, nfd (aka alex), Pascal Jufer, pataquets, petoncle, Raffaele Mancuso, R. David Dunphy, Richard Mathieson, satyamk, Satyam Kumar, Simon, themaherdev, treapster and Tushar who all contributed for the first time.
-`:back` and `:forward` tab completions with tree style history ([#242](https://github.com/tridactyl/tridactyl/issues/242))
- Local and global marks added. `m[a-zA-Z]` to add a mark, lowercase makes a local mark (unique to that page), uppercase makes a global mark. Global marks are preserved between browser restarts. Press backtick followed by a key to go to a mark. See the eighth page of the `:tutor` for more information ([#604](https://github.com/tridactyl/tridactyl/issues/604))
-`:tgroup*` functionality added for "tab groups" for showing/hiding groups of tabs and switching between them. See `:help tgroupcreate` and `:help tgroupswitch` for usage tips ([#2359](https://github.com/tridactyl/tridactyl/issues/2359))
- Proxy support added with `:proxyadd`, `:set proxy` and `:autocontain` support ([#4036](https://github.com/tridactyl/tridactyl/issues/4036))
-`:tab` completions now shows whether tabs are pinned (P), audible (A), muted (M), or discarded (D) and allows filtering by these characters. `:set statusstylepretty true` to display emojis instead (but always use the same characters for filtering)
- If bookmarking the current URL, `:bmark` will now use the tab's title if one is not provided, even if a folder path is provided ([#4457](https://github.com/tridactyl/tridactyl/issues/4457))
-`:gobble` mode now accepts key combinations as terminators rather than just counts of key presses to accept. This lays the groundwork for making Tridactyl friendlier to more keyboard layouts ([#4440](https://github.com/tridactyl/tridactyl/issues/4440))
-`:set jsurls.[keyword]` added which work like `searchurls` but provide js functions whose return value is called by `{,tab,win}open`. See `:help jsurls` for more information ([#4193](https://github.com/tridactyl/tridactyl/issues/4193))
-`searchurls` now support array slicing with `%s[n:m]` ([#4194](https://github.com/tridactyl/tridactyl/issues/4194))
-`:tabopen --focus-address-bar` added to open a new tab and give focus to the address bar ([#4259](https://github.com/tridactyl/tridactyl/issues/4259))
-`{search,js}url` now support aliases ([#4363](https://github.com/tridactyl/tridactyl/issues/4363))
-`:autocmd` now lets you modify requestHeaders and responseHeaders, for example if you want to change your User-Agent ([#4438](https://github.com/tridactyl/tridactyl/issues/4438))
-`ex.insert_space` command added to insert a space in the command line, bound to `<C-Space>` by default ([#4176](https://github.com/tridactyl/tridactyl/issues/4176))
- Bug fixes
-`visual` mode will now exit erroneously less often ([#4339](https://github.com/tridactyl/tridactyl/issues/4339))
- Hint mode will now open more links in new tabs when requested, rather than falling back to opening things in the current tab ([#4430](https://github.com/tridactyl/tridactyl/issues/4430))
-`:open` should now work with bookmarklets ([#4188](https://github.com/tridactyl/tridactyl/issues/4188))
-`:find` now searches from view and gains some new arguments to control its behaviour ([#4378](https://github.com/tridactyl/tridactyl/issues/4378))
-`:issue` should now prefill its fields correctly ([#3927](https://github.com/tridactyl/tridactyl/issues/3927))
- You can no longer attempt to save files to illegal filenames ([#4126](https://github.com/tridactyl/tridactyl/issues/4126))
- Flickering when opening a new tab with dark mode enabled has been reduced ([#4414](https://github.com/tridactyl/tridactyl/issues/4414))
-`forced-color` CSS support improved ([#4283](https://github.com/tridactyl/tridactyl/issues/4283))
-`:mktridactylrc` doesn't make `:seturl`s into global settings ([#4289](https://github.com/tridactyl/tridactyl/issues/4289))
-`:set tabsort mru` now displays the current tab at the bottom ([#4169](https://github.com/tridactyl/tridactyl/issues/4169))
- Miscellaneous
- More `:bind --mode=browser` bind slots added ([#4275](https://github.com/tridactyl/tridactyl/issues/4275))
- We've added the `arg` argument parsing library so excmd arguments might become more consistent one day :)
- Documentation of `:allowautofocus` and `:unfocus` improved
- Documentation of `:native` for containerised (Snap, Flatpak, etc) installations of Firefox improved ([#4406](https://github.com/tridactyl/tridactyl/issues/4406))
- Documentation for `:autocmd` improved ([#4320](https://github.com/tridactyl/tridactyl/issues/4320))
-`:bind [key]` now returns a valid `:bind` command that you can edit ([#4409](https://github.com/tridactyl/tridactyl/issues/4409))
-`:get [setting]` no longer returns an equals sign so it can be more easily changed into a `:set` ([#4410](https://github.com/tridactyl/tridactyl/issues/4410))
-`:tutor` is now viewable directly on GitHub ([#4381](https://github.com/tridactyl/tridactyl/issues/4381))
Thanks to all of our contributors for this release: Oliver Blanthorn, dependabot[bot], gholk, ivcz, pvs, Mariusz Kaczmarczyk, Michael Joseph Rosenthal, Denis Revunov, Gold Holk, Janek, Fox Kiester, Nicolas Ganz, Babil G. Sarwar, David Scotson, Eric, Eugene, Igor, Luka Markušić, Nicolas, Robin Ekman, badcold, fluem and mariuszdb.
Extra special thanks go to badcold, Denis Revunov, Eric, Fox Kiester, gholk, Gold Holk, Igor, Janek, Luka Markušić, mariuszdb, Michael Joseph Rosenthal, Nicolas, Nicolas Ganz and Robin Ekman who all contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
- Tridactyl will prompt you if you try to leave a page while `:editor` is running ([#3915](https://github.com/tridactyl/tridactyl/issues/3915))
- Tridactyl pages will not flash white if your system theme is set to dark mode ([#2510](https://github.com/tridactyl/tridactyl/issues/2510))
-`:goto` added to jump to a heading on a page, see `:help gotoselector` for configuration ([#4116](https://github.com/tridactyl/tridactyl/issues/4116))
-`:wintitle` command added to add a prefix to the current window title ([#4049](https://github.com/tridactyl/tridactyl/issues/4049))
- Bug fixes
- The mode indicator should no longer show up on printed pages ([#453](https://github.com/tridactyl/tridactyl/issues/453))
- The changelog is more readable on dark themes ([#4005](https://github.com/tridactyl/tridactyl/issues/4005))
-`:tabpush` will no longer show the current window ([#4114](https://github.com/tridactyl/tridactyl/issues/4114))
- nor will `:tabgrab` ([#3283](https://github.com/tridactyl/tridactyl/issues/3283))
-`:autocontain` will now pick the longest regex that matches a container if multiple filters match ([#3545](https://github.com/tridactyl/tridactyl/issues/3545))
-`:elementunhide` works again ([#4069](https://github.com/tridactyl/tridactyl/issues/4069))
- The mode indicator can reappear after leaving a mode in which it was disabled with `:set modeindicatormodes.[mode] false` ([#2690](https://github.com/tridactyl/tridactyl/issues/2690))
- The `:editor` icon should now be correctly removed when finished ([#3909](https://github.com/tridactyl/tridactyl/issues/3909))
-`:set newtab about:newtab` will no longer cause two tabs to be opened ([#3656](https://github.com/tridactyl/tridactyl/issues/3656))
- Miscellaneous
- The hacker news comment toggler in the exemplar RC file has been fixed ([#4124](https://github.com/tridactyl/tridactyl/issues/4124))
- Warnings added to the new tab page about upcoming permission requests
Thanks to all of our contributors for this release: Oliver Blanthorn, dependabot[bot], pvs, David Scotson, Calvin T. Nesbitt, Colin Caine, Gerard Bosch, Icelk, Liam Hupfer, Mo, Mo Hijazi and glacambre
Extra special thanks go to Calvin T. Nesbitt, David Scotson, Gerard Bosch, Icelk, Liam Hupfer, Mo and Mo Hijazi who all contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
- A `superignore` setting has been added which nearly totally disables Tridactyl, per page. Use it with `:seturl` only. If you break Tridactyl with it, remember that you can always use the `tri` keyword in the address bar to execute ex-commands ([#3497](https://github.com/tridactyl/tridactyl/issues/3497))
-`:hint -V` hint mode added, bound to `;V`, which adds hints to all matching elements on the page, including ones outside the viewport ([#3534](https://github.com/tridactyl/tridactyl/issues/3534))
-`:set completionfuzziness [0-1]` added to control strictness of completion matches ([#3556](https://github.com/tridactyl/tridactyl/issues/3556))
- The cursor is no longer shown in no mouse mode ([#3891](https://github.com/tridactyl/tridactyl/issues/3891))
- For our own `:find` mode, there is now a `findhighlighttimeout` setting (in milliseconds) which allows you to control how long text stays highlighted after a search ([#3854](https://github.com/tridactyl/tridactyl/issues/3854))
- Tabs may now be renamed with `:tabrename` ([#3577](https://github.com/tridactyl/tridactyl/issues/3577))
-`:colourscheme auto` theme added which follows your system's dark/light mode setting ([#3923](https://github.com/tridactyl/tridactyl/issues/3923))
-`:setmode [mode] allowautofocus [true|false]` added, currently only for the `allowautofocus` setting, to control the setting per-mode ([#3740](https://github.com/tridactyl/tridactyl/issues/3740))
-`:open` will now always run in its own tab ([#3583](https://github.com/tridactyl/tridactyl/issues/3583))
- Hint modes now accept a much wider array of arguments ([#3534](https://github.com/tridactyl/tridactyl/issues/3534))
-`:source --url` now works on data URIs ([#3540](https://github.com/tridactyl/tridactyl/issues/3540))
-`:guiset` now gives a more useful error on reading a malformed userChrome.css ([#3541](https://github.com/tridactyl/tridactyl/issues/3541))
-`:mpvsafe` now leaves MPV running after Firefox exits on all platforms ([#3538](https://github.com/tridactyl/tridactyl/issues/3538))
-`:viewcontainers` uses `:jsonview` internally which should fix how it is displayed from Tridactyl pages ([#3539](https://github.com/tridactyl/tridactyl/issues/3539))
-`:containerdelete` no longer closes all normal tabs if an invalid container is given ([#3536](https://github.com/tridactyl/tridactyl/issues/3536))
-`:set auconcreatecontainer fales` is now respected ([#3537](https://github.com/tridactyl/tridactyl/issues/3537))
- GitHub and other SVG favicons should appear in the tab completions ([#3892](https://github.com/tridactyl/tridactyl/issues/3892))
-`:editor` now correctly returns a value ([#3800](https://github.com/tridactyl/tridactyl/issues/3800))
- We've switched from webpack to esbuild which has reduced dev-build times from 40 seconds to about 1 second ([#3645](https://github.com/tridactyl/tridactyl/issues/3645))
- Tridactyl can now be built from ~5MB of source, down from ~100MB ([#3632](https://github.com/tridactyl/tridactyl/issues/3632))
- We've switched from ramda to rambda which is a bit faster ([#3628](https://github.com/tridactyl/tridactyl/issues/3628))
- Hint mode is a bit faster ([#3582](https://github.com/tridactyl/tridactyl/issues/3582))
- Dev builds of Tridactyl now open a new tab page when Tridactyl code is updated ([#3564](https://github.com/tridactyl/tridactyl/issues/3564))
- We're now using `firenvim`s web-editor library which means that CodeMirror, Monaco and other in-browser code editors now work with `:editor` ([#3851](https://github.com/tridactyl/tridactyl/issues/3851))
- Native messenger bumped to version 0.3.6 from 0.3.4; fixes .tridactylrc search paths on windows and saving files to directories without specifying a filename
Thanks to all of our contributors for this release: dependabot-preview[bot], Oliver Blanthorn, dependabot[bot], Vincent Tavernier, Rummskartoffel, Dhruva Sambrani, karizma, Jay Kamat, Aaron Rancsik, Simon H Moore, glacambre, ivcz, Caleb Maclennan, Eugene, Ivan Oleynikov, Søren Knudsen, meep, mozbug and slmb3.
Extra special thanks go to Aaron Rancsik, Eugene, Ivan Oleynikov, ivcz, karizma, meep, slmb3, Søren Knudsen and Vincent Tavernier who all contributed for the first time.
-`:saveas` has new `--overwrite` and `--cleanup` flags ([#3362](https://github.com/tridactyl/tridactyl/issues/3362))
-`:mousemode` added to revert `:nomousemode` ([#3442](https://github.com/tridactyl/tridactyl/issues/3442))
-`:tabopen -w` added, which waits for the page to load before returning. Useful in `:composite` with e.g. `:composite tabopen -b -w news.bbc.co.uk ; tabnext` ([#3396](https://github.com/tridactyl/tridactyl/issues/3396))
-`gi` now supports "textbox" ARIA roles - i.e. it works on Twitter now ([#3459](https://github.com/tridactyl/tridactyl/issues/3459))
-`w` in visual mode now selects the first character of the next word ([#3455](https://github.com/tridactyl/tridactyl/issues/3455))
- Native messenger doesn't get stuck in an infinite loop on Windows for non-Firefox Firefox-derivate browsers (e.g. Waterfox) ([#3443](https://github.com/tridactyl/tridactyl/issues/3443))
-`:native` now behaves better when reading non-existent files ([#3418](https://github.com/tridactyl/tridactyl/issues/3418))
-`:nativeupdate` now works on Windows and elsewhere ([#3404](https://github.com/tridactyl/tridactyl/issues/3404))
- CI linting now works ([#3477](https://github.com/tridactyl/tridactyl/issues/3477))
Thanks to all of our contributors for this release: dependabot-preview[bot], Oliver Blanthorn, Dhruva Sambrani, Rummskartoffel, Jez Cope, Babil G. Sarwar, Babil Golam Sarwar, Hosein Naghdbishi, Laura, William, WorldCodeCentral and fluem.
Extra special thanks go to Babil G. Sarwar, Dhruva Sambrani, Hosein Naghdbishi, Jez Cope, Laura and William who all contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
-`:tabaudio` tab with `ga` default bind takes you to the window and tab which is currently playing audio ([#3184](https://github.com/tridactyl/tridactyl/issues/3184))
-`:urlincrement` binds now accept numeric prefixes, e.g. `10<C-a>` increments the URL by 10 ([#3145](https://github.com/tridactyl/tridactyl/issues/3145))
-`:seturl` now checks that you have entered a valid RegEx ([#3134](https://github.com/tridactyl/tridactyl/issues/3134))
-`:colours` now accepts a `--url` option to load a theme from the internet with no need for `:native` ([#3148](https://github.com/tridactyl/tridactyl/issues/3148))
-`:reloaddead` command added to force all tabs which Tridactyl is not running in to load. Useful for making tab switching more pleasurable ([#3260](https://github.com/tridactyl/tridactyl/issues/3260))
-`:mkt --clipboard` added to put a Tridactyl RC file in your clipboard. Use with e.g. GitHub Gist and `:source --url` to avoid needing `:native` installed
- Custom themes no longer require special classnames - see `:help colours` to see current requirements (there are essentially none) ([#3288](https://github.com/tridactyl/tridactyl/issues/3288))
-`:set hintautoselect [true|false]` added to determine whether hints are automatically followed if there is only one ([#3097](https://github.com/tridactyl/tridactyl/issues/3097))
-`:set logging.autocmds debug|info|warning|error` added to make debugging autocmds easier ([#3381](https://github.com/tridactyl/tridactyl/issues/3381))
-`:set tabclosepinned true|false` added to prevent `d` from closing pinned tabs ([#3363](https://github.com/tridactyl/tridactyl/issues/3363))
-`:tabsort` command added to sort tabs according to titles, URLs or container ([#3364](https://github.com/tridactyl/tridactyl/issues/3364))
-`:winopen -c [container]` added for opening containers in new windows ([#3326](https://github.com/tridactyl/tridactyl/issues/3326))
-`:set completions.TabAll.autoselect true|false` added to allow spaces to be used when filtering ([#1835](https://github.com/tridactyl/tridactyl/issues/1835))
-`:scrollpage` binds now accept counts ([#3319](https://github.com/tridactyl/tridactyl/issues/3319))
- The native messenger is now written in `Nim` and is much faster (especially noticeable on `:editor`). You may need to run `:nativeupate` to update it - the latest `:native` version is `0.2.5`
- We have removed `pyeval` support from this version - you are very unlikely to have used this since it was an internal Tridactyl command. `:exclaim` is unaffected.
-`:taball` now internally uses `:tab` ([#3262](https://github.com/tridactyl/tridactyl/issues/3262))
- We no longer load all default themes into every tab ([#3288](https://github.com/tridactyl/tridactyl/issues/3288))
-`<C-c>` and `<C-a>` binds have been removed from the command line as they were widely disliked ([#3229](https://github.com/tridactyl/tridactyl/issues/3229))
-`:colours shydactyl` now uses more CSS variables ([#3390](https://github.com/tridactyl/tridactyl/issues/3390))
- Type checking has been tightened a little ([#3386](https://github.com/tridactyl/tridactyl/issues/3386))
- Privacy policy added (summary: we don't collect anything outside of IP logs on our servers) ([#3375](https://github.com/tridactyl/tridactyl/issues/3375))
-`:native` is now cached for a few milliseconds to speed up repeated version checks ([#3366](https://github.com/tridactyl/tridactyl/issues/3366))
Thanks to all of our contributors for this release: dependabot-preview[bot], Oliver Blanthorn, Rummskartoffel, fluem, Benoit de Chezelles, Bruno Garcia, Jay Kamat, Babil Golam Sarwar, Elliott Shugerman, Annie Zhang, Tiago Epifânio, glacambre and yellowmoneybank.
Extra special thanks go to Annie Zhang, Benoit de Chezelles, Bruno Garcia, Elliott Shugerman, Jay Kamat, Tiago Epifânio and yellowmoneybank who all contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
-`;Y` image-to-clipboard hint mode ([#3085](https://github.com/tridactyl/tridactyl/issues/3085))
-`:viewconfig` can now accept a dot-delimited path like `:set`, e.g. `:viewconfig completions.Tab`
-`;x` and `;X` "emergency" hint modes added. They use `xdotool` and `:native` to move the mouse and click on the hinted element - if you don't have `xdotool` or `:native` installed they won't work. ([#3077](https://github.com/tridactyl/tridactyl/issues/3077))
- Duplicates are now skipped in command history ([#3042](https://github.com/tridactyl/tridactyl/issues/3042))
- Bug fixes
-`:viewconfig` now gets completions and `:viewconfig --{user,default}` now accept a key to examine ([#3098](https://github.com/tridactyl/tridactyl/issues/3098))
-`#` comments are now skipped in RC files ([#3100](https://github.com/tridactyl/tridactyl/issues/3100))
-`:bind --mode=browser` now works with binds involving `Space` ([#3101](https://github.com/tridactyl/tridactyl/issues/3101))
-`<C-Enter>` on the command line no longer inserts a space before its invocation ([#3089](https://github.com/tridactyl/tridactyl/issues/3089))
- All "normal" clipboard operations now use the newer Clipboard API, fixing various bugs ([#3078](https://github.com/tridactyl/tridactyl/issues/3078))
- web.whatsapp.com now has a special default hint mode so that hints actually work ([#1567](https://github.com/tridactyl/tridactyl/issues/1567))
-`:nativeintall` can now run on POSIX-y systems without needing `bash` ([#3020](https://github.com/tridactyl/tridactyl/issues/3020))
-`;#` hint mode now throws no errors if no anchors are found ([#2964](https://github.com/tridactyl/tridactyl/issues/2964))
- Miscellaneous
- Fix linter errors on src/excmds.ts by switching to `no-unused-vars-experimental` ([#3111](https://github.com/tridactyl/tridactyl/issues/3111))
Thanks to all of our contributors for this release: dependabot-preview[bot], Oliver Blanthorn, Rummskartoffel and Timothy Robert Bednarzyk.
Extra special thanks go to Timothy Robert Bednarzyk who contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
-`g!` jumbles all text on the page, inspired by [this letter](https://www.newscientist.com/letter/mg16221887-600-reibadailty/) ([#2913](https://github.com/tridactyl/tridactyl/issues/2913))
-`:set modeindicatormodes.[mode] true|false` controls whether the mode indicator should show in a specific mode ([#2690](https://github.com/tridactyl/tridactyl/issues/2690))
- Whether a completion autoselects the closest match is now configurable with `:set completions.[CompletionSource].autoselect true|false`. The completion sources are the ones Tridactyl uses internally - use `:get completions` to see the list ([#2901](https://github.com/tridactyl/tridactyl/issues/2901))
-`:bmarks` now autoselects its completion by default. `:set completions.Bmark.autoselect false` to disable ([#2863](https://github.com/tridactyl/tridactyl/issues/2863))
-`:undo tab_strict` only restores tabs in the current window ([#2883](https://github.com/tridactyl/tridactyl/issues/2883))
-`:js` now accepts a flag, `-d`, to specify an EOF character which allows space-separated arguments to be given to it, stored in the array `JS_ARGS` ([#2859](https://github.com/tridactyl/tridactyl/issues/2859))
-`UriChange` event has been added for `:autocmd`, for use on modern web applications which update their URI without navigating to a new page ([#3003](https://github.com/tridactyl/tridactyl/issues/3003))
-`;K` hint mode added to reversibly hide elements from the page; hidden elements can be restored with `:elementunhide` ([#2934](https://github.com/tridactyl/tridactyl/issues/2934))
-`:undo` and `:rssexec` completions now autoselect the closest match, as was always intended ([#2901](https://github.com/tridactyl/tridactyl/issues/2901))
-`:credits` no longer disappears before showing all authors ([#665](https://github.com/tridactyl/tridactyl/issues/665))
-`:js -r` now works on Windows ([#3017](https://github.com/tridactyl/tridactyl/issues/3017))
-`:hint` now can operate on `HTMLDetailsElements` ([#2984](https://github.com/tridactyl/tridactyl/issues/2984))
-`:help` and `:tutor` now follow the Tridactyl theme ([#2895](https://github.com/tridactyl/tridactyl/issues/2895))
-`nativeinstall` on Windows now installs the native messenger corresponding to your version of Tridactyl, meaning that we can finally make breaking changes to the native messenger! ([#3027](https://github.com/tridactyl/tridactyl/issues/3027))
-`git hooks` no longer prevent committing from Windows ([#3033](https://github.com/tridactyl/tridactyl/issues/3033))
Thanks to all of our contributors for this release: dependabot-preview[bot], Oliver Blanthorn, fluem, Rummskartoffel, R Primus, Morgan Connolly, Sayan, Espen Henriksen, Mariusz Kaczmarczyk, glacambre and trixxo.
Extra special thanks go to Espen Henriksen, fluem, Mariusz Kaczmarczyk, R Primus, Rummskartoffel, Sayan and trixxo who all contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
-`:set escapehatchsidebarhack false` stops `<C-,>` from closing the sidebar (usually Tree Style Tab) at the expense of not being able to grab focus back from the address bar ([#2775](https://github.com/tridactyl/tridactyl/issues/2775))
-`:autocmd` now provides magic variables for many events (so, e.g. you can tell an ex command which tab it should close). See `:help autocmd` and scroll down to the `...excmd` parameter for more information ([#2814](https://github.com/tridactyl/tridactyl/issues/2814))
-`:zoom` now accepts a tab ID to tell it which tab to zoom ([#2809](https://github.com/tridactyl/tridactyl/issues/2809))
- Bug fixes
- Normal mode now waits for user configuration to load before accepting any keypresses ([#2839](https://github.com/tridactyl/tridactyl/issues/2839))
- Browser-wide maps now show up in `:bind` completions
Thanks to all of our contributors for this release: dependabot-preview[bot], Oliver Blanthorn and Simon H Moore
Extra special thanks go to Simon H Moore who contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
- Tridactyl should now display the right version number on the new tab page and elsewhere ([#2262](https://github.com/tridactyl/tridactyl/issues/2262))
- RC files will again be sourced at startup ([#2726](https://github.com/tridactyl/tridactyl/issues/2726))
- ex-command logs now use the right name: `excmd` ([#2727](https://github.com/tridactyl/tridactyl/issues/2727))
- the no-new-tab build no longer shows our new tab page with `:tabopen` ([#1571](https://github.com/tridactyl/tridactyl/issues/1571))
-`<C-[>` now takes you to normal mode in more modes ([#2723](https://github.com/tridactyl/tridactyl/issues/2723))
Thanks to all of our contributors for this release: dependabot-preview[bot], Oliver Blanthorn and xi.
Extra special thanks go to xi who contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
-`<C-6>` and `<CS-6>` are now bound to `:tab #` browser-wide, except on Windows, where the previous behaviour remains, with a new `<A-6>` bind instead.
- Autocommands now support `WebRequest` events - see `:help autocmd` for more details. Particularly useful for e.g. redirecting sites.
- Callback hintmode on `hint -F` added for running arbitrary JS on an element you select. ([#2552](https://github.com/tridactyl/tridactyl/issues/2552))
-`:blacklistdelete` alias added as the inverse of `:blacklistadd`
- Hints on elements due to JavaScript `onclick` events now appear grey. If an element has a grey hint and a normal hint, the normal hint is probably the right one. ([#2259](https://github.com/tridactyl/tridactyl/issues/2259))
- Hints can no longer overlap. ([#2534](https://github.com/tridactyl/tridactyl/issues/2534))
-`:winmerge` ex-command added to merge windows ([#404](https://github.com/tridactyl/tridactyl/issues/404))
-`:tabgrab` and `tabpush` ex-commands added to move tabs between windows ([#2540](https://github.com/tridactyl/tridactyl/issues/2540))
-`:ex.copy_completion` ex-mode command added to copy the currently selected completion, bound to `<C-o>yy` while the command line is open
-`:tabopen` now never puts focus in the address bar ([#2490](https://github.com/tridactyl/tridactyl/issues/2490))
- The little pop-up telling you the address of a link you are hovering over is now hidden when the command line is opened ([#1896](https://github.com/tridactyl/tridactyl/issues/1896))
-`:tabopen -c firefox-default` opens a new tab in the default container (handy with `set tabopencontaineraware true`)
-`<S-Delete>` closes the tab corresponding to the highlighted completion in the commandline ([#2617](https://github.com/tridactyl/tridactyl/issues/2617))
-`<C-Enter>` executes the highlighted completion and keeps the window open (useful for, e.g. `:winopen` or `:tabopen -b`)
-`:set downloadsskiphistory true` prevents downloads via Tridactyl (e.g. `;s` hint mode) from being stored in your download history
- NB: Tridactyl must be allowed to run in private mode for this to work
-`:autocontain -s [url] [container]` added with a bug fix - `:autocontain` with no flags is deprecated ([#2629](https://github.com/tridactyl/tridactyl/issues/2629))
Thanks to all of our contributors for this release: Oliver Blanthorn, dependabot-preview[bot], Michael Kaufman, MatiasStorm, glacambre, Dranaxel, Christian Heinrich, Csaba Henk, Morgan Connolly, mozbug, Aurélien Ooms, David Ludovino, Imran Khan, Jakub Okoński, Josehkn, Luke Granger-Brown, Makkonan, and dependabot[bot].
Extra special thanks go to Aurélien Ooms, Christian Heinrich, Csaba Henk, David Ludovino, Imran Khan, Josehkn, Luke Granger-Brown, Makkonan, Michael Kaufman and Morgan Connolly who all contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
- All of our scrolling commands (e.g. j/k) now scroll the focused element ([#2417](https://github.com/tridactyl/tridactyl/issues/2417))
- The bind focus hint mode, `;;`, now hints more selectors to make it easier to select an element to scroll
-`:recontain` command to change the container of the current tab added
- See `:help recontain` before use as it has potentially surprising privacy implications
- Bug fixes
- The commandline history works again, but for real this time ([#2236](https://github.com/tridactyl/tridactyl/issues/2236))
-`g;` works again ([#2407](https://github.com/tridactyl/tridactyl/issues/2407))
- We no longer enter insert mode on readonly elements ([#2389](https://github.com/tridactyl/tridactyl/issues/2389))
-`mkt` now works even if you have used `setnull` or `unbind` ([#2415](https://github.com/tridactyl/tridactyl/issues/2415))
- We ensure nothing is written to local storage in private windows ([#2423](https://github.com/tridactyl/tridactyl/issues/2423))
- (very little was being written - namely the last ex string you executed and the tab ID of the last input you used; both of these would be overwritten regularly so the danger is low)
- this does mean that `repeat` will no longer function in private windows
-`winopen -private [url]` is no longer stored for `repeat` ([#2424](https://github.com/tridactyl/tridactyl/issues/2424))
- We now accurately attach hints to more elements ([#487](https://github.com/tridactyl/tridactyl/issues/487))
- Miscellaneous
- Our config updater no longer uses a while loop which could spin forever in certain circumstances ([#2349](https://github.com/tridactyl/tridactyl/issues/2349))
- Our E2E tests fail less often (by retrying a few times) ([#2387](https://github.com/tridactyl/tridactyl/issues/2387))
- There is now less duplication between lib/state and content/state_content ([#2422](https://github.com/tridactyl/tridactyl/issues/2422))
- Our scrolling code is now a little easier to read ([#2384](https://github.com/tridactyl/tridactyl/issues/2384))
Thanks to all of our contributors for this release: Oliver Blanthorn, dependabot-preview[bot], Matias Ammentorp Storm, MatiasStorm, Dranaxel, glacambre, Alexandre, Robert Günzler and Tanath.
Extra special thanks go to Alexandre, Dranaxel, Matias Ammentorp Storm, MatiasStorm and Tanath who all contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
- "passthrough" mode has been added - press `<C-v>` in normal mode to send the next key combination to the page ([#57](https://github.com/tridactyl/tridactyl/issues/57))
- similarly, `<C-o>` in ignore mode will execute a single key sequence in normal mode
- this is accomplished with a new mode called `nmode` which executes a number of key sequences in a specified mode and then executes an ex-command. See `:help nmode` for more details.
-`o` in visual mode moves the (invisible) cursor to the other end of the selection
-`:tabqueue` allows you to open a series of tabs, opening the next one in the background every time one is viewed. See `:help tabqueue` for suggested usage.
-`:set hintshift true` (which only works with non-vimperator hint modes) tries to predict which links you are pressing in rapid hint modes and allows you to repeatedly press the same key to open the next link once it has worked it out. See `:help -s hintshift` for more details.
- Bug fixes
- Tridactyl now uses less energy ([#2329](https://github.com/tridactyl/tridactyl/issues/2329))
- Commandline history is more reliable, but for real this time ([#2236](https://github.com/tridactyl/tridactyl/issues/2236))
-`:mkt` now works even if no `tridactylrc` exists ([#2124](https://github.com/tridactyl/tridactyl/issues/2124))
- Nested subconfigs with unbinds no longer annihilate ([#2338](https://github.com/tridactyl/tridactyl/issues/2338))
-`:get` now displays the correct value according to subconfigs ([#2352](https://github.com/tridactyl/tridactyl/issues/2352))
- Miscellaneous
- Our locks library has been removed since it was causing so many issues
- The commandline completions now call `config.get` much less often ([#2353](https://github.com/tridactyl/tridactyl/issues/2353))
Thanks to all of our contributors for this release: Oliver Blanthorn, Torsten Schmits, dependabot-preview[bot], glacambre and Simon Lydell.
Extra special thanks go to Simon Lydell and Torsten Schmits who were both first-time contributors.
Last, but not least - thank you to everyone who reported issues.
- Enter it by selecting text: e.g. with the mouse, with text-selection `;h` hint mode, by searching with `/`, or by using Firefox's "caret" mode on `F7`.
- Yank selected text with `y`
- Search for selected text with `s` and `S`
- Select text hint mode added, bound to `;h` by default
-`apropos` command which searches through help text - very handy for finding settings or commands you didn't know about ([#1980](https://github.com/tridactyl/tridactyl/issues/1980))
- RC files can have escaped newlines with backslashes ([#2003](https://github.com/tridactyl/tridactyl/issues/2003))
-`:setnull` ex-cmd added to delete a default setting, e.g. `setnull searchurls.github` to remove the `github` searchurl
- Tab completions now list all tabs starting with a numeric filter ([#2010](https://github.com/tridactyl/tridactyl/issues/2010))
- The default `editorcmd` is now more resilient to user mappings and starts with the correct column ([#2237](https://github.com/tridactyl/tridactyl/issues/2237))
- Vimperator-style hinting can now be overridden with a custom filtering function ([#2212](https://github.com/tridactyl/tridactyl/issues/2212))
-`set historyresults [n]` now shows you `n` results in tabopen ([#2159](https://github.com/tridactyl/tridactyl/issues/2159))
- Smooth scroll is now much smoother ([#2016](https://github.com/tridactyl/tridactyl/issues/2016))
- Counts work with scrollline ([#1984](https://github.com/tridactyl/tridactyl/issues/1984))
- Reading RC files might now be a bit more reliable ([#1983](https://github.com/tridactyl/tridactyl/issues/1983))
-`containerupdate` was broken ([#2294](https://github.com/tridactyl/tridactyl/issues/2294))
- Performance improvement to `config`: we no longer save the `config` every time we load it ([#2272](https://github.com/tridactyl/tridactyl/issues/2272))
- The mode indicator now displays "insert" mode more reliably ([#2232](https://github.com/tridactyl/tridactyl/issues/2232))
- Key events are now reset on mode change ([#1769](https://github.com/tridactyl/tridactyl/issues/1769))
-`hint -qpipe` now actually works ([#2224](https://github.com/tridactyl/tridactyl/issues/2224))
- Commandline history is more reliable ([#2236](https://github.com/tridactyl/tridactyl/issues/2236))
- Hinting is now a bit faster ([#2215](https://github.com/tridactyl/tridactyl/issues/2215))
-`mktridactylrc` now works for nested keys ([#2211](https://github.com/tridactyl/tridactyl/issues/2211))
-`repeat` now works more reliably ([#1538](https://github.com/tridactyl/tridactyl/issues/1538))
- We have a `locks` library which we are using to synchronise some state between the content and background scripts. We'd like to move `config` to using this approach but have some bugs to iron out first ([#2137](https://github.com/tridactyl/tridactyl/issues/2137))
- Our pre-commit hook is finally fixed! ([#2231](https://github.com/tridactyl/tridactyl/issues/2231))
Thanks to all of our contributors for this release: Oliver Blanthorn, dependabot-preview[bot], mozbug, Jakub Okoński, Saul Reynolds-Haertle, glacambre, Ingo Karkat, Caleb Maclennan, Colin Caine, Spindlyskit, josh, user753 and yuri.
Extra special thanks go to Caleb Maclennan, Ingo Karkat, josh, mozbug, Spindlyskit, user753 and yuri who were all first time contributors. I think we can afford to thank mozbug, aka mozbugbox, in particular for opening a whopping _fourteen_ pull requests, earning a well-deserved 9th place on `:credits`.
Last, but not least - thank you to everyone who reported issues.
- Automatically revert any changes made which could have been made by `fixamo` to the `restricedDomains` and `block_mozAddonManager` settings in `user.js` ([#1800](https://github.com/tridactyl/tridactyl/issues/1800))
- New features
-`hint -qy` now merges yanked hints ([#1945](https://github.com/tridactyl/tridactyl/issues/1945))
- Known issues: it ignores all other flags
-`set autocontainmode strict|relaxed` controls whether links opened in the current tab are forced to enter the "correct" container in a new tab ([#1902](https://github.com/tridactyl/tridactyl/issues/1902))
-`autocontain -u` added, allowing you to match on an entire URL ([#1901](https://github.com/tridactyl/tridactyl/issues/1901))
- New quickmarks with multiple URLs no longer have `[object Object]` appended to them. If any of your quickmarks are currently affected, re-adding them with `:quickmark [key] [url1] [url2] [url3] ...` should fix them.
- Readme now has sections for different installation steps ([#1947](https://github.com/tridactyl/tridactyl/issues/1947))
- Under the bonnet
-`browserBg` is now properly typed ([#1949](https://github.com/tridactyl/tridactyl/issues/1949))
- We have switched to `ts-loader` ([#1914](https://github.com/tridactyl/tridactyl/issues/1914))
- TypeScript is now a bit stricter ([#1915](https://github.com/tridactyl/tridactyl/issues/1915))
- Tests which run in `node` now use node types ([#1913](https://github.com/tridactyl/tridactyl/issues/1913))
Thanks to all of our contributors for this release: Oliver Blanthorn, dependabot-preview[bot], arcnmx, Jakub Okoński, notJerl, Dylan Lloyd, Kelly Stannard and SRGOM.
Extra special thanks go to Dylan Lloyd, Kelly Stannard and SRGOM who contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
- Source RC from an arbitrary URL ([#1866](https://github.com/tridactyl/tridactyl/issues/1866))
-`extoption` excmd to open the options page of other addons ([#1660](https://github.com/tridactyl/tridactyl/issues/1660)) ([#1851](https://github.com/tridactyl/tridactyl/issues/1851))
- Hint fancy webcomponents ([#1853](https://github.com/tridactyl/tridactyl/issues/1853))
- Add `;g{f,F}` default binds for `hint -q` and `hint -qb`
Thanks to all of our contributors for this release: Oliver Blanthorn, dependabot-preview[bot], rektrex, Colin Caine, glacambre, ELLIOTTCABLE, avalonv, pvs, Chris, Daniel Schmid
Extra special thanks go to avalonv, Chris, Daniel Schmid, ELLIOTTCABLE, pvs, rektrex who have contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
- Bookmarks are now listed in `*open` completions. `set bmarkweight` to change how prominently they are listed. ([#214](https://github.com/tridactyl/tridactyl/issues/214))
- Bug fixes
- Completions are now deselected if the string is shortened ([#1696](https://github.com/tridactyl/tridactyl/issues/1696))
- perf.ts: remove illegal string which was causing spurious errors
- Duplicate bookmarks are no longer listed in `bmark` completions
- Miscellaneous
- Remove `fixamo` at request of Firefox Security team ([#1773](https://github.com/tridactyl/tridactyl/issues/1773))
- Add missing ignore mode shortcut to tutorial
- Disable guiset navbar none as it had stopped working ([#1728](https://github.com/tridactyl/tridactyl/issues/1728))
Thanks to all of our contributors for this release: Oliver Blanthorn, dependabot-preview[bot], Colin Caine, GiulioCentorame, Jakub Okoński and glacambre.
Extra special thanks go to GiulioCentorame and Jakub Okoński who both contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
- New setting `urlparenttrailingslash` which allows you to choose whether `urlparent` adds a trailing slash or not ([#1565](https://github.com/tridactyl/tridactyl/issues/1565))
-`keyfeed` command for feeding fake keys to Tridactyl (not the web page) added
- mostly a precursor to `map` but `keyfeed g?g?g?g?g?g?g?g?g?g?g?g?g?` now for a good time
- User-definable modes added: just do `bind --mode=[newmode] ...` and then `mode [newmode]`
- Added `tabm` and `tabo` ex-aliases (hat-tip to [this blog](https://magai.hateblo.jp/entry/2018/09/25/142348) for pointing out that they were missing)
-`guiset` now uses `setpref` to flip the preference which will soon be needed to read userChrome ([#1572](https://github.com/tridactyl/tridactyl/issues/1572))
-`shellescape` command added for use with `composite` ([#1485](https://github.com/tridactyl/tridactyl/issues/1485))
- Hint mode now has user-configurable binds (e.g. `bind --mode=hint <C-[> hint.reset`) ([#304](https://github.com/tridactyl/tridactyl/issues/304))
-`blacklistkeys` setting to specify which keys to prevent pages from ever stealing from Firefox ([#1185](https://github.com/tridactyl/tridactyl/issues/1185))
- Beta builds now have versions that look more like the filenames served by our build bot and the version shown on `about:addons` ([#930](https://github.com/tridactyl/tridactyl/issues/930))
- Websites can no longer feed Tridactyl fake key events (see the [security advisory](https://github.com/tridactyl/tridactyl/security/advisories/GHSA-7qr7-93pf-hr8f))
- It should be much harder for the command line to swap the order of keys pressed, especially `<Space>` ([#1655](https://github.com/tridactyl/tridactyl/issues/1655))
- We've switched from `npm` to `yarn` as we got fed up with `npm` fighting with itself over package-lock.json. Hopefully this will make development a little less painful.
-`:native{install,update}` will now install the version of the native messenger that existed at the same time as your version of Tridactyl
- Added Mithril (currently unused) to make redevelopment of the commandline frame easier
Thanks to all of our contributors for this release: Oliver Blanthorn, Colin Caine, glacambre, Anton Vilhelm Ásgeirsson, dependabot-preview[bot], Vladimír Marek, Saul Reynolds-Haertle, Vince Au, Russell Cheung, WorldCodeCentral, reversebreak
Extra special thanks go to dependabot-preview[bot], reversebreak, Russell Cheung, Vince Au, Vladimír Marek
Last, but not least - thank you to everyone who reported issues.
- Numeric prefixes to binds are now appended to the end of the command, e.g. `1gt` goes to the first tab.
- This isn't strictly a new feature as we had it about 18 months ago, but it fell down a plot hole.
- We now have special builds that don't have the new tab page - see the new tab page for how to install them.
- The internal `getclip` function has now been exposed as an ex-command by popular demand, for use with, e.g. `bind --mode=insert <C-v> composite getclip | text.insert_text`.
- You can now select hints using the arrow keys if you are so inclined
- You can now execute ex-commands from the "awesome bar" (i.e. Firefox's URL bar) by prefixing them with `tri`
- Bug fixes
- A few weird bugs fixed on NetBSD ([#1562](https://github.com/tridactyl/tridactyl/issues/1562))
-`gi` should now work on our help pages
-`repeat` now waits for the execution of each command to finish before starting another one
-`set hintnames uniform` won't give you a spurious error any more
- Under the bonnet
- Added end-to-end testing for a few functions using Selenium and CircleCI
- Calls to the internal getProfile() used for a variety of native messaging functions are now cached to improve performance
Thanks to all of our contributors for this release: Oliver Blanthorn, glacambre, dependabot[bot], Marvin Ewald, Saul Reynolds-Haertle, Colin Caine, PHO, Evgeny Kurnevsky, and Jan Hruban.
Extra special thanks go to Evgeny Kurnevsky, Jan Hruban, Marvin Ewald, and PHO who all contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
-`:editor` now listens to the exit code of your editor so, e.g. `:cq` in Vim should prevent the text field from being changed; it also can provide line and column information - see `:help editor` for more details
- A new `:issue` excmd opens a new issue on our GitHub page with your system information pre-filled
- Bug fixes
-`DocStart``autocmds` in the exemplar .tridactylrc will no longer run under `:viewconfig`
-`updatecheck` should actually run now as it has been added to the new-tab page
- its relevant settings may now be found under the `update.*` namespace
- Private windows opened with the native messenger now work, e.g. `winopen -private about:addons`
-`:saveas` completions fixed
- Under the bonnet
- Added `tslint` and `shellcheck` checks to Travis CI for GitHub PRs and changed source to conform to their standards
- Swapped `prettier` for `tslint` for most cases
- excmds are now run from the content scripts which should hopefully reduce the number of round trips and generally improve responsiveness
- Minor changes to codebase made as suggested by sonarcloud and lgtm
- We've merged ([#953](https://github.com/tridactyl/tridactyl/issues/953)) which will eventually allow Tridactyl's `autocontain` and Mozilla's "Multi Account Containers" to co-exist peacefully once we enable a permission. We don't do that until the `updatecheck` has been out in the wild for a month or so first - see ([#708](https://github.com/tridactyl/tridactyl/issues/708)).
- Fixed `wine-pyinstaller.sh` on some systems
Thanks to all of our contributors for this release: Oliver Blanthorn, glacambre, dependabot, Saul Reynolds-Haertle, and Shahzeb Imran.
Extra special thanks go to dependabot and Shahzeb Imran who both contributed for the first time. (dependabot is a bot, but that does not make his contributions any the less valued).
Last, but not least - thank you to everyone who reported issues.
- Completions no longer get stuck showing you the command you just typed ([#1295](https://github.com/tridactyl/tridactyl/issues/1295))
-`findnext` no longer highlights invisible elements ([#1340](https://github.com/tridactyl/tridactyl/issues/1340))
- Command history search works again ([#1329](https://github.com/tridactyl/tridactyl/issues/1329))
-`nativeopen` now automatically detects which profile you're using and can open URLs with spaces in ([#1355](https://github.com/tridactyl/tridactyl/issues/1355))
-`leavegithubalone` is now a documented setting
-`keyup` events are no longer sent to the page for keys which are bound in Tridactyl ([#234](https://github.com/tridactyl/tridactyl/issues/234))
-`terminator` will now work as a terminal for `editorcmd`
- The native install command will now tell you if it didn't manage to install the native messenger ([#1099](https://github.com/tridactyl/tridactyl/issues/1099))
-`help` completions will now be deselected properly ([#1344](https://github.com/tridactyl/tridactyl/issues/1344))
- Removed `native_background.ts` - the editor is now all done in content scripts
- Removed commandline_background
-`contributing.md` has been improved with more documentation of our architecture
Thanks to all of our contributors for this release: Oliver Blanthorn, glacambre, Tadeas Uhlir, Nuno Santos, Anton Vilhelm Ásgeirsson, Colin Caine, Manny Schneck, Maximilian Roos, Robert Günzler, Rodrigo, Vik Ramanujam, heshamsafi, and pinusc.
Extra special thanks go to heshamsafi, Manny Schneck, Maximilian Roos, Nuno Santos, pinusc, Robert Günzler, Rodrigo, Tadeas Uhlir, and Vik Ramanujam who all contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
- Find mode is back, but still doesn't support incsearch. See `help find` for details on how to bind it if you value muscle-memory over stability :)
-`rssexec` added with completions to help you find RSS feeds that exist on the current page. By default, it executes `yank`, but this can be changed with `rsscmd` to interface with your favourite feed reader, e.g, `set rsscmd ! echo %u >> ~/.newsbeuter/urls`.
-`set` will now let you set complex objects such as `set searchurls {"google":"https://www.bing.com"}` ([#1289](https://github.com/tridactyl/tridactyl/issues/1289))
-`undo` now comes with completions so you can pick an older tab or window to restore ([#1286](https://github.com/tridactyl/tridactyl/issues/1286))
- The exceptionally well-hidden settings page now has a very well-hidden "reset your configuration button" at the very bottom of the page ([#1271](https://github.com/tridactyl/tridactyl/issues/1271)).
- The horrendously named `modeindicatorshowkeys` setting now allows you to see which fragments of valid key sequences you have typed.
- Bug fixes
- Hints are now slightly chubbier in solidarity with people who use bad fonts ([#1280](https://github.com/tridactyl/tridactyl/issues/1280))
- Favicons are back on `:tab` completions! ([#986](https://github.com/tridactyl/tridactyl/issues/986))
-`nativeopen` now checks for the presence of the native messenger rather than `tabopen`.
-`tridactylrc` should now execute more reliably ([#1197](https://github.com/tridactyl/tridactyl/issues/1197))
-`set` now refuses to let you set objects such as `searchurls` to simple strings ([#1288](https://github.com/tridactyl/tridactyl/issues/1288))
- Completions should show slightly faster ([#1259](https://github.com/tridactyl/tridactyl/issues/1259))
- The native messenger should now give more useful errors ([#1287](https://github.com/tridactyl/tridactyl/issues/1287))
- We do slightly fewer mad things with promises ([#1262](https://github.com/tridactyl/tridactyl/issues/1262))
- We remember to use our nice little vanity wrappers on ugly messaging more often ([#1257](https://github.com/tridactyl/tridactyl/issues/1257))
- Try to prevent more race conditions in the background code ([#1248](https://github.com/tridactyl/tridactyl/issues/1248))
- Prevent multiple commandlines from being inserted in to pages ([#1245](https://github.com/tridactyl/tridactyl/issues/1245)) ([#1243](https://github.com/tridactyl/tridactyl/issues/1243))
-`updatenag` now checks the right date (code I was using for testing made it into a stable release...)
-`winopen -private` is now documented
We're aware of a few issues introduced by 1.14.4+ and/or Firefox 64. Hopefully we'll get them fixed soon. In the meantime, please report any weirdness on our GitHub page as usual.
-`hintfiltermode simple` should no longer give you a useless error every time you click something
- Rebinding `<Space>` should actually work now
- If you're having typing sentences into the command line and find spaces appear in the middle of words, you might want to `unbind --mode=ex <Space>`.
- Under the bonnet
- We now have our own configuration listeners. See #1192 for more details.
This release was rushed out because I didn't test 1.14.4 well enough, so only glacambre and bovine3dom got to contribute to it. It feels more weird than usual to thank myself for coding when I'm 50% of the contributors, especially when the release was so speedy because I wasn't paying enough attention to the previous one, so I'll just pat glacambre instead. _bovine3dom tapote glacambre_.
-`tabnext/prev` now only cycles through visible tabs ([#1084](https://github.com/tridactyl/tridactyl/issues/1084)), for real this time ([#1207](https://github.com/tridactyl/tridactyl/issues/1207))
-`clipboard xselpaste` now works in the commandline ([#1206](https://github.com/tridactyl/tridactyl/issues/1206))
- Numerical config settings are now numbers rather than strings
Thanks to all of our contributors for this release: Oliver Blanthorn, glacambre, Anton Vilhelm Ásgeirsson, Abraham White, Nathan Collins, Colin Caine, Keegan Carruthers-Smith, and pale3.
Extra special thanks go to Abraham White, Keegan Carruthers-Smith, Nathan Collins, and pale3 who all contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
Thanks to all of our contributors for this release: Oliver Blanthorn, glacambre, Saul Reynolds-Haertle, Anton Vilhelm Ásgeirsson, Joao Sa, notJerl, Colin Caine, WorldCodeCentral, Alex Griffin, FrankEular, Ivan Solyankin, Lorenz Leutgeb, and Shou Ya.
Extra special thanks go to Alex Griffin, FrankEular, Ivan Solyankin, Joao Sa, Lorenz Leutgeb, notJerl, and Shou Ya who all contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
- You can now map keys to keys for Tridactyl modes with `keymap key1 key2`. The purpose of this is for our international users who switch keyboard layouts.
Thanks to all of our contributors for this release: Oliver Blanthorn, Saul Reynolds-Haertle, glacambre, Colin Caine, William G Hatch, Noah Birnel, Roman Bogorodskiy, and quinoa42.
Extra special thanks go to Noah Birnel, quinoa42, Roman Bogorodskiy, and William G Hatch who all contributed for the first time.
Last, but not least - thank you to everyone who reported issues.
- Most hint modes now have a rapid mode with `hint -q[flag]` and bound to `;g[key]`
- The divergence from Pentadactyl is because we already have `g;` bound to "switch to tab containing last used input field and focus it", which is my pet favourite command.
-`tab` is now an alias for `buffer` (I meant to add this months ago)
- All clipboard commands on Linux now support X-selection if you have the native messenger installed. Simply set `yankto` and `putfrom` to `selection`.
- Add `hintdelay` setting (measured in milliseconds) to add a short pause before hint mode is left after choosing a link ([#386](https://github.com/tridactyl/tridactyl/issues/386)) with the `hintfiltermode vimperator*` hint modes so that one has time to stop typing before Tridactyl returns to normal mode.
- Windows install script no longer rage-quits if Python is not found.
- This means that the compiled executable will actually be used. It's much slower than the normal Python script, so we strongly recommend that you use that instead by installing Python 3, making sure it is on your PATH, and running `installnative` again.
Thanks to all of our contributors for this release: Oliver Blanthorn, glacambre, Anton Vilhelm Ásgeirsson, Babil Golam Sarwar, Colin Caine, Jeff King, Bzly, WorldCodeCentral, Mohammad AlSaleh, Vladimir Macko, André Klausnitzer, Bodo Graumann, Chris Pickard, Lucian Poston, Matt Friedman, Susexe, and jcrowgey.
Extra special thanks go to André Klausnitzer, Chris Pickard, Lucian Poston, Matt Friedman, Susexe, Vladimir Macko, and WorldCodeCentral, all of whom were first time contributors.
- An experimental `smoothscroll` setting has been added. You can turn it on by using `:set smoothscroll true`. Be warned, this can make scrolling slower on some websites.
- You can run any file you want with `source [absolute path to file]`. Bonus points if you can think of something sensible to do with `source` in an `autocmd`.
- If you want vim-style configuration where nothing persists except that which is in the rc file, simply add `sanitise tridactyllocal tridactylsync` to the top of your rc file.
- Only whole-line comments are supported at the moment, in the VimL style where lines start with a quote mark: "
- You can now choose to bypass [CSP](https://en.wikipedia.org/wiki/Content_Security_Policy) on all sites with `set csp clobber`. If you change your mind, just `unset csp`, and restart your browser.
- This, for example, allows Tridactyl to run on pages such as https://raw.githubusercontent.com/cmcaine/tridactyl/master/CHANGELOG.md, but it could also allow other scripts to run on pages, making the Internet as dangerous as it was about 2 or 3 years ago before CSP was introduced.
- Once this [bug](https://bugzilla.mozilla.org/show_bug.cgi?id=1267027) in Firefox is fixed, you won't have to clobber CSP.
- Tridactyl will no longer update while the browser is running in an attempt to fix issues where the add-on would be unresponsive after an update; instead, it will only update on browser launch.
-`<Ctrl-I>` in a text field will open Vim, probably. Set it with `set editorcmd` but make sure that the command stays in the foreground till the programme is exited.
- Not all text fields work yet (esp CodeMirror), so make sure you test it before writing war and peace.
-`:! [shell command]` or `:exclaim [shell command]` will run the command and give you STDOUT/STDERR back in the command line.
- You can't use composite and shell pipes together yet.
- Anything that works in `/bin/sh` should work
- If you want to use a different shell, just make your own alias:
-`command ! exclaim fish -c` (but be aware that some shells require quotes around arguments given to -c)
- Requires a new permission to use the native messenger (and to use Tridactyl at all, unfortunately)
-`nativeopen` will try to open a new tab or window using the native messenger. It is used in `{,win,tab}open` automatically when you try to open about:_ or file:_ URIs.
- We've tried to make it look a bit more like the old Vimperator help pages and have hidden some useless or misleading bits that TypeDoc produced, such as the return values.
- Load iframe more lazily to stop breakage on some sites
- Add setting `noiframeon` for websites that are still broken by our iframe ("ServiceNow", for example: #279)
- Simply `set noiframeon [space separated URLs]` to blacklist URLs
- This will hopefully be our final release before the native messenger for OSX and Linux is merged.
- If you'd like to help test it out, download our latest betas from [here](https://tridactyl.cmcaine.co.uk/betas) and run `:installnative` once you are in.
- [Move betas to our own site](https://tridactyl.cmcaine.co.uk/betas) as addons.mozilla.org stopped supporting them ([#307](https://github.com/tridactyl/tridactyl/issues/307))
- In command mode, `Space` now puts the URL from the selected completion into the command line ([#224](https://github.com/tridactyl/tridactyl/issues/224))
- Add exmode aliases with `command [alias] [ex_command]`. Many aliases have been ported from Pentadactyl. ([#236](https://github.com/tridactyl/tridactyl/issues/236))