>_ DevTrendspl

Język

Strona główna

Języki

Sekcje

DevOps
C

Yabai — kiedy macOS staje się mądrzejszy, a Twoje biurko doskonalsze

29 187 gwiazdki

Znana sytuacja: jesteś programistą, a ekran Twojego Maca jest stale zaśmiecony oknami. IDE, terminal, przeglądarka, dokumentacja, komunikatory... Przełączanie się między nimi, ciągłe zmienianie rozmiaru, szukanie odpowiedniego okna — to nie tylko marnuje czas, ale też Cię wyczerpuje. Wydaje się, że macOS nie zawsze radzi sobie z tym zadaniem tak, jak chciałby wymagający użytkownik. I tu właśnie pojawia się yabai — projekt, który obiecuje wprowadzić porządek na Twoim biurku, zamieniając chaos w harmonię.

Czym jest Yabai i dlaczego programista go potrzebuje?

yabai to nie tylko narzędzie, to w pełni funkcjonalny menedżer okien kafelkowych dla macOS, który działa jako rozszerzenie wbudowanego systemu zarządzania oknami. Wyobraź sobie, że Twoje biurko przestaje być tylko „miejscem na okna" i zamienia się w inteligentny system, który sam dba o rozmieszczenie każdej aplikacji. Brzmi kusząco, prawda?

Główna idea yabai to automatyczne rozmieszczanie okien. Zamiast ręcznie przeciągać i zmieniać rozmiar, yabai wykorzystuje algorytm Binary Space Partitioning (BSP). Oznacza to, że automatycznie dzieli dostępną przestrzeń na ekranie i umieszcza okna tak, aby wykorzystywały ją jak najefektywniej, bez nakładania się i niepotrzebnych przerw. To jak posiadanie osobistego asystenta, który stale utrzymuje Twoje biurko w porządku.

Komu jest to potrzebne? Przede wszystkim programistom, administratorom systemów, projektantom — wszystkim, którzy spędzają dużo czasu przy komputerze i pracują jednocześnie z dziesiątkami aplikacji. Jeśli cenisz szybkość, efektywność i minimalne ruchy myszką, yabai może stać się Twoim najlepszym przyjacielem.

Kluczowe funkcje: sekrety produktywności

yabai nie tylko „układa okna", oferuje cały arsenał funkcji do precyzyjnego dostosowania Twojego sposobu pracy.

1. Inteligentne zarządzanie kafelkami

Jak już wspomniałem, sercem yabai jest algorytm BSP. Gwarantuje on, że Twoje okna zawsze będą schludnie rozmieszczone, wypełniając ekran bez nakładania się. Otwierasz nowe okno? yabai znajdzie dla niego miejsce. Zamykasz jedno? Pozostałe okna natychmiast się reorganizują, zajmując zwolnioną przestrzeń. To jak posiadanie osobistego asystenta, który stale utrzymuje Twoje biurko w porządku.

2. Pełna kontrola przez linię poleceń i klawisze skrótów

Jedną z najsilniejszych stron yabai jest jego CLI. Możesz zarządzać oknami, przestrzeniami, a nawet wyświetlaczami za pomocą prostych poleceń. A jeśli dodasz do tego narzędzie skhd (lub dowolne inne narzędzie do skrótów klawiszowych), możesz przenieść cały swój workflow na klawiaturę. Zapomnij o myszce! Przenieś okno na inne biurko, zmień jego rozmiar, przełącz się na kolejną aplikację — wszystko to za jednym naciśnięciem klawisza.

Oto przykłady poleceń, których możesz użyć:

# Przenieś fokus na następne okno
yabai -m window --focus next

# Przenieś bieżące okno do innej przestrzeni
yabai -m window --space next

# Zmień tryb kafelkowy dla bieżącej przestrzeni
yabai -m space --layout bsp # lub float

Takie podejście pozwala stworzyć naprawdę spersonalizowane i błyskawiczne środowisko pracy.

3. Rozszerzanie możliwości macOS

yabai wykracza poza proste kafelkowanie, dodając funkcje, których tak bardzo brakuje w standardowym macOS:

  • Focus-follows-mouse: Okno, nad którym zatrzymasz kursor myszy, automatycznie staje się aktywne. Mała rzecz, ale ile oszczędza kliknięć!
  • Wyłączanie animacji: Przyspiesz przełączanie między przestrzeniami, pozbywając się standardowych animacji macOS.
  • Więcej niż 16 przestrzeni: Jeśli standardowy limit macOS na liczbę biurek nie jest dla Ciebie wystarczający, yabai usuwa to ograniczenie. Jest to szczególnie przydatne dla osób, które dzielą pracę według projektów lub zadań na oddzielne wirtualne biurka.

Niuansy techniczne i instalacja

yabai jest napisany w C i działa jako niskopoziomowe rozszerzenie systemowe. Do jego działania wymagany jest dostęp do Accessibility API, a dla niektórych zaawansowanych funkcji (takich jak pełna kontrola nad serwerem okien) może być wymagane częściowe wyłączenie System Integrity Protection (SIP). Ważne jest, aby zrozumieć, że wyłączenie SIP to poważny krok, któremu towarzyszą pewne ryzyka bezpieczeństwa dla systemu, dlatego należy podchodzić do tego świadomie i dopiero po dokładnym przestudiowaniu dokumentacji.

Instalacja yabai jest dość prosta i dobrze opisana w wiki projektu. Zazwyczaj sprowadza się do instalacji przez Homebrew, a następnie skonfigurowania praw dostępu. Nie zapomnij przejrzeć przykładowych plików konfiguracyjnych w repozytorium, aby szybko rozpocząć pracę.

Praktyczne zastosowanie: jak Yabai zmieni Twój dzień pracy

Wyobraź sobie swój typowy dzień pracy.

  • Rano, kod i dokumentacja: Otwierasz VS Code (lub inne IDE), terminal i przeglądarkę z dokumentacją. Zamiast ręcznie je rozmieszczać, yabai sam układa je w wygodnej siatce. Możesz szybko przełączać się między nimi, nie odrywając się od zarządzania oknami.
  • Wielozadaniowość na najwyższym poziomie: Musisz jednocześnie monitorować logi w jednym terminalu, pisać kod w drugim, odpowiadać w Slacku i przeglądać projekty w Figmie. yabai pozwala Ci widzieć wszystkie te okna, efektywnie wykorzystując każdy piksel ekranu.
  • Prezentacje i demo: Kiedy musisz szybko pokazać coś koledze, yabai pomaga błyskawicznie zorganizować potrzebne okna, nie tracąc czasu na ich wyrównywanie.

Z mojego doświadczenia wynika, że korzystanie z menedżera kafelkowego znacząco redukuje obciążenie poznawcze. Mózg przestaje wydawać zasoby na „gdzie jest to okno?