wiki/HowtoI3.md

71 lines
1.9 KiB
Markdown
Raw Normal View History

2017-03-01 10:18:14 +01:00
---
2017-03-01 10:18:27 +01:00
title: Howto i3, a tiling window manager
2017-03-01 10:18:14 +01:00
category: window-manager
---
2017-03-03 14:27:55 +01:00
**Documentation officielle** : <http://i3wm.org/docs/>
2017-03-01 10:36:18 +01:00
## Installation
2017-03-03 14:27:55 +01:00
En installant le méta-paquet **i3** on obtient **i3-wm** lui-même et plusieurs outils utiles (**i3lock** , **i3status** , **dunst**…).
2017-03-01 10:36:18 +01:00
~~~
$ apt install i3
~~~
2017-03-03 14:28:24 +01:00
On peut aussi se contenter du paquet **i3-wm**.
2017-03-01 10:31:22 +01:00
## Barre d'état
Une barre d'état est proposée par i3 via la commande `i3status` qui affiche une ligne de texte d'information, mise à jour en continu.
i3 affiche par défaut cette barre sur tous les écrans, en dessous des "workspaces".
Via la configuration, il est possible de modifier ce comportement. Par exemple la placer en haut, seulement sur l'écran principal :
~~~
bar {
position top
tray_output primary
status_command i3status
}
~~~
## Utile
2017-03-03 14:25:55 +01:00
### Vérouillage de session rapide
I3 propose un verrou de session avec la commande `i3lock`.
On peut créer un raccourci pour le faire facilement :
~~~
bindsym $mod+exclam exec i3lock --dpms
~~~
2017-03-01 10:31:22 +01:00
### Déplacer des "workspaces" sur un autre écran
Pour déplacer le "workspace" courant sur un autre écran (à placer dans la config de i3) :
~~~
bindsym $mod+Control+Shift+Right move workspace to output right
bindsym $mod+Control+Shift+Left move workspace to output left
~~~
Si on branche/débranche régulièrement des écrans, il peut être utile d'automatiser le retour de certains "workspaces" sur un écran ajouté :
~~~{.bash}
# list all worspaces on the internal display, except "worspace 1" (using "jq" for json parsing)
i3_workspaces=$(i3-msg -t get_workspaces | jq '.[] | select(.output == "eDP1" and .num != 1) | .num')
for i in $i3_workspaces; do
i3-msg -q "workspace ${i}; move workspace to output right"
done
2017-03-01 10:32:08 +01:00
~~~
2017-03-01 10:31:22 +01:00
### Faire une capture d'écran
~~~
bindsym Print exec scrot -e 'mv $f ~/tmp/ && sxiv ~/tmp/$f'
~~~
La commande exécutée est `scrot […]` et il est évidemment possible de la personnaliser ou la remplacer par une autre.
~~~