ОсновиОсновні поняття
Основи

Основні поняття

cmux упорядковує ваші термінали в чотирирівневу ієрархію. Розуміння цих рівнів допомагає під час роботи з socket API, CLI та клавіатурними скороченнями.

Ієрархія

Window
  └── Workspace (sidebar entry)
        └── Pane (split region)
              └── Surface (tab within pane)
                    └── Panel (terminal or browser content)

Вікно

Вікно macOS. Щоб відкрити ще одне вікно, натисніть ⌘⇧N. У кожного вікна своя бічна панель і свої робочі простори.

Робочий простір

Запис у бічній панелі. Кожен робочий простір містить одну або кілька розділених панелей. Робочі простори — це те, що ви бачите у списку в лівій бічній панелі.

В інтерфейсі та клавіатурних скороченнях робочі простори часто називають "вкладками", бо в бічній панелі вони поводяться як вкладки. socket API і змінні середовища використовують термін "робочий простір" (workspace).

КонтекстВикористовуваний термін
Інтерфейс бічної панеліВкладка
Клавіатурні скороченняРобочий простір або вкладка
Socket APIworkspace
Змінна середовищаCMUX_WORKSPACE_ID

Скорочення: ⌘N (новий), ⌘1–⌘9 (перейти), ⌘⇧W (закрити), ⌃⌘[ / ⌃⌘] (попередній/наступний)

Панель

Розділена область у робочому просторі. Створюється розділенням через ⌘D (праворуч) або ⌘⇧D (донизу). Переходьте між панелями за допомогою ⌥⌘ + клавіш зі стрілками.

Кожна панель може містити кілька поверхонь (вкладок усередині панелі).

Поверхня

Вкладка всередині панелі. Кожна панель має власну панель вкладок і може містити кілька поверхонь. Створюється через ⌘T, перемикання — ⌘[ / ⌘] або ⌃1–⌃9.

Поверхні — це окремі сесії термінала або браузера, з якими ви працюєте. Кожна поверхня має власну змінну середовища CMUX_SURFACE_ID.

Панель вмісту

Вміст усередині поверхні. Наразі є два типи:

  • Термінал: сесія термінала Ghostty
  • Браузер: вбудоване вебпредставлення

Панель вмісту переважно є внутрішнім поняттям. У socket API і CLI ви працюєте з поверхнями, а не з панелями вмісту напряму.

Групи робочих просторів

Об'єднуйте пов'язані робочі простори у згортувані іменовані розділи на бічній панелі. Кожна група належить якірному робочому простору, її можна закріпити, перейменувати та призначити власну іконку й колір. Нові робочі простори можна створювати безпосередньо всередині групи з її заголовка.

Прочитати повний посібник із груп робочих просторів

Наочний приклад

┌──────────────────────────────────────────────────────┐
│ ┌──────────┐ ┌─────────────────────────────────────┐ │
│ │ Sidebar  │ │ Workspace "dev"                     │ │
│ │          │ │                                     │ │
│ │          │ │ ┌───────────────┬─────────────────┐ │ │
│ │ > dev    │ │ │ Pane 1        │ Pane 2          │ │ │
│ │   server │ │ │ [S1] [S2]     │ [S1]            │ │ │
│ │   logs   │ │ │               │                 │ │ │
│ │          │ │ │  Terminal     │  Terminal       │ │ │
│ │          │ │ │               │                 │ │ │
│ │          │ │ └───────────────┴─────────────────┘ │ │
│ └──────────┘ └─────────────────────────────────────┘ │
└──────────────────────────────────────────────────────┘

У цьому прикладі:

  • Вікно містить бічну панель із трьома робочими просторами (dev, server, logs)
  • Вибрано робочий простір "dev", у якому поруч показано дві панелі
  • Панель 1 має дві поверхні ([S1] і [S2] на панелі вкладок), активна S1
  • Панель 2 має одну поверхню
  • Кожна поверхня містить панель вмісту (у цьому випадку термінал)

Підсумок

РівеньЩо цеЯк створюєтьсяЯк ідентифікується
ВікноВікно macOS⌘⇧N—
Робочий простірЗапис у бічній панелі⌘NCMUX_WORKSPACE_ID
ПанельРозділена область⌘D / ⌘⇧DID панелі (socket API)
ПоверхняВкладка всередині панелі⌘TCMUX_SURFACE_ID
Панель вмістуТермінал або браузерАвтоматичноPanel ID (внутрішній)