Recette : façon driftwm

Des grappes déconnectées dispersées sur la toile ; déplacement, zoom et aperçu entre elles — le modèle de groupes de travail de driftwm sur un plan 2D.

driftwm place les fenêtres sur une toile infinie où elles s'agrègent en groupes implicites — des grappes de travail connexe entre lesquelles vous voyagez par déplacement et zoom. atlaswm a des groupes de première classe : des grappes en tuiles déconnectées sur un même plan, plus une échelle de zoom et un aperçu pour voyager entre elles.

La sensation

Au lieu de changer d'espace de travail, vous vous déplacez dans l'espace. Une grappe de terminaux ici, une grappe navigateur-et-notes là-bas, une grappe de discussion sur le côté — tout sur la même toile. Vous vous déplacez vers l'une, dézoomez pour les voir toutes, re-zoomez vers une autre. Le travail est placé, pas paginé. Chaque grappe garde son propre focus, donc y revenir vous ramène là où vous l'aviez laissé.

Les primitives atlaswm utilisées

  • Groupes déconnectés — plusieurs grappes en tuiles sur un même plan (spawn-new-group, group-next / group-prev).
  • Le déplacement en X et en Y pour parcourir la toile.
  • L'échelle de zoom (100% → 50% → fit-plane) pour reculer et voir l'ensemble.
  • L'aperçu pour une grille à vol d'oiseau (ici, une grille de plans si vous en utilisez aussi plusieurs).
  • Les étiquettes de groupe pour qu'une grappe puisse être gather/summon en bloc.

Config

mod "super"

binds {
    // Parcourt la toile.
    "Mod+Ctrl+h" "pan-left"
    "Mod+Ctrl+j" "pan-down"
    "Mod+Ctrl+k" "pan-up"
    "Mod+Ctrl+l" "pan-right"

    // Recule pour tout voir, puis replonge.
    "Mod+z" "zoom-out"
    "Mod+Shift+z" "zoom-in"
    "Mod+o" "overview-toggle"

    // Un sous-mode « groups » à usage unique : démarrer une grappe, basculer entre
    // les grappes, étiqueter toute la grappe d'un coup.
    "Mod+g" "submap:groups"
}

submaps {
    groups oneshot=#true {
        "n" "spawn-new-group"
        "l" "group-next"
        "h" "group-prev"
        "t" "group-tag-toggle:work"
        "Escape" "submap-exit"
    }
}

Mod+g n démarre une nouvelle grappe au coin haut-gauche de la vue ; Mod+g l / Mod+g h font défiler les grappes du plan. Mod+z, répété, recule jusqu'au fit-plane (toutes les grappes à la fois) et un cran de plus vers l'aperçu ; Mod+o saute directement à l'aperçu.

Le Mod+o par défaut est le sous-mode planes — cette recette le réassigne à l'aperçu, ce qui est le geste le plus typique de driftwm. Si vous voulez les deux, choisissez une autre touche pour l'un d'eux.

GIF

Quand l'utiliser

  • Vous pensez spatialement : « le truc de l'e-mail est par , le code est ici. »
  • Vous voulez des groupes de travail sans la rigidité des espaces de travail numérotés.
  • Vous aimez le zoom-vers-aperçu comme navigation principale, à la manière de driftwm.

Mélangez-les

Étiquetez une grappe (group-tag-toggle:work) et vous pouvez la gather ou summon de n'importe où ; déplacez toute une grappe vers un plan vierge avec group-to-plane:<n> quand une toile devient encombrée ; déposez des ancres sur les grappes que vous revisitez pour y sauter par nom (c'est la recette du moyeu spatial). Voyez aussi façon niri et façon i3/sway.