4 ms·
Nice to see another twm on macOS. Somehow over the past few years Windows became the more vibrant platform for twms (vs macOS) with developers (including mysel
by bsnnkv 2y ago
Nice to see another twm on macOS.
Somehow over the past few years Windows became the more vibrant platform for twms (vs macOS) with developers (including myself) trying to push the envelope and introduce many quality of life features you still won't find even in Linux twms today.
https://github.com/LGUG2Z/komorebi https://github.com/LGUG2Z/komorebi
https://github.com/glzr-io/glazewm https://github.com/glzr-io/glazewm
https://github.com/dalyIsaac/Whim https://github.com/dalyIsaac/Whim
Hopefully this new entrant will drive even more innovation in this space on macOS.
- bbor 2y agoNot to drop this kind hacker’s competitor, but I’ve been a happy user of https://rectangleapp.com/ https://rectangleapp.com/. Will definitely be checking this out instead tho, even though I’ve paid for rectangle — any demo that has SublimeText windows in it is a demo I trust!
- ashenke 2y agoI'm curious, what kind of features that are not found on Linux ?
- Carrok 2y agoFor one, tools like Shortcat aren’t really possible on Linux afaict, since it relies on MacOS’s fantastic accessibility API. https://shortcat.app/ https://shortcat.app/
- ssivark 2y agoHmm -- interesting/fantastic tool. Feels something like avy in Emacs, but for everything on screen. I think this should be possible in linux with a bit of work (erm, famous last words?) especially because the whole desktop environment is fundamentally open and you don't need to depend on this providing an API. But I think an even better approach is to have build this functionality using screen parsers backed by recent AI advances. That way, you decouple the source / rendering of content from the sink / consumption of content, and can have more flexible behavior on behalf of the end user. I anticipate (hope) such tools to pop up over the next few years.
- herewulf 2y ago> Search and summon windows > > Shortcat lets you search window titles for more precise multi-tasking. StumpWM has this and it's a beautiful thing (default binding: prefix+"). I got in the habit of titling terminal and browser windows with the topic name of whatever I was working on. Made for very fast switching to find what I wanted among many windows/topics. Sadly I've needed to switch to Wayland and StumpWM is X11 only but it has a successor called Mahogany[1] that's being worked on. Oh, and both are written in Common Lisp if you like tweaking your WM from the REPL. [1]: https://github.com/stumpwm/mahogany https://github.com/stumpwm/mahogany
- FranOntanaya 2y agoClicklock is much nicer in Windows than the awkward methods I've found so far with Linux.
- bsnnkv 2y agoThe biggest QOL improvements imo are found in the approach to the user-facing API design. Compare basic multi-monitor commands in something like bspwm[1] or yabai[2][3] to twms on Windows where this is typically handled transparently by directional `move` and `focus` commands understanding monitor boundaries. Besides this, Whim has implemented a very functional ctrl+p style command palette which provides a great interface for more advanced on-the-fly/one-time window manager interactions. With komorebi I think that having different border colours to indicate different types of containers is very helpful (one colour for single window stacks, a different colour for monocle containers, a different colour for stacks with multiple windows), as well as custom window-based work area offsets[4] (so if you have an ultrawide monitor with only a single window on a workspace, you can add offsets to the sides so it doesn't stretch across the whole width and give poor usability). It's not really any one "big thing" but rather a difference in approach which adds up over many small design decisions. [1]: https://github.com/baskerville/bspwm/issues/563 https://github.com/baskerville/bspwm/issues/563 [2]: https://github.com/koekeishiya/yabai/issues/505 https://github.com/koekeishiya/yabai/issues/505 [3]: from my own personal yabai config - imo this is not really acceptable for a user facing API, especially for basic commands like focusing and moving: ``` # focus window alt - h : yabai -m window --focus west || yabai -m display --focus west alt - j : yabai -m window --focus south || yabai -m display --focus south alt - k : yabai -m window --focus north || yabai -m display --focus north alt - l : yabai -m window --focus east || yabai -m display --focus east # swap window alt + shift - h : yabai -m window --swap west || yabai -m window --display west && yabai -m display --focus west alt + shift - j : yabai -m window --swap south || yabai -m window --display south && yabai -m display --focus south alt + shift - k : yabai -m window --swap north || yabai -m window --display north && yabai -m display --focus north alt + shift - l : yabai -m window --swap east || yabai -m window --display east && yabai -m display --focus east ``` [4]: https://hachyderm.io/@LGUG2Z/112493589633823318 https://hachyderm.io/@LGUG2Z/112493589633823318