Kavramlar
cmux, terminallerinizi dört seviyeli bir hiyerarşi içinde düzenler. Bu seviyeleri anlamak, socket API, CLI ve klavye kısayollarını kullanırken yardımcı olur.
Hiyerarşi
Window
└── Workspace (sidebar entry)
└── Pane (split region)
└── Surface (tab within pane)
└── Panel (terminal or browser content)Pencere
Bir macOS penceresi. ⌘⇧N ile birden fazla pencere açın. Her pencerenin bağımsız çalışma alanlarıyla kendi kenar çubuğu vardır.
Çalışma alanı
Bir kenar çubuğu girişi. Her çalışma alanı bir veya daha fazla bölünmüş panel içerir. Çalışma alanları, sol kenar çubuğunda listelenen şeylerdir.
Arayüzde ve klavye kısayollarında çalışma alanları, kenar çubuğunda sekmeler gibi davrandıkları için genellikle "sekmeler" olarak adlandırılır. Socket API ve ortam değişkenleri "workspace" terimini kullanır.
| Bağlam | Kullanılan terim |
|---|---|
| Kenar çubuğu arayüzü | Sekme |
| Klavye kısayolları | Çalışma alanı veya sekme |
| Socket API | workspace |
| Ortam değişkeni | CMUX_WORKSPACE_ID |
Kısayollar: ⌘N (yeni), ⌘1–⌘9 (atla), ⌘⇧W (kapat), ⌃⌘[ / ⌃⌘] (önceki/sonraki)
Panel
Bir çalışma alanı içinde bölünmüş bir alan. ⌘D (sağ) veya ⌘⇧D (aşağı) ile bölerek oluşturulur. ⌥⌘ + ok tuşları ile paneller arasında gezinin.
Her panel birden fazla yüzey (panel içi sekmeler) barındırabilir.
Yüzey
Bir panel içindeki sekme. Her panelin kendi sekme çubuğu vardır ve birden fazla yüzey barındırabilir. ⌘T ile oluşturulur, ⌘[ / ⌘] veya ⌃1–⌃9 ile gezinilir.
Yüzeyler, etkileşim kurduğunuz bireysel terminal veya tarayıcı oturumlarıdır. Her yüzeyin kendi CMUX_SURFACE_ID ortam değişkeni vardır.
Panel
Bir yüzeyin içindeki içerik. Şu anda iki tür:
- Terminal: bir Ghostty terminal oturumu
- Tarayıcı: gömülü bir web görünümü
Panel çoğunlukla dahili bir kavramdır. Socket API ve CLI'de, panellerle değil yüzeylerle doğrudan etkileşim kurarsınız.
Görsel örnek
┌──────────────────────────────────────────────────────┐
│ ┌──────────┐ ┌─────────────────────────────────────┐ │
│ │ Sidebar │ │ Workspace "dev" │ │
│ │ │ │ │ │
│ │ │ │ ┌───────────────┬─────────────────┐ │ │
│ │ > dev │ │ │ Pane 1 │ Pane 2 │ │ │
│ │ server │ │ │ [S1] [S2] │ [S1] │ │ │
│ │ logs │ │ │ │ │ │ │
│ │ │ │ │ Terminal │ Terminal │ │ │
│ │ │ │ │ │ │ │ │
│ │ │ │ └───────────────┴─────────────────┘ │ │
│ └──────────┘ └─────────────────────────────────────┘ │
└──────────────────────────────────────────────────────┘Bu örnekte:
- Pencere, üç çalışma alanı (dev, server, logs) olan bir kenar çubuğu içerir
- "dev" çalışma alanı seçilmiş, yan yana iki panel gösteriyor
- Panel 1'de iki yüzey var (sekme çubuğunda [S1] ve [S2]), S1 aktif
- Panel 2'de bir yüzey var
- Her yüzey bir panel içerir (bu durumda bir terminal)
Özet
| Seviye | Ne olduğu | Oluşturan | Tanımlayan |
|---|---|---|---|
| Pencere | macOS penceresi | ⌘⇧N | — |
| Çalışma alanı | Kenar çubuğu girişi | ⌘N | CMUX_WORKSPACE_ID |
| Panel | Bölünmüş alan | ⌘D / ⌘⇧D | Panel ID (socket API) |
| Yüzey | Panel içi sekme | ⌘T | CMUX_SURFACE_ID |
| Panel | Terminal veya tarayıcı | Otomatik | Panel ID (dahili) |