- macOS पर इस्तेमाल किया जा सकने वाला एक ओपन सोर्स टाइलिंग विंडो मैनेजर, जिसे परफॉर्मेंस और उपयोगिता पर फोकस करके विकसित किया जा रहा है
- System Integrity Protection (SIP) को disable किए बिना काम करता है, और macOS के "Displays have separate Spaces" विकल्प के साथ संगत कुछ गिने-चुने विंडो मैनेजरों में से एक है
- i3/sway और bspwm जैसे विभिन्न लेआउट स्टाइल्स को सपोर्ट करता है
- Mission Control स्टाइल workspace नेविगेशन और trackpad gestures जैसे macOS native environment के साथ स्वाभाविक इंटीग्रेशन प्रदान करता है
- Animation performance और user experience पर ज़ोर देता है, तथा settings hot reload और external programs के साथ integration इसकी खास विशेषताएँ हैं
- macOS के लिए मौजूदा टाइलिंग विंडो मैनेजर Aerospace की कुछ खूबियों (परफॉर्मेंस, flexibility आदि) को आगे बढ़ाते हुए, animation सपोर्ट और multi-display में केवल एक डिस्प्ले को fullscreen में इस्तेमाल करने जैसी अतिरिक्त सुविधाओं का लक्ष्य रखता है
मुख्य विशेषताएँ
- कई लेआउट स्टाइल्स: i3 या sway की तरह विंडो को ग्रिड रूप में व्यवस्थित करना, या bspwm स्टाइल binary space partitioning तरीका सपोर्ट करता है
- मेन्यू बार आइकन: सभी workspaces और हर workspace के भीतर लेआउट की स्थिति को विज़ुअली दिखाता है
- macOS Mission Control स्टाइल नेविगेशन: workspaces के बीच स्विचिंग को विज़ुअली और आसानी से मैनेज किया जा सकता है
- माउस फोकस auto-switch और auto-raise फीचर प्रदान करता है
- विंडो drag करने पर position swap संभव है, और animations स्मूद तरीके से चलती हैं
- Trackpad gestures का उपयोग करने पर macOS native की तरह workspace switching संभव है
- चलते समय settings बदलना (hot reload) सपोर्ट करता है, जिससे real-time configuration बहुत आसान हो जाती है
- Sketchybar जैसे third-party programs के साथ interface, तथा CLI या mach port के जरिए integration सपोर्ट
- workspace बदलने या विंडो में बदलाव होने पर signals बाहर भेजे जा सकते हैं, और signals को CLI या mach connection के जरिए transmit किया जा सकता है
- Rust भाषा में 100% विकसित
1 टिप्पणियां
Hacker News राय
मैं पहले i3 का बहुत ज़्यादा इस्तेमाल करता था। i3 बेहद flexible था और उसकी configuration भी काफी खुली थी, इसलिए उससे सिर्फ़ विंडो इधर-उधर करना ही नहीं, उससे कहीं ज़्यादा किया जा सकता था। लेकिन Mac पर आने के बाद मुझे ऐसा कोई tiling window manager नहीं मिला जिसमें फीचर भी बहुत हों और stability भी हो। मैंने कई options आज़माए, और अब बस Rectangle इस्तेमाल करता हूँ। Rectangle असल में कोई window manager नहीं है, बल्कि सिर्फ़ shortcuts देता है जिनसे विंडो को बाएँ/दाएँ/ऊपर/नीचे या 3/4/6 हिस्सों में आसानी से ले जाया जा सके। यह मेरे usage pattern के लगभग 80% हिस्से को cover कर देता है, custom configuration की भी ज़रूरत नहीं पड़ती, और कोई अनपेक्षित behavior भी नहीं होता, इसलिए मैं इससे खुश हूँ। उम्र बढ़ने के साथ बहुत सारी custom settings पर समय लगाना भी मुश्किल लगता है। Rectangle आधिकारिक साइट
5k/6k display पर सामान्य tiling की अपनी सीमाएँ हैं—विंडो बहुत बड़ी हो जाती हैं। इसलिए मुझे लगता है कि moon जैसी apps कहीं बेहतर हैं। Windows पर Moom जैसी app नहीं है, इसलिए मैं komorebi जैसा tiling manager इस्तेमाल करता हूँ। जो लोग कई operating systems और devices के बीच आते-जाते रहते हैं, उनके लिए यह अफसोस की बात है कि rift generic alt+hjkl जैसे key bindings को support नहीं करता। ultra-high-resolution या ultrawide monitors पर इस तरह की window placement लगभग ज़रूरी लगती है (komorebi में यह support है)
बहुत से लोगों के लिए यह काफ़ी नहीं होगा, लेकिन मेरी तरह अगर आप Mac पर ज़्यादातर समय सिर्फ़ एक विंडो इस्तेमाल करते हैं, या external monitor जोड़ने पर ही दो स्क्रीन इस्तेमाल करते हैं, तो यह built-in feature ही काफ़ी है MacOS आधिकारिक window split guide (मैं कोई heavy tiling user नहीं हूँ)
macOS में fullscreen और trackpad gestures इसलिए इतने आकर्षक लगते हैं क्योंकि ज़्यादातर मामलों में आप सिर्फ़ एक ही विंडो में काम कर रहे होते हैं। लेकिन जब terminal, editor, browser DevTools, logs और documents जैसी कई विंडो एक साथ खुली हों, तब layout की predictability बेहद महत्वपूर्ण हो जाती है। tiling tools सिर्फ़ दो विंडो को साथ-साथ रखने के लिए नहीं होते, बल्कि
मैं Mac पर Rectangle या Moom से लगभग 80% ज़रूरतें पूरी कर लेता हूँ, और बाकी के लिए Aerospace या Rift इस्तेमाल करता हूँ। जब विंडो की संख्या या switching frequency बढ़ जाती है, तब tiling window manager की उपयोगिता साफ़ दिखती है
एक समय मैंने अपना खुद का window manager बनाने की कोशिश की थी, लेकिन macOS में कोई ढंग का API नहीं है, इसलिए जल्दी ही छोड़ दिया। व्यवहार में accessibility API को hack करके ही काम चलाना पड़ता है। यह project भी Objective C bindings और accessibility API का इस्तेमाल करता है, इसलिए जिज्ञासा है कि debugging, feature implementation या रोज़मर्रा के काम के लिए आपने मुख्य रूप से कौन-से tools इस्तेमाल किए
मैंने भी हाल ही में Aerospace को अपने हिसाब से सेट करने में काफ़ी yak shaving झेला। जब बहुत सारे shortcuts आपस में टकराते हैं, तो लोग आम तौर पर इसे कैसे संभालते हैं, यह जानना चाहता हूँ। मुझे hjkl combinations की आदत है, इसलिए स्वाभाविक रूप से मैं ज़्यादातर mapping उसी पर करना चाहता हूँ, और Aerospace का modal feature shortcut conflicts को कुछ हद तक संभाल लेता है। आखिर लोग अपना setup किस तरह final करते हैं?
Hammerspoon का इस्तेमाल करके अपना खुद का window manager बनाया जा सकता है। मुझे Divvy का modal तरीका (जहाँ single command key से layout बदला जाता है) पसंद है, लेकिन अफसोस कि अब उसका maintenance नहीं हो रहा। इसलिए मैंने OpenAI Codex से अपना modal window manager बनवाया hammerspoon के लिए window manager source code। ऐसा approach साझा करना मज़ेदार हो सकता है!
अगर आप MacBook trackpad user हैं, तो Swish किसी भी app से कहीं आगे है Swish आधिकारिक साइट
क्या किसी ने इसे (nix flake) से set up किया है? yabai के बाद से मैं कई window managers test कर रहा हूँ, लेकिन Aerospace में शायद event handling की वजह से, खासकर जब sketchybar में अच्छे workspace indicators दिखाने हों, कभी-कभी lag हो जाता है। अगली बार शायद इसे (rift) भी आज़माऊँ
मुझे समझ नहीं आता कि macOS पर tiling windows की ज़रूरत क्यों पड़ती है। विंडो को साथ-साथ रखने की ज़रूरत आखिर कितनी बार पड़ती है? ज़्यादातर apps को fullscreen में रखकर 4-finger swipe से switch करना काफ़ी नहीं है? कोई मुझे समझाए