Konsepter

cmux organiserer terminalene dine i et hierarki med fire nivåer. Å forstå disse nivåene hjelper når du bruker socket-API, CLI og tastatursnarveier.

Hierarki

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

Vindu

Et macOS-vindu. Åpne flere vinduer med ⌘⇧N. Hvert vindu har sitt eget sidefelt med uavhengige arbeidsområder.

Arbeidsområde

En oppføring i sidefeltet. Hvert arbeidsområde inneholder ett eller flere delte paneler. Arbeidsområder er det du ser i venstre sidefelt.

I brukergrensesnittet og tastatursnarveier kalles arbeidsområder ofte "faner" fordi de oppfører seg som faner i sidefeltet. Socket-API og miljøvariabler bruker termen "workspace".

KontekstBegrep brukt
Sidefelt-UIFane
TastatursnarveierArbeidsområde eller fane
Socket-APIworkspace
MiljøvariabelCMUX_WORKSPACE_ID

Snarveier: ⌘N (ny), ⌘1–⌘9 (hopp), ⌘⇧W (lukk), ⌃⌘[ / ⌃⌘] (forrige/neste)

Panel

Et delt område innenfor et arbeidsområde. Opprettet ved å dele med ⌘D (høyre) eller ⌘⇧D (ned). Naviger mellom paneler med ⌥⌘ + piltaster.

Hvert panel kan inneholde flere overflater (faner innenfor panelet).

Overflate

En fane innenfor et panel. Hvert panel har sin egen fanelinje og kan inneholde flere overflater. Opprettet med ⌘T, naviger med ⌘[ / ⌘] eller ⌃1–⌃9.

Overflater er de individuelle terminal- eller nettleseøktene du samhandler med. Hver overflate har sin egen CMUX_SURFACE_ID miljøvariabel.

Panel

Innholdet inne i en overflate. For tiden to typer:

  • Terminal: en Ghostty-terminaløkt
  • Nettleser: en innebygd webvisning

Panel er hovedsakelig et internt konsept. I socket-API og CLI samhandler du med overflater i stedet for paneler direkte.

Visuelt eksempel

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

I dette eksempelet:

  • Vinduet inneholder et sidefelt med tre arbeidsområder (dev, server, logs)
  • Arbeidsområdet "dev" er valgt og viser to paneler side om side
  • Panel 1 har to overflater ([S1] og [S2] i fanelinjen), med S1 aktiv
  • Panel 2 har én overflate
  • Hver overflate inneholder et panel (en terminal i dette tilfellet)

Oppsummering

NivåHva det erOpprettet avIdentifisert av
VindumacOS-vindu⌘⇧N
ArbeidsområdeSidefeltoppføring⌘NCMUX_WORKSPACE_ID
PanelDelt område⌘D / ⌘⇧DPanel-ID (socket-API)
OverflateFane i panel⌘TCMUX_SURFACE_ID
PanelTerminal eller nettleserAutomatiskPanel-ID (intern)