#Groupes d'espaces de travail
Les groupes d'espaces de travail vous permettent d'imbriquer des espaces de travail dans des sections nommées et repliables de la barre latérale. Chaque groupe possède un espace de travail d'ancrage implicite, un bouton + personnalisable pour créer de nouveaux espaces de travail à l'intérieur, et des actions par clic droit pour renommer, épingler, dégrouper et modifier sa configuration.
#Concepts
#Espace de travail d'ancrage
Chaque groupe est détenu par exactement un espace de travail appelé l'ancrage. L'en-tête du groupe dans la barre latérale est la représentation de l'ancrage — il n'y a pas de ligne distincte pour celui-ci. Cliquer sur la zone du nom de l'en-tête met le focus sur les panneaux de l'ancrage ; cliquer sur le chevron bascule le repliement.
Les ancrages sont toujours flambant neufs lorsqu'un groupe est créé. Ils ne sont jamais promus à partir d'un espace de travail existant. Le répertoire de travail de l'ancrage est hérité du premier espace de travail sélectionné lors du regroupement d'une sélection, ou de l'espace de travail actif lors de la création via le CLI sans --cwd.
Fermer l'espace de travail d'ancrage dissout le groupe : tous les autres membres deviennent des espaces de travail dégroupés et restent dans la liste des onglets. Rien n'est fermé hormis l'ancrage lui-même. L'application affiche une boîte de dialogue de confirmation avec une bascule « Ne plus demander » avant que cela ne se produise.
#Identité du groupe
Un groupe possède un nom, une icône (un SF Symbol, par défaut folder.fill) et une couleur personnalisée facultative. Ceux-ci sont indépendants des personnalisations propres à l'espace de travail d'ancrage. La couleur et l'icône de l'ancrage sont initialisées à partir du groupe lors de la création, mais elles peuvent ensuite diverger.
#Épinglage
Les groupes peuvent être épinglés indépendamment des épinglages d'espaces de travail individuels. Les lignes de premier niveau épinglées, qu'il s'agisse d'espaces de travail individuels ou de groupes, restent au-dessus des lignes non épinglées. Au sein de chaque niveau, les groupes et les espaces de travail conservent l'ordre dans lequel vous les faites glisser.
La barre latérale dispose les lignes de premier niveau de haut en bas :
- Lignes de premier niveau épinglées (espaces de travail et groupes).
- Lignes de premier niveau non épinglées (espaces de travail et groupes).
#Créer un groupe
Un groupe se crée de deux manières : par un raccourci clavier ou par le menu contextuel d’un workspace. Les deux insèrent un nouveau workspace d’ancrage au-dessus de la sélection et déplacent les workspaces sélectionnés dans le groupe. Une fois le groupe créé, vous le gérez et y ajoutez des workspaces depuis l’en-tête du groupe (voir Gérer un groupe ci-dessous).
#Depuis le clavier (⌘⇧G)
Sélectionnez deux espaces de travail ou plus dans la barre latérale, puis appuyez sur ⌘⇧G. Un nouvel espace de travail d'ancrage est inséré au-dessus de la sélection et tous les espaces de travail sélectionnés deviennent des enfants. Le groupe est automatiquement nommé Group 1, Group 2, et ainsi de suite — renommez-le à tout moment via le menu contextuel de l'en-tête.
Les groupes à onglet unique ne sont pas créés depuis le raccourci. Utilisez pour cela l'entrée Nouveau groupe depuis cet espace de travail du menu contextuel de l'espace de travail.
#Depuis un menu contextuel d'espace de travail
Faites un clic droit sur n'importe quel espace de travail dans la barre latérale et choisissez Nouveau groupe depuis cet espace de travail, ou Nouveau groupe depuis la sélection lorsque plusieurs espaces de travail sont sélectionnés. Cela utilise le même comportement de nommage automatique que le raccourci.
#Gérer un groupe
Une fois le groupe créé, le menu contextuel de son en-tête et le bouton + de l’en-tête vous permettent de gérer le groupe et d’y ajouter des workspaces. Aucune de ces actions ne crée de nouveau groupe.
#Depuis le menu contextuel de l'en-tête de groupe
Faites un clic droit sur l'en-tête d'un groupe existant pour Renommer le groupe…, Épingler le groupe / Désépingler le groupe, Modifier la configuration du groupe… (qui ouvre ~/.config/cmux/cmux.json), Ouvrir la documentation des groupes, Dissocier (conserver les espaces de travail), et Supprimer le groupe (fermer les espaces de travail). La suppression est destructive et demande une confirmation ; la dissociation conserve les espaces de travail et supprime simplement le conteneur.
#Depuis le bouton + sur un en-tête de groupe
Survolez l'en-tête d'un groupe pour faire apparaître un bouton + à la fin. Cliquez dessus pour créer un nouvel espace de travail dans le groupe au répertoire de travail d'ancrage. Faites un clic droit dessus pour Nouvel espace de travail dans le groupe, Modifier la configuration du groupe…, et Ouvrir la documentation des groupes.
Appuyer sur ⌘N lorsque l'espace de travail actif est un ancrage ou un membre de groupe crée également le nouvel espace de travail à l'intérieur de ce groupe. Le placement par défaut est After current : depuis un membre de groupe ordinaire, le nouvel espace de travail se place juste après le membre actif, et depuis l'ancrage ou l'en-tête, il se place en haut du groupe.
#CLI
Toutes les opérations de groupe sont scriptables avec les sous-commandes cmux workspace-group. La forme avec trait d'union est livrée en premier ; une fois que l'espace de noms de commandes plus large cmux workspace sera disponible, cmux workspace group deviendra la forme canonique, la forme avec trait d'union étant conservée comme alias pour toujours.
#Sous-commandes
cmux workspace-group list [--json]
cmux workspace-group create --name "manaflow" [--cwd ~/projects/manaflow] [--from <id>,<id>]
cmux workspace-group ungroup <group-id>
cmux workspace-group delete <group-id>
cmux workspace-group rename <group-id> --name "new name"
cmux workspace-group collapse <group-id>
cmux workspace-group expand <group-id>
cmux workspace-group pin <group-id>
cmux workspace-group unpin <group-id>
cmux workspace-group add --group <group-id> --workspace <workspace-id>
cmux workspace-group remove --workspace <workspace-id>
cmux workspace-group set-anchor --group <group-id> --workspace <workspace-id>
cmux workspace-group new-workspace <group-id> [--placement afterCurrent|top|end]
cmux workspace-group set-color <group-id> --hex "#7A4FD8"
cmux workspace-group set-icon <group-id> --symbol ladybug.fill
cmux workspace-group move <group-id> (--to-index <n> | --before <group-id> | --after <group-id>)
cmux workspace-group focus <group-id>create renvoie un identifiant de groupe (workspace_group:N par défaut). Passez --json pour la charge utile structurée complète.
Passez une valeur vide à set-color ou set-icon pour effacer la couleur ou l'icône du groupe. delete est irréversible : il ferme chaque espace de travail membre.
#Exemples
Regrouper les espaces de travail actuellement sélectionnés sous un nom :
cmux workspace-group create --name manaflowCréer un nouvel espace de travail à l'intérieur d'un groupe existant, par exemple connecté à un script de worktree :
cmux workspace-group new-workspace workspace_group:1Lister les groupes dans la fenêtre active :
cmux workspace-group list#Configuration
La configuration par groupe se trouve sous la clé workspaceGroups dans ~/.config/cmux/cmux.json, indexée par le répertoire de travail du workspace d'ancrage. Consultez la référence de configuration pour connaître les clés prises en charge, y compris le placement global des nouveaux workspaces ainsi que la couleur, l'icône, le placement et les actions du menu contextuel par répertoire.
référence de configuration workspaceGroups
#Persistance
Le nom du groupe, l'ancrage, l'état d'épinglage, l'état de repliement, la couleur et l'icône sont enregistrés avec vos espaces de travail et restaurés entre les lancements. L'appartenance à un groupe est stockée sur chaque espace de travail.