Qtile

De ArchwikiFR


Qtile est un Gestionnaire de fenêtres utilisant le principe du tiling des différentes fenêtres sur l’écran. Il est simple, rapide et totalement configurable en Python. Il est aisé d'écrire ses propres widgets, dispositions de fenêtres et raccourcis.

Installation

Qtile (version git) est disponible dans l'AUR: qtile-git.

Un fichier de configuration par défaut est proposé dans le git. Copiez le dans ~/.config/qtile/config.py.

Une façon simple de faire ça:

$ mkdir -p ~/.config/qtile/
$ wget https://raw.githubusercontent.com/qtile/qtile/master/libqtile/resources/default_config.py_config.py -O ~/.config/qtile/config.py

D'autres exemples sont disponibles ici.

Démarrer Qtile

Pour démarrer Qtile ajoutez exec qtile à votre ~/.xinitrc et lancez Xorg. La configuration par défaut inclue le raccourci Alt+Enter pour ouvrir une nouvelle fenêtre xterm.

Configuration

Note : Ce chapitre explique uniquement les bases de la configuration de Qtile. Pour plus d'informations, reportez vous à la documentation officielle (en).

La configuration de Qtile se fait totalement en Python (version 2) dans le fichier ~/.config/qtile/config.py. L'indentation est très important en Python donc respectez la.

Avant de redémarrer Qtile vous pouvez vérifier la syntaxe de votre fichier de configuration avec la commande:

$ python2 ~/.config/qtile/config.py

Groups

Dans Qtile les espaces de travail (ou bureaux) sont appelés Groups. Ils sont défini grâce à la fonction Group comme ci dessous:

from libqtile.manager import Group
groups = [
    Group("term"),
    Group("web"),
    Group("irc"),
]

Keys

Vous pouvez configurer vos propres raccourcis claviers avec la fonction Key. Voici un exemple du raccourci Alt+Shift+q pour quitter Qtile.

from libqtile.manager import Key
from libqtile.command import lazy
keys = [
    Key(
        ["shift","mod1"], "q",
        lazy.shutdown()
    ),
]

Vous pouvez trouver quel numéro de mod correspond à quelle touche avec la commande xmodmap.

Screens et Bars

Créez une fonction Screen pour chaque écran que vous possédez. Les barres de Qtile sont configurés à l'intérieur de la fonction Screen ce qui permet d'avoir des barres différentes sur chaque écran. Voici un exemple simple d'une barre situé en bas (bottom) avec deux widgets:

from libqtile.manager import Screen
from libqtile import bar, widget
screens = [
    Screen(
        bottom=bar.Bar([
            widget.GroupBox(),
            widget.WindowName()
            ], 30))
]

Widgets

Vous trouverez toute les informations sur la configuration des widgets dans la documentation (en).

Certains widgets (tels que BatteryIcon et Notify) ne sont pas inclus par défaut dans le dossier git, mais vous pouvez les télécharger ici et les copier dans /usr/lib/python2.7/site-packages/libqtile/widget/.

Ensuite modifiez /usr/lib/python2.7/site-packages/libqtile/widget/__init__.py afin d'importer les nouveaux widgets. Par exemple pour les widgets BatteryIcon et Notify:

Fichier: /usr/lib/python2.7/site-packages/libqtile/widget/__init__.py
[...]
from battery import Battery,BatteryIcon
from notify import Notify
[...]

Liens