[qutebrowser] qutebrowser v1.2.0 released with per-domain settings and more!

Michael Keyes mgkeyes at vigovproductions.net
Sun Mar 11 00:17:46 CET 2018


Fantastic news! I'm surprised at how pleasant script-free browsing is.
Before I switched to qutebrowser I used Firefox with NoScript, and it
always felt so run-down and broken. Probably because of how intrusive
NoScript is. This is much better!

I wonder if it would be possible to make a version of the "tsu" binding
that automatically reverts after five minutes or so? I tried my hand at
making a userscript to that effect, but the way I did it feels kind of
hacky (not in a good way!). Still, even without the timeout, it's a
great feature to have by default!

Thanks for all your great work,

Michael


On 09.03.18 22:20, Florian Bruhin wrote:
> Hey,
>
> I'm happy to announce that I just released qutebrowser v1.2.0! It comes
> with a long changelog, but the most interesting changes are probably
> initial support for per-domain settings (I've had JavaScript disabled
> globally for a while myself now) and a big refactoring of how
> keybindings are handled (allowing for emacs-like key chains with
> modifiers).
>
> Here's the complete changelog:
>
> Added
> ~~~~~
>
> - Initial implementation of per-domain settings:
>   * `:set` and `:config-cycle` now have a `-u`/`--pattern` argument taking a
>     URL match pattern for supported settings.
>   * `config.set` in `config.py` now takes a third argument which is the pattern.
>   * New `with config.pattern('...') as p:` context manager for `config.py` to
>     use the shorthand syntax with a pattern.
>   * New `tsh` keybinding to toggle scripts for the current host. With a capital
>     `S`, the toggle is saved. With a capital `H`, subdomains are included. With
>     `u` instead of `h`, the exact current URL is used.
>   * New `tph` keybinding to toggle plugins, with the same additional binding
>     described above.
> - New QtWebEngine features:
>   * Caret/visual mode
>   * Authentication via ~/.netrc
>   * Retrying downloads with Qt 5.10 or newer
>   * Hinting and other features inside same-origin frames
> - New flags for existing commands:
>   * `:session-load` has a new `--delete` flag which deletes the
>     session after loading it.
>   * New `--no-last` flag for `:tab-focus` to not focus the last tab when focusing
>     the currently focused one.
>   * New `--edit` flag for `:view-source` to open the source in an external editor.
>   * New `--select` flag for `:follow-hint` which acts like the given
>     string was entered but doesn't necessary follow the hint.
> - New special pages:
>   * `qute://bindings` (opened via `:bind`) which shows all keybindings.
>   * `qute://tabs` (opened via `:buffer`) which lists all tabs.
> - New settings:
>   * `statusbar.widgets` to configure which widgets should be shown in which
>     order in the statusbar.
>   * `tabs.mode_on_change` which replaces `tabs.persist_mode_on_change`. It can
>     now be set to `restore` which remembers input modes (input/passthrough)
>     per tab.
>   * `input.insert_mode.auto_enter` which makes it possible to disable entering
>     insert mode automatically when an editable element was clicked. Together
>     with `input.forward_unbound_keys`, this should allow for emacs-like
>     "modeless" keybindings.
> - New `:prompt-yank` command (bound to `Alt-y` by default) to yank URLs
>   referenced in prompts.
> - The `hostblock_blame` script which was removed in v1.0 was updated for the new
>   config and re-added.
> - New `cycle-inputs.js` script in `scripts/` which can be used with `:jseval -f`
>   to cycle through inputs.
>
> Changed
> ~~~~~~~
>
> - Complete refactoring of key input handling, with various effects:
>   * emacs-like keychains such as `<Ctrl-X><Ctrl-C>` can now be bound.
>   * Key chains can now be bound in any mode (this allows binding unused keys in
>     hint mode).
>   * Yes/no prompts don't use keybindings from the `prompt` section anymore, they
>     have their own `yesno` section instead.
>   * Trying to bind invalid keys now shows an error.
>   * The `bindings.default` setting can now only be set in a `config.py`, and
>     existing values in `autoconfig.yml` are ignored.
> - Improvements for GreaseMonkey support:
>   * `@include` and `@exclude` now support regex matches. With QtWebEngine and Qt
>     5.8 and newer, Qt handles the matching, but similar functionality will be
>     added in Qt 5.11.
>   * Support for `@requires`
>   * Support for the GreaseMonkey 4.0 API
> - The sqlite history now uses write-ahead logging which should be
>   a performance and stability improvement.
> - When an editor is spawned with `:open-editor` and `:config-edit`, the changes
>   are now applied as soon as the file is saved in the editor.
> - The `hist_importer.py` script now only imports URL schemes qutebrowser can
>   handle.
> - Deleting a prefix (`:`, `/` or `?`) via backspace now leaves command mode.
> - Angular 1 elements and `<summary>`/`<details>` now get hints assigned.
> - `:tab-only` with pinned tabs now still closes unpinned tabs.
> - The `url.incdec_segments` option now also can take `port` as possible segment.
> - QtWebEngine: `:view-source` now uses Chromium's `view-source:` scheme.
> - Tabs now show their full title as tooltip.
> - When there are multiple unknown keys in a autoconfig.yml, they now all get
>   reported in one error.
> - More performance improvements when opening/closing many tabs.
> - The `:version` page now has a button to pastebin the information.
> - Replacements like `{url}` can now be escaped as `{{url}}`.
>
> Fixed
> ~~~~~
>
> - QtWebEngine bugfixes:
>   * Improved fullscreen handling with Qt 5.10.
>   * Hinting and scrolling now works properly on special `view-source:` pages.
>   * Scroll positions are now restored correctly from sessions.
>   * `:follow-selected` should now work in more cases with Qt > 5.10.
>   * Incremental search now flickers less and doesn't move to the second result
>     when pressing Enter.
>   * Keys like `Ctrl-V` or `Shift-Insert` are now correctly handled/filtered with
>     Qt 5.10.
>   * Fixed hangs/segfaults on exit with Qt 5.10.1.
>   * Fixed favicons sometimes getting cleared with Qt 5.10.
>   * Qt download objects are now cleaned up properly when a download is removed.
>   * JavaScript messages are now not double-HTML escaped anymore on Qt < 5.11
> - QtWebKit bugfixes:
>   * Fixed GreaseMonkey-related crashes.
>   * `:view-source` now displays a valid URL.
> - URLs containing ampersands and other special chars are now shown correctly
>   when filtering them in the completion.
> - `:bookmark-add "" foo` can now be used to save the current URL with a custom
>   title.
> - `:spawn -o` now waits until the process has finished before trying to show the
>   output. Previously, it incorrectly showed the previous output immediately.
> - Suspended pages now should always load the correct page when being un-suspended.
> - Exception types are now shown properly with `:config-source` and `:config-edit`.
> - When using `:bookmark-add --toggle`, bookmarks are now saved properly.
> - Crash when opening an invalid URL from an application on macOS.
> - Crash with an empty `completion.timestamp_format`.
> - Crash when `completion.min_chars` is set in some cases.
> - HTML/JS resource files are now read into RAM on start to avoid crashes when
>   changing qutebrowser versions while it's open.
> - Setting `bindings.key_mappings` to an empty value is now allowed.
> - Bindings to an empty commands are now ignored rather than crashing.
>
> Removed
> ~~~~~~~
>
> - `QUTE_SELECTED_HTML` is now not set for userscripts anymore except when called
>   via hints.
> - The `qutebrowser_viewsource` userscript has been removed as
>   `:view-source --edit` can now be used.
> - The `tabs.persist_mode_on_change` setting has been removed and replaced by
>   `tabs.mode_on_change`.
>
> Enjoy, and let me know if you run into trouble! :)
>
> Florian
>

-- 
Michael

GPG PubKey: https://www.vigovproductions.net/pubkey.asc (Fingerprint: FAFA F12C 4440 460A 89D0 A67F 8D31 13F7 D36F 833C)


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <https://listi.jpberlin.de/pipermail/qutebrowser/attachments/20180310/bb6fd07e/attachment-0001.asc>


More information about the qutebrowser mailing list