#Grupy workspace'ów
Grupy workspace'ów pozwalają zagnieżdżać workspace'y w zwijanych, nazwanych sekcjach w pasku bocznym. Każda grupa ma niejawny kotwicowy workspace, konfigurowalny przycisk + do tworzenia nowych workspace'ów w jej wnętrzu oraz akcje dostępne po kliknięciu prawym przyciskiem do zmiany nazwy, przypinania, rozgrupowywania i edycji jej konfiguracji.
#Koncepty
#Kotwicowy workspace
Każda grupa należy do dokładnie jednego workspace'a zwanego kotwicą. Nagłówek grupy w pasku bocznym jest reprezentacją kotwicy — nie ma dla niej osobnego wiersza. Kliknięcie obszaru nazwy w nagłówku ustawia fokus na panelach kotwicy; kliknięcie strzałki przełącza zwinięcie.
Kotwice są zawsze całkowicie nowe w momencie utworzenia grupy. Nigdy nie są awansowane z istniejącego workspace'a. Katalog roboczy kotwicy jest dziedziczony z pierwszego zaznaczonego workspace'a przy grupowaniu zaznaczenia lub z aktywnego workspace'a przy tworzeniu za pomocą CLI bez --cwd.
Zamknięcie kotwicowego workspace'a rozwiązuje grupę: każdy pozostały członek staje się niezgrupowanym workspace'em i pozostaje na liście kart. Nic poza samą kotwicą nie jest zamykane. Przed tym aplikacja wyświetla okno potwierdzenia z przełącznikiem „Nie pytaj ponownie”.
#Tożsamość grupy
Grupa ma nazwę, ikonę (SF Symbol, domyślnie folder.fill) oraz opcjonalny niestandardowy kolor. Są one niezależne od własnych dostosowań kotwicowego workspace'a. Kolor i ikona kotwicy są przy tworzeniu inicjowane z grupy, ale później mogą się różnić.
#Przypinanie
Grupy można przypinać niezależnie od przypięć poszczególnych workspace'ów. Przypięte wiersze najwyższego poziomu, niezależnie od tego, czy są to pojedyncze workspace'y, czy grupy, pozostają nad wierszami nieprzypiętymi. W obrębie każdego poziomu grupy i workspace'y zachowują kolejność, w jakiej je przeciągniesz.
Pasek boczny układa wiersze najwyższego poziomu od góry do dołu:
- Przypięte wiersze najwyższego poziomu (workspace'y i grupy).
- Nieprzypięte wiersze najwyższego poziomu (workspace'y i grupy).
#Tworzenie grupy
Grupę tworzy się ze skrótu klawiaturowego lub menu kontekstowego paska bocznego. Puste grupy wstawiają nową kotwiczną przestrzeń roboczą jako nagłówek grupy. Grupy oparte na zaznaczeniu wstawiają tę kotwicę nad zaznaczeniem i przenoszą wybrane przestrzenie robocze do grupy. Gdy grupa już istnieje, zarządzasz nią i dodajesz do niej przestrzenie robocze z nagłówka grupy (zobacz Zarządzanie grupą poniżej).
#Ze skrótów klawiaturowych
Naciśnij ⌃⌘G, aby utworzyć nową pustą grupę przestrzeni roboczych. Zaznacz co najmniej dwie przestrzenie robocze na pasku bocznym, a następnie naciśnij ⌘⇧G, aby zgrupować zaznaczenie. Obie ścieżki tworzą nową kotwiczną przestrzeń roboczą i automatycznie nazywają grupę Group 1, Group 2 itd. Możesz zmienić nazwę w dowolnym momencie z menu kontekstowego nagłówka.
Grupy jednokartowe nie są tworzone za pomocą skrótu. W tym celu użyj pozycji „Nowa grupa z przestrzeni” w menu kontekstowym przestrzeni roboczej.
#Z menu kontekstowego workspace'a
Kliknij prawym przyciskiem dowolną przestrzeń roboczą na pasku bocznym i wybierz Nowa pusta grupa przestrzeni roboczych, Nowa grupa z przestrzeni roboczej albo Nowa grupa z zaznaczenia, gdy zaznaczono wiele przestrzeni roboczych. Pusty obszar pod listą paska bocznego także oferuje Nowa pusta grupa przestrzeni roboczych. Te ścieżki używają tego samego automatycznego nazewnictwa co skróty.
#Zarządzanie grupą
Gdy grupa już istnieje, menu kontekstowe jej nagłówka oraz przycisk + w nagłówku umożliwiają zarządzanie grupą i dodawanie do niej workspace’ów. Żadne z nich nie tworzy nowej grupy.
#Z menu kontekstowego nagłówka grupy
Kliknij prawym przyciskiem nagłówek istniejącej grupy, aby uzyskać dostęp do „Zmień nazwę grupy…”, „Przypnij grupę / Odepnij grupę”, „Edytuj konfigurację grupy…” (które otwiera ~/.config/cmux/cmux.json), „Otwórz dokumentację grup przestrzeni”, „Rozgrupuj przestrzenie” oraz „Usuń grupę”. Rozgrupuj przestrzenie zachowuje przestrzenie robocze i usuwa tylko kontener grupy. Usuń grupę zamyka przestrzeń roboczą nagłówka grupy oraz wszystkie przestrzenie w grupie; jeśli grupa zawiera przestrzenie podrzędne, najpierw wymaga potwierdzenia.
#Z przycisku + na nagłówku grupy
Najedź na nagłówek grupy, aby odsłonić końcowy przycisk +. Kliknij go, aby utworzyć nową przestrzeń roboczą w grupie w katalogu roboczym kotwicy. Kliknij go prawym przyciskiem, aby uzyskać dostęp do „Nowa przestrzeń w grupie”, „Edytuj konfigurację grupy…” oraz „Otwórz dokumentację grup przestrzeni”.
Naciśnięcie ⌘N, gdy aktywny workspace jest kotwicą lub członkiem grupy, również tworzy nowy workspace wewnątrz tej grupy. Domyślne umiejscowienie to After current: z poziomu zwykłego członka grupy nowy workspace pojawia się tuż za aktywnym członkiem, a z poziomu kotwicy lub nagłówka pojawia się na górze grupy.
#CLI
Wszystkie operacje na grupach można skryptować za pomocą podkomend cmux workspace-group. Forma z łącznikiem pojawia się jako pierwsza; gdy tylko pojawi się szersza przestrzeń nazw poleceń cmux workspace, cmux workspace group stanie się formą kanoniczną, a forma z łącznikiem zostanie na zawsze zachowana jako alias.
#Podpolecenia
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 zwraca uchwyt grupy (domyślnie workspace_group:N). Przekaż --json, aby uzyskać pełny, ustrukturyzowany ładunek.
Przekaż do set-color lub set-icon pustą wartość, aby wyczyścić kolor lub ikonę grupy. delete jest nieodwracalne: zamyka każdą przestrzeń roboczą należącą do grupy.
#Przykłady
Zgrupuj aktualnie zaznaczone workspace'y pod jedną nazwą:
cmux workspace-group create --name manaflowUtwórz nowy workspace wewnątrz istniejącej grupy, na przykład powiązany ze skryptem worktree:
cmux workspace-group new-workspace workspace_group:1Wyświetl listę grup w aktywnym oknie:
cmux workspace-group list#Konfiguracja
Konfiguracja poszczególnych grup znajduje się pod kluczem workspaceGroups w ~/.config/cmux/cmux.json, indeksowana według katalogu roboczego kotwicowego workspace. Obsługiwane klucze, w tym globalne rozmieszczanie nowych workspace oraz kolor, ikonę, rozmieszczenie i akcje menu kontekstowego dla poszczególnych katalogów, znajdziesz w dokumentacji konfiguracji.
dokumentacja konfiguracji workspaceGroups
#Trwałość
Nazwa grupy, kotwica, stan przypięcia, stan zwinięcia, kolor i ikona są zapisywane razem z Twoimi workspace'ami i przywracane między uruchomieniami. Przynależność do grupy jest przechowywana w każdym workspace'ie.