Die sieben Layouts

Sieben Arten, eine Bildschirmfläche aufzuteilen – umschaltbar im laufenden Betrieb

Ein Layout ist die Regel, nach der Kachelwerk die vorhandene Fläche auf die vorhandenen Fenster verteilt. Alle sieben sind reine Funktionen ohne gespeicherten Zustand: Sie bekommen die Liste der Fenster und die Fläche und berechnen die Anordnung bei jedem Durchlauf neu. Deshalb driftet nichts, wenn ein Fenster den Bildschirm wechselt.

Umschalten geht jederzeit über Menüleiste → Layout, mit SUPER CTRL + Zahl oder mit einem eigenen Kürzel:

bind = SUPER, L, layoutmsg, master

Übersicht

LayoutPrinzipTypische Option
dwindle (Standard)Jedes neue Fenster halbiert den aktuellen Bereich abwechselnd waagerecht und senkrecht – ein binärer Baumpreserve_split = true
masterEin großes Hauptfenster, alle weiteren als Stapel danebennew_status = master
master-leftWie master, das Hauptfenster steht fest linksmfact = 0.6
master-rightWie master, das Hauptfenster steht fest rechtsmfact = 0.6
centeredEin großes Fenster in der Mitte, die übrigen abwechselnd rechts und linksalways_center_master = true
scrollingEndloses waagerechtes Band von Spalten nach dem PaperWM-Prinzipfullscreen_on_one_column = true
gridGleich große Zellen, zeilenweise gefüllt—

Jeder Bildschirm wird eigenständig gekachelt – mit eigenem Hauptfenster und, wenn gewünscht, mit einem eigenen Layout (Layout je Bildschirm).

Nummern und Tastenkürzel

Die Layouts sind im Menü durchnummeriert. SUPER CTRL + Zahl wechselt direkt auf das Layout mit dieser Nummer – in beiden Profilen.

Nr.LayoutKürzel, wenn SUPER = ⌥
1dwindle⌃⌥1
2master⌃⌥2
3master-left⌃⌥3
4master-right⌃⌥4
5centered⌃⌥5
6scrolling⌃⌥6
7grid⌃⌥7

SUPER + Zahl allein gehört den Arbeitsflächen. Hat der Bildschirm des fokussierten Fensters ein eigenes Layout, ändert das Kürzel dieses, sonst das Standard-Layout.


🧱 dwindle — der Standard

Jedes neue Fenster halbiert den Bereich des Fensters, neben dem es landet: abwechselnd waagerecht und senkrecht, immer entlang der längeren Kante. Was entsteht, ist ein binärer Baum.

 1 Fenster        2 Fenster          3 Fenster          4 Fenster
┌─────────┐     ┌────┬────┐       ┌────┬────┐       ┌────┬────┐
│         │     │    │    │       │    │ 2  │       │    │ 2  │
│    1    │     │ 1  │ 2  │       │ 1  ├────┤       │ 1  ├─┬──┤
│         │     │    │    │       │    │ 3  │       │    │3│4 │
└─────────┘     └────┴────┘       └────┴────┘       └────┴─┴──┘
OptionWerteBedeutung
preserve_splittrue / falseTeilungsrichtung starr an die Baumtiefe binden statt aus dem Seitenverhältnis zu bestimmen
split_biasZahlVerschiebt die Teilung aus der Mitte

Zur Option preserve_split: Standardmäßig entscheidet Kachelwerk die Teilungsrichtung bei jedem Durchlauf neu aus dem Seitenverhältnis der Fläche. Mit preserve_split = true wechselt sie stattdessen starr mit der Baumtiefe. Eine von Hand aufgebaute Anordnung bleibt dadurch auch dann erhalten, wenn ein Fenster in der Größe verändert oder der Bildschirm gewechselt wird – der Preis sind bei tiefen Bäumen sehr schmale Kacheln.


🎯 master — ein großes, der Rest daneben

┌───────────┬─────┐
│           │  2  │
│     1     ├─────┤
│  (Master) │  3  │
│           ├─────┤
│           │  4  │
└───────────┴─────┘
OptionWerteBedeutung
new_statusmasterEin neues Fenster wird zum Hauptfenster, das alte rutscht in den Stapel
slaveEs wird hinten an den Stapel gehängt (Standard)
inheritEs übernimmt die Rolle des gerade fokussierten Fensters
mfact0.1 – 0.9Anteil des Hauptbereichs an der Gesamtbreite
orientationleft / topHauptfenster links oder oben
pinnedtrue / falseHauptfenster fixieren: ein neues Fenster übernimmt den Platz nicht

Ein Fenster nachträglich zum Hauptfenster machen: SUPER SHIFT + Return. Dauerhaft für eine bestimmte App:

windowrule = master, iTerm2

◧ master-left und master-right — die Seite steht fest

Das Hauptfenster als volle Spalte auf einer festen Seite, alle übrigen übereinander auf der anderen. Anders als beim gewöhnlichen master hängt die Seite nicht an orientation – die beiden Layouts lassen sich direkt umschalten.

   master-left                         master-right
┌───────────┬─────┐                  ┌─────┬───────────┐
│           │  2  │                  │  2  │           │
│     1     ├─────┤                  ├─────┤     1     │
│  (Master) │  3  │                  │  3  │  (Master) │
│           ├─────┤                  ├─────┤           │
│           │  4  │                  │  4  │           │
└───────────┴─────┘                  └─────┴───────────┘
OptionWerteBedeutung
mfact0.1 – 0.9Anteil des Hauptfensters – auf beiden Seiten gleich gemeint
new_status, pinnedwie bei mastergelten unverändert

🎪 centered — das Hauptfenster in der Mitte

Das große Fenster steht mittig, alle weiteren wandern abwechselnd nach rechts und nach links. So bleiben die beiden Seitenspalten bei jeder Fensterzahl ausgeglichen.

┌──────┬─────────────┬──────┐
│  3   │             │  2   │
├──────┤      1      ├──────┤
│  5   │  (Master)   │  4   │
└──────┴─────────────┴──────┘
OptionWerteBedeutung
always_center_mastertrue / falseBei nur zwei Fenstern trotzdem mittig bleiben

Bei nur zwei Fenstern fällt das Layout auf das gewöhnliche master-Verhalten zurück, statt eine leere Spalte zu zeigen – es sei denn, always_center_master = true ist gesetzt.


🌊 scrolling — ein endloses Band

Das PaperWM-Prinzip: ein endloses waagerechtes Band von Spalten. Die Spalten ändern ihre Breite nie – stattdessen scrollt das Band, sodass die fokussierte Spalte im Blick bleibt.

        ← Sichtbarer Bildschirm →
  ┌ ─ ─ ┬─────────┬─────────┬ ─ ─ ┐
  │  1  │    2    │    3    │  4  │      Fokus auf 2 und 3
  └ ─ ─ ┴─────────┴─────────┴ ─ ─ ┘
     ↑                          ↑
  links raus                rechts raus
   gescrollt                 gescrollt

Fokus nach rechts (SUPER + →) schiebt das Band weiter. Die fokussierte Spalte wird zentriert, solange links und rechts genug Band vorhanden ist; an den Enden liegt das Band bündig an.

OptionWerteBedeutung
column_width0.2 – 1.0Breite einer Spalte als Anteil der Bildschirmbreite
fullscreen_on_one_columntrue / falseEine einzelne Spalte darf den ganzen Bildschirm nutzen

▦ grid — gleich große Zellen

Zeilenweise gefüllt, alle Zellen gleich groß. Die letzte Zeile wird über die verbleibende Breite gestreckt. Vertraut für alle, die von einem Werkzeug wie Rectangle oder Magnet kommen.

┌────┬────┐     ┌────┬────┐
│ 1  │ 2  │     │ 1  │ 2  │
├────┼────┤     ├────┴────┤
│ 3  │ 4  │     │    3    │   ← letzte Zeile wird gestreckt
└────┴────┘     └─────────┘

Dieses Layout hat keine eigenen Optionen – nur gaps_in und gaps_out aus dem general { }-Block wirken.