Readit News logoReadit News
hamasho · 2 months ago
I used to be a heavy user of i3. It's very flexible and configurable, and you can do much more than just moving windows. But after I switched to Mac, I couldn't find a tiling window manager that was both feature-rich and stable. After trying several options, I just use Rectangle[1]. It's not a window manager; it only provides shortcuts for window placements like simply moving windows to left/right/top/bottom or splitting the screen into 3/4/6 sections and place windows. It covers 80% of my needs and there are no pitfalls or unexpected behavior, so now I'm happily using it. Another reason is that I'm getting old and tired of using very flexible software with tons of custom configs.

[1] https://rectangleapp.com/

dawnerd · 2 months ago
One thing rectangle does that I absolutely love is todo mode. I don’t actually use it for todo but having a windows set to always be visible and have the full window shortcut adjust based on that, cheffkiss.
jmpz · 2 months ago
Had to look this up : https://github.com/rxhanson/Rectangle/wiki/Todo-Mode Interesting!
asimovDev · 2 months ago
Shoutout to Rectangle for having Spectacle keybindings option. Maybe one day I will learn the normal ones but I am too used to them at this point
chrisweekly · 2 months ago
Similar experience and pov here -- but w/ Divvy^1 (not Rectangle).

1. https://mizage.com/divvy/

mieses · 2 months ago
So this app you recommend is not open source and does the same thing as Rectangle?
rwyinuse · 2 months ago
I too recommend Rectangle. It made transition from Linux significantly less painful.

Deleted Comment

Etheryte · 2 months ago
Maybe I misunderstand what you mean, on one hand you say you want a window manager that's feature rich, on the other you say you're tired of using very flexible software with tons of configs. Aren't those two at odds with one another?
pfg_ · 2 months ago
I wouldn't consider having good default configs and being feature-rich at odds with eachother. Ghostty is feature-rich but needs no config. There's no reason yabai needs to be so highly composable that it doesn't even have a hotkey listener by default and and instead points you to another piece of software that only translates hotkeys to shell commands and is no longer being maintained. i3 at least has a pretty usable default config.
exe34 · 2 months ago
flexible usually means "it does what I want".

tons of useless features means it does what other other people want.

reddit_clone · 2 months ago
Yep. Another long time rectangle user. I use multiple desktops (Spaces) and arrange windows ( browser window, emacs frame, iterm widow) for each task.

This makes context switching bearable when working on several things.

malkosta · 2 months ago
Rectangle+Apptivate made me stop looking for an i3 alternative, after years. The first for moving windows, the second for switching between them with super+number, just like i3.
SOLAR_FIELDS · 2 months ago
Have you tried BetterTouchTool? It is both feature rich and stable, I have been using it for over a decade

Dead Comment

Dead Comment

piskov · 2 months ago
With 5k/6k displays ordinary tiling is a joke: windows are too big. So apps like moon are far better option.

On Windows there is no such thing as Moom, so I use tiling manager like komorebi.

As a person switching between different OSs and devices, it’s a shame that rift seems to not use well-established key binding like alt+hjkl.

Also for 5k+ display (or ultrawide) this kind of window tiling is a must (which komorebi has)

    +-----+-----------+-----+
    |     |           |     |
    |     |           +-----+
    |     |           |     |
    |     |           +-----+
    |     |           |     |
    +-----+-----------+-----+
~Welp, I tried, but HN seems to render this not like I paste it~

Ygg2 · 2 months ago
If you indent your pasted stuff by four spaces, HN treats it as code. That might help.
bsnnkv · 2 months ago
komorebi is coming to macOS[1] soon :)

[1]: https://youtu.be/u3eJcsa_MJk?si=UnHjFXBsWir4QiTz

xwowsersx · 2 months ago
ooh nice. I'll have to check this out. I tried yabai and it just wasn't stable enough to use. Messed around with a few others and eventually gave up on the idea of a TWM on Mac altogether
shelled · 2 months ago
This might not be sufficient for a lot of folks and I do notice sometimes a bit of struggle here and there, but for someone like me who mostly uses one widnow at a time on the Mac, or two screens when I have a external monitor setup along wiht my laptop, this thing kinda does it for me (but then I have never been a heavy "tiling" user at all) – https://support.apple.com/en-in/guide/mac-help/mchl9674d0b0/...
kace91 · 2 months ago
Is this Tahoe exclusive? I had never seen it before.

Deleted Comment

jiehong · 2 months ago
no, those shortcuts also work on earlier versions
MaanuAir · 2 months ago
Thank you, I had no idea it existed !
duanhjlt · 2 months ago
I get why full-screen plus trackpad gestures feel great on macOS—if you mostly work in a single window, that’s enough. But when the workflow becomes multi-window (terminal, editor, browser DevTools, logs, docs), predictable layouts start to matter. Tiling tools aren’t just “put two windows side by side”—they: - Cut context-switching overhead: focus moves and rearrangements happen via keyboard without breaking flow. - Create reusable “work panels”: replicate the same layout across projects/spaces, so you don’t keep “placing windows.” - Make high-res displays useful: on 5K/6K or ultrawide, precise partitioning beats full-screen. My compromise on mac is “light management” (Rectangle/Moom with a handful of shortcuts) for ~80% of needs; when I need stronger workspace semantics, I use Aerospace/Rift. Not everyone needs tiling, but once window count and switching frequency rise, its value becomes obvious.
swapsCAPS · 2 months ago
I wanted to build my own window manager at some point, but was quickly scared away by the lack of a proper API on MacOS. You basically need to hack your way around it by using the accessibility API instead. I see this project uses Objective C bindings and the accessibility API and am wondering how easy it was to debug, write features and what kind of tooling was used for this.
bsnnkv · 2 months ago
The Accessibility framework is not what I would call a "hack" personally. It was quite well thought out and fully featured

I've spent the last month working on something similar in Rust with various macOS framework bindings and it's not really that scary

You don't really need anything other than a Rust dev env, rust-analyzer and a browser window with the Apple docs website and the objc2 crate docs.rs site open - no special XCode craziness required

palata · 2 months ago
Why in the world would you get downvoted for this?
cipehr · 2 months ago
Having just gone through really yak shaving Aerospace into a spot that I'm happy with, I'm curious how folks on here manage having so many overlapping keyboard shortcuts?

Maybe it's just me, but I want to map to many things to some combination of hjkl just for the ergonomics...

Aerospace's modal feature sort helps solve that shortcut conflict... How are others dealing with this?

lemontheme · 2 months ago
They’re not, is the impression I get. I usually run into a shortcut conflict within the first few minutes of actual day-to-day use.

I switched to Aerospace about a year ago. I hide everything behind a leader key: alt+space. That brings me into Aerospace’s normal mode. I have a few alt-shortcuts there for quick access: e.g. alt-{hjkl} for moving between panes. But most things are in a dedicated mode. I have a ‘go-to’ mode and a ‘move-to’ mode. Once in either mode, pressing any letter or number will go to/move a pane to space corresponding to the letter/number. So for instance, if I want to move my terminal to space ‘t’ then I type `alt+space g t`. To move to the space I type `alt+space m t`.

I’ve been enjoying this setup because it feels like a natural extension of my terminal setup: zellij/tmux with leader key ctrl+space and helix (also modal) inside.

One thing I constantly struggle with in Aerospace, though, is its tendency to keep windows hidden after switching screens. You have to hunt for them in the bottom-right corner and just hope you can drag them back into view.

pulq · 2 months ago
> One thing I constantly struggle with in Aerospace, though, is its tendency to keep windows hidden after switching screens.

I'm with you. Heres workaround: Instead of doing brute force, try toggling floating mode while the windows is focused.

epistasis · 2 months ago
I tried Aerospace but the default was to map all alt keys to 26 different workspaces, eradicating all the built in emacs-like key shortcuts available in every app.

That plus there's zero tutorial on the basic key mapping, just a bunch commands and no hints about where to look for how to use it...

It is the most hostile piece of software I have encountered in years and I just spend the past few weeks mucking with sway and hyprland on Linux, and mucking in Linux bootloaders so that I can enter the disk encryption password both by serial port and the physical keyboard.

So I solved it by deleting aerospace and waiting to try a different rolling window manager, which will be Rift. I suspect in the end I'll just write my own tiling window manager. It certainly seems like there's one for every person who has ever had the whim to do so...

lucyjojo · 2 months ago
funnily i don't use alt much on emacs and this went smooth as butter.
acupofnope · 2 months ago
I did something similar. I use Karabiner and I mapped the right Option key on my external keyboard to Option+Shift (A1), and right Control key to Control+Option+Shift (A2). I've configured Aerospace such that if I want to change focus, I use `A1 + hjkl` to move the focus around, and if I want to move windows around, I use `A2 + hjkl`. I use `A1 + ui` to switch workspaces, and `A2+ui` to move windows between workspaces. For shifting focus between monitors its `A1+m,` and moving between them `A2 + m,`

By far these are the shortcuts I use most often and if there are apps with conflicting shortcuts, I change those to something else. I haven't thought about it much but I'm sure I can extend this pattern further for better ergonomics. It works great so far.

creakingstairs · 2 months ago
Meh (ctrl alt shift) and hyper (ctrl alt shift cmd). And I bind caps lock to meh on long press and esc on tap.

This gives me plenty of easily reachable hot keys. Eg I can switch between spaces with meh + number. I have terminal hot window bound to meh + space. Moving focus between windows is meh + hjlk.

ahamez · 2 months ago
Note that using Hammerspoon, you can build your own window manager.

Personally, I really like how Divvy (https://mizage.com/divvy/) uses a modal (press cmd-alt-ctrl-x, then press a single key to chose a layout for the frontmost window), but it's no longer maintained.

Thus, using OpenAI's Codex, I generated a modal window manager (https://github.com/ahamez/dot_hammerspoon/blob/master/wm.lua).

Thought it would be interesting to share this approach!

MomsAVoxell · 2 months ago
I use MiroWindowsManager (Hammerspoon plugin) to get what I need for window management on MacOS: the ability to position any window in any quadrant by 3 different variations of chord division, at will .. with the same hotkeys.

This means I can put things where I need it in milliseconds.

sporkland · 2 months ago
I've been using divvy, had no idea it isn't maintained... but I'm not sure if I'd need any more features outside of what it already does. What items do you want to see them add?
cloudking · 2 months ago
Pretty cool, but nothing beats Swish if you're using a Macbook trackpad https://highlyopinionated.co/swish/
chrisweekly · 2 months ago
"Highly opinionated" indeed ;)

One reason I prefer Divvy^1 is that my custom keyboard shortcuts are usable whether typing directly the on laptop w/ trackpad, or (more frequently) on external keyboard.

1. https://mizage.com/divvy/

cloudking · 2 months ago
For me it's about the least amount of hand/wrist movement. Trackpad + Swish feels natural and reduces strain.

Dead Comment