Skip to content

Latest commit

 

History

History
94 lines (85 loc) · 4.81 KB

FAQ.asciidoc

File metadata and controls

94 lines (85 loc) · 4.81 KB

Frequently asked questions

  1. What is qutebrowser based on?

    qutebrowser uses Python, Qt and PyQt.

    The concept of it is largely inspired by dwb and Vimperator. Many actions and keybindings are similiar to dwb.

  2. Why another browser?

    It might be hard to believe, but I didn’t find any browser which I was happy with, so I started to write my own. Also, I needed a project to get into writing GUI applications with Python and Qt/PyQt.

    Read the next few questions to find out why I was unhappy with existing software.

  3. What’s wrong with dwb/vimprobable/luakit/jumanji/…​ (projects based on WebKitGTK)?

    Most of them are based on the WebKitGTK+ WebKit1 API, which causes a lot of crashes. As the GTK API using WebKit1 is deprecated, these bugs are never going to be fixed.

    The newer WebKit2 API seems to lack basic features like proxy support, and almost no projects seem to have started porting to WebKit2 (I only know of uzbl).

    qutebrowser uses Qt and QtWebKit instead, which suffers from far less such crashes. It might switch to QtWebEngine in the future, which is based on Google’s Blink rendering engine.

  4. What’s wrong with Firefox and Pentadactyl/Vimperator?

    Firefox likes to break compatibility with addons on each upgrade, gets slower and more bloated with every upgrade, and has some horrible ideas lately.

    Also, developing addons for it is a nightmare.

  5. What’s wrong with Chromium and Vimium?

    The Chrome plugin API doesn’t seem to allow much freedom for plugin writers, which results in Vimium not really having all the features you’d expect from a proper minimal, vim-like browser.

  6. Why Python?

    I enjoy writing Python since 2011, which made it one of the possible choices. I wanted to use Qt because of QtWebKit so I didn’t have many other choices. I don’t like C++ and can’t write it very well, so that wasn’t an alternative.

  7. But isn’t Python too slow for a browser?

    No. I believe efficency while coding is a lot more important than efficency while running. Also, most of the heavy lifting of qutebrowser is done by Qt and WebKit in C++, with the GIL released.

  8. Is there an adblocker?

    Not yet. Adblocking has a big impact on browsing speed and RAM usage, so implementing it properly might take some time and won’t be done for v0.1.

    However, there are some alternatives you could use to block ads:

    • You can use a hosts file to block ads. Examples: 1, 2, 3

    • Set up a Privoxy proxy server and use it to filter ads before they even get to the browser.

    • Use adsuck as a local DNS server for blocking ads.

    • Use the RequestPolicy functionality to block ads, which currently isn’t implemented either.

      If you think you can add ad blocking or request policy, please contribute!