Skip to main content

A keyboard-driven, vim-like browser based on PyQt5 and QtWebKit.

Project description

// If you are reading this in plaintext or on PyPi:
//
// A rendered version is available at:
// https://github.com/The-Compiler/qutebrowser/blob/master/README.asciidoc

qutebrowser
===========
:icons:
:data-uri:

_A keyboard-driven, vim-like browser based on PyQt5 and QtWebKit._

qutebrowser is a keyboard-focused browser with with a minimal GUI. It's based
on Python, PyQt5 and QtWebKit and free software, licensed under the GPL.

It was inspired by other browsers/addons like dwb and Vimperator/Pentadactyl.

Documentation
-------------

In addition to the topics mentioned in that README, the following documents are
available:

* link:doc/FAQ.asciidoc[Frequently asked questions]
* link:doc/HACKING.asciidoc[HACKING]
* link:doc/BUGS[BUGS]
* link:doc/TODO[TODO]

Getting help
------------

You can get help in the IRC channel
irc://irc.freenode.org/#qutebrowser[`#qutebrowser`] on
http://freenode.net/[Freenode]
(https://webchat.freenode.net/?channels=#qutebrowser[webchat]), or by writing a
message to the
https://lists.schokokeks.org/mailman/listinfo.cgi/qutebrowser[mailinglist] at
mailto:qutebrowser@lists.qutebrowser.org[].

Running qutebrowser
-------------------

After installing the <<requirements,requirements>>, you have these options:

* Run qutebrowser directly via `python3 -m qutebrowser`. Note executing
qutebrowser.py directly as script won't work, as Python won't recognize the
module.
* Run `python3 setup.py install` to install qutebrowser, then call
`qutebrowser`.

Contributions / Bugs
--------------------

You want to contribute to qutebrowser? Awesome! Please read
link:doc/HACKING.asciidoc[HACKING] for details and useful hints.

If you found a bug or have a feature request, you can report it in several
ways:

* Use the built-in `:report` command or the automatic crash dialog.
* Open an issue in the Github issue tracker.
* Write a mail to the
https://lists.schokokeks.org/mailman/listinfo.cgi/qutebrowser[mailinglist] at
mailto:qutebrowser@lists.qutebrowser.org[].

[[requirements]]
Requirements
------------

The following software and libraries are required to run qutebrowser:

* http://www.python.org/[Python] 3.3 or newer (3.4 recommended)
* http://qt-project.org/[Qt] 5.2 or newer (5.3.1 recommended)
* QtWebKit
* http://www.riverbankcomputing.com/software/pyqt/intro[PyQt] 5.2 or newer
(5.3.1 recommended) for Python 3
* https://pypi-hypernode.com/pypi/setuptools/[pkg_resources/setuptools]
* https://github.com/g2p/rfc6266[rfc6266]

The following libraries are optional and provide colored logging in the
console:

* https://pypi-hypernode.com/pypi/colorlog/[colorlog]
* On Windows: https://pypi-hypernode.com/pypi/colorama/[colorama]

On Debian
~~~~~~~~~

----
# apt-get install python3-pyqt5 python3-pyqt5.qtwebkit python3-pkg-resources python3-pip
# pip3 install rfc6266
----

On Archlinux
~~~~~~~~~~~~

There's an Archlinux package available in `pkg/`. You can install it (and the
python-rfc6266 dependency) like this:

----
$ wget https://aur.archlinux.org/packages/py/python-rfc6266/python-rfc6266.tar.gz <1>
$ tar xzvf python-rfc6266.tar.gz
$ cd python-rfc6266
$ makepkg -si
$ cd ..

$ mkdir qutebrowser
$ cd qutebrowser
$ wget http://git.the-compiler.org/qutebrowser/plain/pkg/PKGBUILD.qutebrowser-git -O PKGBUILD
$ makepkg -si
$ cd ..
$ rm -rf python-rfc6266.tar.gz python-rfc6266 qutebrowser
----
<1> Instead of the first block of commands you could also use an AUR helper,
e.g. +yaourt -S python-rfc6266+.

As soon as v0.1 is out, there will be a package in the AUR, so this will get
easier.

// Install https://aur.archlinux.org/packages/qutebrowser-git/[qutebrowser-git]
// from the AUR.

On Windows
~~~~~~~~~~

* Use the installer from http://www.python.org/downloads[python.org] to get Python 3
* Use the installer from
http://www.riverbankcomputing.com/software/pyqt/download5[Riverbank computing]
to get Qt and PyQt5.
* Run `scripts/ez_setup.py` to get setuptools.
* Get pip as described http://stackoverflow.com/a/12476379[on Stack Overflow].
* Run +pip install rfc6266+ to install rfc6266.

As soon as v0.1 is out, a standalone .exe (built with
http://cx-freeze.sourceforge.net/[cx_Freeze]) will be provided. In the
meantime, you can simply ask in IRC if you need one.

Authors
-------

Contributors, sorted by the number of commits in descending order:

// QUTE_AUTHORS_START
* Florian Bruhin
// QUTE_AUTHORS_END

Thanks / Similiar projects
--------------------------

Many projects with a similiar goal as qutebrowser exist:

* http://portix.bitbucket.org/dwb/[dwb]
* https://github.com/fanglingsu/vimb[vimb]
* http://sourceforge.net/projects/vimprobable/[vimprobable]
* https://mason-larobina.github.io/luakit/[luakit]
* http://pwmt.org/projects/jumanji/[jumanji]
* http://conkeror.org/[conkeror]
* http://surf.suckless.org/[surf]
* http://www.uzbl.org/[uzbl]
* http://www.vimperator.org/[Vimperator] (Firefox addon)
* http://5digits.org/pentadactyl/[Pentadactyl] (Firefox addon)
* https://github.com/akhodakivskiy/VimFx[VimFx] (Firefox addon)
* http://vimium.github.io/[vimium] (Chrome/Chromium addon)

Most of them were inspirations for qutebrowser in some way, thanks for that!

Thanks as well to the following projects and people for helping me with
problems and helpful hints:

* http://eric-ide.python-projects.org/[eric5] / Detlev Offenbach
* https://code.google.com/p/devicenzo/[devicenzo]
* portix
* seir
* nitroxleecher

Also, thanks to:

* Everyone who had the patience to test qutebrowser before v0.1.
* Everyone triaging/fixing my bugs in the
https://bugreports.qt-project.org/secure/Dashboard.jspa[Qt bugtracker]
* Everyone answering my questions on http://stackoverflow.com/[Stack Overflow]
and in IRC.
* All the projects which were a great help while developing qutebrowser.

License
-------

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.

Project details


Release history Release notifications | RSS feed

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page