qutebrowser Key Bindings
Updated  2022-March-2

Page contents

News

2022-January-24  Published this evolving⁠[1] article.

 

Prerequisites

This article assumes you know…

  • the basics about the qutebrowser web browser

  • and how to create and populate a qutebrowser config.py configuration file.

 

Built-in key bindings

To view qutebrowser’s default key bindings…

The following is the beginning of that part of qutebrowser’s default config.py.

2119## Bindings for normal mode
2120config.bind("'", 'mode-enter jump_mark')
2121config.bind('+', 'zoom-in')
2122config.bind('-', 'zoom-out')
2123

 

The two emphasized bindings above make it possible to use the + and -⁠ keys to zoom in and zoom out on a web page.

 

Examples of user-defined key bindings

Zooming

Because I’m used to using Ctrl+= and Ctrl+- to zoom in and zoom out on a web page, I put the following in my config.py.

config.bind('<Ctrl-=>', 'zoom-in')
config.bind('<Ctrl-->', 'zoom-out')

 

Launching userscripts

Infinite Ink’s qutebrowser Userscripts on Windows includes the following key bindings, each of which launches a userscript.

config.bind(',qenv', 'spawn -u -o "qb-env.cmd"')
config.bind(',t', 'spawn -u tumblelog-wrapper.cmd')

 

Killing popups and other floating elements

config.bind(',kp', 'jseval (function () { '+
'  var i, elements = document.querySelectorAll("body *");'+
''+
'  for (i = 0; i < elements.length; i++) {'+
'    var pos = getComputedStyle(elements[i]).position;'+
'    if (pos === "fixed" || pos == "sticky") {'+
'      elements[i].parentNode.removeChild(elements[i]);'+
'    }'+
'  }'+
'})();');

 

If you put this in your config.py, you can type ,kp in normal mode to kill popups on qutebrowser’s current web page.

 

See also

Endnote


1. Many Infinite Ink articles, including this one, are evergreen and regularly updated.

Comments and questions 📝 🤔 👎 👍

Your public comment or question might immediately improve this page or help me to (eventually) improve this page.