Wow, I didn't expect my comment to actually make a difference! I'm glad you're enjoying the new approach. I think that most people don't realize that they don't actually need a tiling window manager, so it's good to spread the word 🍻. Just to give you a quick update on my current workflow: about two weeks ago, I reinstalled Aerospace because I started enjoying a semi-transparent terminal. For that, I needed a way to avoid having any windows underneath. Also, I'm developing iOS applications so I need a small simulator window side by side with Neovim. At first, I tried using macOS Spaces, but the performance was painfully slow, so I switched to Aerospace workspaces instead. (Apple, just give us FAST native spaces with NO transitions 😡) One idea I've been considering is binding a command that hides all windows except the one I want to focus on. Not sure if this approach would feel too "flickery", but it might be worth experimenting with. Oh, and btw. I was using Raycast for binding shortcuts to apps but recently switched to skhd, mostly because it supports a config file.
@wojciech-kulik Awesome! Your comment did make a difference! Aerospace is sweet and I might go back to it in the future though I do like this simpler alternative. Keeps things straightforward. I also want to try linux and its tilers in the future, though I do need to use a Mac for other non-dev work. Thanks for the update on what your workflow is currently looking like!
@@wojciech-kulik I recently moved from a workflow very similar to the one described in this video to Aerospace, in part because I also liked the semi-transparent terminal look - it's working for me so far, not noticing any performance issues yet. Just commenting to let you know that cmd+option+H is a native command that hides all windows but the focused one, this was my workaround previously (which got a bit annoying when I had a split with more than one window)
@@wojciech-kulik I use yabai to keep my terminal transparent, the trick is to use the window_focused event and set the opacity to 0.9 for the active window, and 0.000001 for the normal window. I use yabai in stack mode, so keep a single app on the screen at a time, so when I focus my terminal, it's transparent, and all the apps behind are hidden, when I focus other apps, they're shown without transparency. I use yabai in stack mode, all the apps in the same desktop, and just switch to them using karabiner-elements shortcuts, no lag, no delay I also keep my sticky notes app on the right padding area of yabai, which always starts in a specific position and size, so its outside the management area, that app is just kitty running a minimal neovim config
girlfriend walked by: "you are going to change everything again?!" when she saw me watching your video. she associates this channel with me spending my day editing random dotfiles or changing my keyboard etc
Gotta agree, sometimes Aerospace becomes quite laggy, especially if you have something intensive running in the background. I had a similar setup, but with Keyboard Maestro, and it has even better control to create macro to setup side-by-side windows with a keyboard shortcut, though more complex to setup.
One issue I have found is when there are notifications like outlook reminders or something like that - it causes rapid swapping / flickering with aerospace for me sometimes. Or maybe it is when my outlook is signed out for the day and there is a password entry popup somewhere that aerospace is not finding or is moving to a separate space/window.
if you watch github issues there, this is known limitation ...whole problem is that apple is disgusting company hiding stuff and whole approach to achieve what aerospace does is flawed. It goes from the other side as it should, if we had opened source. And because of that we are at mercy of these performance issues. I love aerospace, its crazy what one person can achieve but i went for this raycast thing as well because it looks like you should not fight with limitations ....my biggest issue was always this lag when switching workspaces. I need it to finish before i release my keys, when it does not i get little frustrated :D
Man I was using raycast as a window tiler, and last week I tried aerospace. You came just to the same conclusion as me. Keeping it simple with Raycast is way to go. I like aerospace, but it's not so trustful as i.e. i3, or hyprland on linux. So I'm also getting back to my raycast setup on mac! Greate video anyways!
I work with multiple operating systems every day (Windows, macOS, different Linux distros) due to the nature of my work and since I have this very specific workflow I got accustomed to it means that have things setup on different OSes to work in the same way. It just made me realize that on macOS I need a surpricing number of 'utility' apps running in the background just to complete my workflow. It made me appreciate the beautiful simplicity of Arch with Hyprland, which does exactly what it's been told and in most cases I don't even need to install a separate app, just edit a configuration file. Yabai is good for macOS, not as good as Hyprland on Linux because it's built on top of macOS's window manager though.
I actually did it this way for years (assigning hyper+key to go to specific apps, and key combos for various window tiling presets), but switched after your Aerospace video and have been loving it. I have a few apps that I always keep side by side, like my email and calendar so in those cases aerospace is cooler because I can assign them to one space and have them both visible with one key command. For all my go-to apps I assign them to their own spaces, and for every other app, it defaults to open in floating mode, similar to the how MacOS normally behaves. That way I get the advantages of a TWM but it still feels like a Mac.
the negative is that it's not automated, you still have to manually move all the windows to a half. Yabai automatically splits your screen when you open a new app, I prefer that.
Thanks for the video, really like your channel ! For me, the biggest feature that aerospace offers is being able to switch focus between apps using directional keys because I like to use 3 monitors. It's just way less "mentally" taxing compared to summoning apps via hotkeys (especially if you have multiple windows opened of the same app). Automatic tiling is nice to have, but definitely not necessary. If you use something like a 27-inch monitor, then it makes sense to open the majority of apps in full-screen (I use the "aerospace accordion" layout by default) and apply tiling layout on "a special occasion". I've been quite happy with aerospace as it offers all features I need, but I do notice performance issues from time to time too. With that being said, it's absolutely shocking that neither Apple, nor Microsoft have done anything in the past decade to improve window/app management. Both companies have hundreds of thousands of employees who use their operating systems daily with complex use cases, yet Apple added only basic tiling in 2024....
Unfortunately we only have bad TWM options on MacOS... I migrated to Hyprland on Arch and I'm loving it. I managed to replicate the MacOS keyboard behavior and my setup is simply wonderful.
@@joseanmartinez Yep, I installed it on my gaming computer to test it and see if I can get used to it. Maybe in the future (when it supports VRR/ProMotion), I'll install Asahi Linux on my MBP.
@@dkmanglam For some reason RUclips keeps deleting my reply so i'll be shortening the answer to see if I can bypass whatever word is blocked. I struggled for 3 days, barely found documentation or recent posts about this... ``` kb_layout = us kb_variant = mac kb_options = lv3:alt_switch ``` The kb_options variable will map AltGr (which is the compose key to make symbols and accents with deadkeys) to LeftAlt (Option on Mac kbds) You'll notice that bindings on ``ALT`` won't work anymore, you'll need to set them to ``MOD5`` instead. ``` $OPTION = MOD5 bind = $OPTION, 1, workspace, 1 bind = $OPTION, 1, workspace, 2 bind = $OPTION, 1, workspace, 3 . . . ``` To swap Ctrl with Command and replicate Mac keyboard navigation (jumping/selecting word by word, jumping to the beginning/end of a line... etc.) you can use Keyd. There's a nice config file in a repository called ``mac-keyboard-behavior-in-linux``
Thank you for this video! I was trying to find something what fits the best to my workflow on ultrawide monitor, I was trying yabai and aerospace using your videos, but this fits me much better!
I've been doing Raycast for window management and quick app switching via hyper key shortcuts for a while now and it's all i need. Especially since I'm mostly using apps full screen. If you were doing dev on a huge widescreen monitor or something, i can see how a tiling window manager would make sense, but it is likely overkill for most people.
I started using raycast right around the same time you made your aerospace video and was thinking this would be a potential next video for you. For now I think I'll stick to aerospace because I use two monitors. Maybe I'll give raycast window management a try over the holidays . I already have the hyper key raycast hotkeys set up for my different apps and find that once I get everything open with aerospace I tend to default to switiching between windows with those hotkey, rather than using the aerospace workspace hotkey. Thanks for all the content!
I have followed your video to setup TWM from Yabai to Aerospace. They all kind of have some problems: lagging, energy costing, etc. Now I have completely switched to Hyprland with Arch Linux, it experience much better comparing to any TWM on MacOS.
I had the same need for a very simple solution. I ended up using Karabiner for switching apps combined with Rectangle to resize windows. Found that to be the cleanest for me since I already had Karabiner installed. Great video btw as always!
I also don't understand why people like to keep apps in different workspaces, I keep all my apps in a single desktop and switch to them with keyboard shortcuts. I have a layer to switch to apps, like hyper+a+*, a layer to switch to tmux sessions hyper+t+*, a layer for system settings hyper+s+*, and so on. I use yabai in stack mode and on the right padding area keep my sticky notes app, which is a kitty running a minimal neovim config
Currently I'm working on a project which requires frequent switching between the following: 1. React frontend (intellij + browser) 2. Backend (intellij window) 3. Component library (intellij + browser window for storybook) 4. Legacy frontend app being migrated to react app mentioned in 1. (intellij + browser) In adition to these project related things I also haved to switch to other stuff: 5. Chat, mail, browser for communication with coworkers 6. Full screen tmux terminal for everything in between 7. Another smaller project I had to keep up with (terminal/nvim + browser) 8. Spotify/RUclips I like being able to asign all this to workspaces and the workspaces between a wide screen monitor and laptop screen. Being able to press a single shortcut and seeing exactly what I need to see without shuffling through layers/tabs is very useful. If I used nvim+tmux instead of Intellij for more of the code editing/debugging I could perhaps get away without using workspaces, but otherwise I'm not sure how to organise all this while keeping stacked layers to a minimum.
keyboard shortcuts approach, in effect, is the same experience as aerospace's app per space approach especially if you use mnemonic spaces. 1. I use opt + s for slack, opt + c for chrome, etc. I configured aerospace rules to ensure apps automatically assign to correct space. For apps that I don't use normally, move them to opt + 1, 2, etc. 2. Then I move apps together in stack or split mode only when it's specifically needed (e.g., visually diffing chrome with terminal), this is where tiling becomes so useful. One caveat: for some people, the second use case is more important than mnemonic spaces. I find macos native features for spaces (also why i ditched yabai for aerospace), window management, etc. and their respective keyboard shortcuts to be largely unreliable. I only use cmd + w and cmd + q.
@@G01010 I 100% agree with getting to stuff with a single keypress, that's how I basically navigate everything in my system, apps, tmux sessions, raycast shortcuts, system settings, etc. I have a very extensive karabiner-elements configuration After using a huge 52 inch TV as a monitor for years, after watching ThePrimeagen workflow video, I now use a single 27 inch monitor with a single app on the screen at a time, I guess the only scneario in which you really need to have 2 apps on the screen at a time is web development where you need to see code changes in real time on the frontend? And is it really 100% necessary? Not a web dev, so not sure, but it seems like it But even for web dev, I would enter a special web dev setup mode to activate an alternate yabai config file that has a larger padding on the right hand side, and use the padding on the right to show my browser all the time, and on the left, keep all my other apps stacked, but still, keep everything in a single desktop and just switch between apps on the left hand side where the stack is
It's such a coincidence that I ended up moving back to Raycast for the same reason! I originally switched from Raycast because I thought I could do more with Aerospace, but after a few months, I found that I wasn't really using much of Aerospace. So I decided to uninstall Aerospace, and stick to Raycast.
I agree that a simpler approach is beneficial. However, I haven’t been able to figure out how to automatically divide up the screen whenever a new window or app is opened, similar to how Aerospace handles it. If Raycast could offer that functionality, it would be ideal.
I’m surprised that aerospace is causing performance issues. I run it all the time with a great many windows with not even a hint of delay. On top of that I think it is a great open source project that deserves more recognition. I hope you opened a bug report so one could isolate where the performance issue stems from.
I also set up my ZSA Voyager Keyboard to do some of the keyboard shortcuts on one of the layouts. In Raycast you can make an alias which can also get the app you want open quickly. I like more than one way of doing the job so I can do whichever is the quickest or the one one I remember easiest at the time.
I rarely need to split anything, just switch to a maximized app. In macOs there is already built in app Shortcuts to do that. I think most common usecase for splitting is inside terminal, but many modern terminals support that feature.
You could also make use of the HyperKey mac app to make capslock key as the hyperkey when long pressed. For normal keyboards I use this workflow (Raycast and HyperKey)
I created some custom scripts to do my window management, it's basically some `open` commands for app focusing and Raycast deeplinks. Then you just launch those scripts with Raycast and you have Raycast Pro Layout feature for free. For example I have a binding that opens my terminal on 2/3rd of the screen and the browser on the last third (focusing on terminal).
This is brilliant. I’ve tried using macOS windows but there is no way to switch between them instantly without delays/animations so it seems on mac we gotta stay on a single window…
I've ran a ton of tiling window managers across platforms and they all kind of fail at some point. I just utilize dedicated workspaces and hotkeys for the most common window sizes I need. Tiling always gets in the way at some point. I have yet to truly test out the Sequoia tiling options, so maybe they've done some interesting hybrid stuff I'm not aware of.
I use almost same setup , but aerospace for window management, alfred for app launcher , and karabiner elements for remapping keyboard shortcuts. But I thing everyone should note that its the app launcher job to launch apps, so for me i wouldnt bind any hyper key to launch apps, as i use hyper key to bind more useful keys like hyper H,J,K,L as arrow keys. I've wasted a lot of time to configuring everything to my liking and workflow.
do you use Mac spaces? If so how? I would like to have apps in specific spaces without the need of aerospace or the like. I would suggest to use karabiner and map caps+letter to open apps and also re arrange with rectangle. Right now using that setup and works amazingly but i would like to introduce spaces since there are too many Windows sometimes and have them organized in spaces would be handy
I just bought my first Mac as a backup when Im out of home where my main station is desktop on Arch + Hyprland. Its a pain to configure Mac OS to be anything near Linux experience. Closest to Hyprland is Yabai, but miles behind. Status bars are scarse. Stuff like Dmenu too. I underestimated how much customization for my workflow I did in years but I cannot go back. I also underestimated how customizable Linix is and how far it went in last 20 years Im using it. ill give Mac a few months, but right now I feel like one hand is tied behind my back when Im working on it. I hate when I have to use it. DaVinci resolve is the only reason I went with it. Hoping to see Avahi on M3 :\
Love the tip with the quadra key combo to avoid conflicts! I always wondered what combinations to use not to create any issues. Also, how do you find the button hold config? Does it allow you to efficiently use it for both typing and using as a navigation layer when holding?
Interesting but requires me to use raycast, which I find to be slow compared to alfred. additionally, I think Tiling on monitors is really useful especially when moving windows around. I love aerospace, no lag but then i'm also on m2 pro so maybe aerospace is slower on some older chips.
Great video! I have a question. I own a corne keyboard but I find it difficult to make it my daily driver and leave my planck keyboard. Mainly because of the layout, more specifically the Cmd, Shift, Option, Alt keys. I tried to use home row mods set by Via configurator and the times I accidentally activate the mod and not the letter while typing was too damn high. I must do something wrong there. Now back to you, I heard you used the term hyper when pressing all 4 keys at once while I could only hear you press one key. Did you use a different layer with shortcuts like this?
Oh, same here. Both yabai and aerospace are great tools but I'm noticing performance issues sometimes and looking for alternative solutions. The Raycast approach looks promising but I wonder if there is any option to assign app to a workspace and be able to move window to workspace with keycombos
Aerospace is so good i have been using for a lot of time i would really recommend but it is still in beta. and for me i dont really have lots of windows open at the same time i have my terminal my browser and my video editor and thats it.
Aerospace is awesome! My primary issue has been that it would start to slow down when I had several intensive applications running at the same time. If this improves in the future, I might go back to it, but I like the simplicity of this approach as well!
I also have a similar mapping for the spacebar with my keyboards. I still don't know how to replicate the same behavior on the Mac keyboard because I don't want to map the left control to the hyper key; I would love to have the spacebar hold as a hyper key. Does anyone know a solution for this?
how about 2 external monitors setup? will it keep all layouts when i unplug and plug them back? in aerospace i can force open specific workspace on each display
I setup a customized karabiner shortcut so that caps lock if pressed on its own is escape, and if held is hyper. If anyone would like this let me know! I use hyper +i,j,k,l as my arrow keys (this rule already exists in the "store")
Long time raycast user here. Great great video. The concept of the hyper key on the caps lock is great. But I'm a vim user and have the caps lock to esc (through macos settings), after doing the hyper mod with karabiner i lost the esc functionality. How do you solve this so you have hyper on hold and esc on tap?!?
@@carlosmengs Thank you! As I normally use my Corne keyboard which uses QMK firmware for tap hold behavior, I’m not familiar with how to do it with Karabiner, but there is likely a way to achieve this. One of the other options I saw that was straightforward to enable in the karabiner menu was using the tab key for hyper on hold.
@joseanmartinez thanks for the reply! I'll give it a look and post a solution here for other people. Also I'm curious about what you do when you take your Macbook outside of your setup. Do you just get it done with good ol' command tab? Or just carry the corne everywhere?
Curious to know what macbook are you using? I have not noticed any performance drops with Aerospace yet with only a M1max and 32GB. I use wezterm, neovim, and aerospace which I think all my original configs were from your videos. I also use Raycast for opening apps and other shortcuts.
@@davidallred991 I have an m1 pro 16gb macbook so quite a bit less powerful than your machine. If its just Wezterm, Aerospace, Neovim and Chrome everything works fine. Its more so when I’m doing other work like 3d modeling with Fusion 360 and Blender, maybe a terminal window open, as well as Chrome and some other possible apps open at the same time. Maybe I need an upgrade, but I do like the simplicity of this alternative approach.
yeah, having to manage the windows manually and also having to actively select the windows for focus instead of motion feel very taxing compared to a twm.
Great video!!! I also love raycast. It’s super simple.. im wondering if any of you can give me a hand with a limitation i have regarding the focus window. If i do a 3 window layout with different apps, i cant switch the focus window easily (alt-tab wont work how i want on this case). I can however if i use aerospace or amethyst. Is there a way i can have a shortcut to change the focus window?
Thank you! If you are using three different apps, you can just use the same raycast shortcut you setup to launch/change to it, in this case it’ll change focus to the app you want. If its windows of the same application you’ll have to use the shortcut I mention in the video for switching focus for windows of the same app. Hope that helps!
The problem I see is how do you handle easily placing a terminal next to a browser window when you have all your applications launched (notion, Spotify...). You close them all before displaying your browser and the terminal ?
@@thibaultvigouroux9056 You would simply have them side by side with the raycast window management and the other apps would essentially be hidden behind the terminal and the browser when the terminal and browser are active/you’re using them.
@@joseanmartinez as simple as that 😅 thx ! I consider switching as well like this simple workflow. Aerospace is slow when you have a code Editor running unfortunnatly. There is nevertheless an open issue on their repo to takle that issue.
If only there was an option to move the division line between to windows (e.g. resizing both simultaneously) that would be perfect solution. Unfortunately not always you want to have exact split 50/50 and sometimes you want to adjust the split "a notch" for visibility.
I haven't run into any performance issues on my m1 mac with arerospace and have lot open hmm i prefer to make a config file as well rather than bounce around gui's my mac is for work can't use linux there but could would switch to arch sway wm setup I have at home so much better than anything on macos or windows os
The fact that you're jumping around for different WM/TWM just shows how poor the alternatives are for Mac. Yabai, Amethyst, AeroSpace, Raycast - all have some their own caveats. I personally find AeroSpace to offer best flexibility and customization but I had hard time accepting their own implementation of workspaces, it breaks a lot of already provided functionality provided by MacOS. Nowdays, I'm fine with it but took some time to get used to it. However, I've also noticed that AeroSpaces becomes quite laggy and experienced some crashes. In my experience, MS Office applications seems to cause most of the trouble for AeroSpace.
Actually I like aerospace but somehow I don’t like how it interferes with macOS window management. Sharing only single apps in teams become buggy. But I like having the spaces so I can use like a single space to share and don’t be afraid that I share something others shouldn’t see
thats what i said in last video aero space is too complicated raycast is a better solution it has some less features but its not that importannt nd raycast is very easy to use
This is too much manual window management. Yabai has some glitches but it mostly works fine for me when I use it. It is just easier to just use Linux. Dualbooting is not that bad tbh. It take seconds to switch between Linux and Macos/Windows. I use windows to watch netflix (For UHD, HDR etc) and play games, linux for everything else. Door to door, switching between them takes up around 45 seconds.
Could you do the same using Keyboard Maestro? I will try it. However, I really appreciate the auto-tiling window. Maybe I'll do a combination of Yabai and Keyboard Maestro. At the moment, I follow your Aerospace setup, but like you, I have noticed some slowdown in performance. Talking about performance, I see you are using WezTerm, which I also tried, but why not Kitty? The downside is that you lose lua for configuration but, Kitty is much faster, in particular I noted that scrolling with WezTerm lacks the smoothness of Kitty. What's your take on that?
Thank you @wojciech-kulik for the comment in my Aerospace video! It inspired me to try this approach out 🚀 Hope you guys enjoy the video!
Wow, I didn't expect my comment to actually make a difference! I'm glad you're enjoying the new approach. I think that most people don't realize that they don't actually need a tiling window manager, so it's good to spread the word 🍻.
Just to give you a quick update on my current workflow: about two weeks ago, I reinstalled Aerospace because I started enjoying a semi-transparent terminal. For that, I needed a way to avoid having any windows underneath. Also, I'm developing iOS applications so I need a small simulator window side by side with Neovim. At first, I tried using macOS Spaces, but the performance was painfully slow, so I switched to Aerospace workspaces instead. (Apple, just give us FAST native spaces with NO transitions 😡)
One idea I've been considering is binding a command that hides all windows except the one I want to focus on. Not sure if this approach would feel too "flickery", but it might be worth experimenting with.
Oh, and btw. I was using Raycast for binding shortcuts to apps but recently switched to skhd, mostly because it supports a config file.
@wojciech-kulik Awesome! Your comment did make a difference! Aerospace is sweet and I might go back to it in the future though I do like this simpler alternative. Keeps things straightforward. I also want to try linux and its tilers in the future, though I do need to use a Mac for other non-dev work. Thanks for the update on what your workflow is currently looking like!
I did the same thing (switching to Raycast shortcuts) earlier this week after seeing that comment! Sometimes simplicity is all you need.
@@wojciech-kulik I recently moved from a workflow very similar to the one described in this video to Aerospace, in part because I also liked the semi-transparent terminal look - it's working for me so far, not noticing any performance issues yet.
Just commenting to let you know that cmd+option+H is a native command that hides all windows but the focused one, this was my workaround previously (which got a bit annoying when I had a split with more than one window)
@@wojciech-kulik I use yabai to keep my terminal transparent, the trick is to use the window_focused event and set the opacity to 0.9 for the active window, and 0.000001 for the normal window. I use yabai in stack mode, so keep a single app on the screen at a time, so when I focus my terminal, it's transparent, and all the apps behind are hidden, when I focus other apps, they're shown without transparency.
I use yabai in stack mode, all the apps in the same desktop, and just switch to them using karabiner-elements shortcuts, no lag, no delay
I also keep my sticky notes app on the right padding area of yabai, which always starts in a specific position and size, so its outside the management area, that app is just kitty running a minimal neovim config
girlfriend walked by: "you are going to change everything again?!" when she saw me watching your video. she associates this channel with me spending my day editing random dotfiles or changing my keyboard etc
hahahaha, if she accepts you for your dotfiles then she is marriage material!
we living the same life frfr
She walks by and says "find a girlfriend"
same here😂
This hits home. One of the last comments I made to @joseanmartinez was about how I made the switch from Yabai to Aerospace. Here we go again, fam.
Gotta agree, sometimes Aerospace becomes quite laggy, especially if you have something intensive running in the background. I had a similar setup, but with Keyboard Maestro, and it has even better control to create macro to setup side-by-side windows with a keyboard shortcut, though more complex to setup.
One issue I have found is when there are notifications like outlook reminders or something like that - it causes rapid swapping / flickering with aerospace for me sometimes. Or maybe it is when my outlook is signed out for the day and there is a password entry popup somewhere that aerospace is not finding or is moving to a separate space/window.
if you watch github issues there, this is known limitation ...whole problem is that apple is disgusting company hiding stuff and whole approach to achieve what aerospace does is flawed. It goes from the other side as it should, if we had opened source. And because of that we are at mercy of these performance issues. I love aerospace, its crazy what one person can achieve but i went for this raycast thing as well because it looks like you should not fight with limitations ....my biggest issue was always this lag when switching workspaces. I need it to finish before i release my keys, when it does not i get little frustrated :D
Man I was using raycast as a window tiler, and last week I tried aerospace. You came just to the same conclusion as me. Keeping it simple with Raycast is way to go. I like aerospace, but it's not so trustful as i.e. i3, or hyprland on linux. So I'm also getting back to my raycast setup on mac! Greate video anyways!
I work with multiple operating systems every day (Windows, macOS, different Linux distros) due to the nature of my work and since I have this very specific workflow I got accustomed to it means that have things setup on different OSes to work in the same way. It just made me realize that on macOS I need a surpricing number of 'utility' apps running in the background just to complete my workflow. It made me appreciate the beautiful simplicity of Arch with Hyprland, which does exactly what it's been told and in most cases I don't even need to install a separate app, just edit a configuration file. Yabai is good for macOS, not as good as Hyprland on Linux because it's built on top of macOS's window manager though.
Thank you! This is also my way to go. In Raycast advanced settings you can set hyper icon for hyper key which increases clarity
I actually did it this way for years (assigning hyper+key to go to specific apps, and key combos for various window tiling presets), but switched after your Aerospace video and have been loving it. I have a few apps that I always keep side by side, like my email and calendar so in those cases aerospace is cooler because I can assign them to one space and have them both visible with one key command. For all my go-to apps I assign them to their own spaces, and for every other app, it defaults to open in floating mode, similar to the how MacOS normally behaves. That way I get the advantages of a TWM but it still feels like a Mac.
YES! I am a huge Raycast fan. It has become an essential part of my Mac experience
the negative is that it's not automated, you still have to manually move all the windows to a half. Yabai automatically splits your screen when you open a new app, I prefer that.
Thanks for the video, really like your channel !
For me, the biggest feature that aerospace offers is being able to switch focus between apps using directional keys because I like to use 3 monitors. It's just way less "mentally" taxing compared to summoning apps via hotkeys (especially if you have multiple windows opened of the same app).
Automatic tiling is nice to have, but definitely not necessary. If you use something like a 27-inch monitor, then it makes sense to open the majority of apps in full-screen (I use the "aerospace accordion" layout by default) and apply tiling layout on "a special occasion".
I've been quite happy with aerospace as it offers all features I need, but I do notice performance issues from time to time too.
With that being said, it's absolutely shocking that neither Apple, nor Microsoft have done anything in the past decade to improve window/app management. Both companies have hundreds of thousands of employees who use their operating systems daily with complex use cases, yet Apple added only basic tiling in 2024....
Unfortunately we only have bad TWM options on MacOS... I migrated to Hyprland on Arch and I'm loving it. I managed to replicate the MacOS keyboard behavior and my setup is simply wonderful.
Awesome! Definitely want to give a linux twm a try! Are you using a separate machine to run Arch?
@@joseanmartinez Yep, I installed it on my gaming computer to test it and see if I can get used to it. Maybe in the future (when it supports VRR/ProMotion), I'll install Asahi Linux on my MBP.
@@Glitchzzy Sweet! Thanks!
@Glitchzzy - How did you replicate MacOS keyboard behaviour? Could you share your config/dotfiles for me to take a look?
@@dkmanglam For some reason RUclips keeps deleting my reply so i'll be shortening the answer to see if I can bypass whatever word is blocked. I struggled for 3 days, barely found documentation or recent posts about this...
```
kb_layout = us
kb_variant = mac
kb_options = lv3:alt_switch
```
The kb_options variable will map AltGr (which is the compose key to make symbols and accents with deadkeys) to LeftAlt (Option on Mac kbds)
You'll notice that bindings on ``ALT`` won't work anymore, you'll need to set them to ``MOD5`` instead.
```
$OPTION = MOD5
bind = $OPTION, 1, workspace, 1
bind = $OPTION, 1, workspace, 2
bind = $OPTION, 1, workspace, 3
. . .
```
To swap Ctrl with Command and replicate Mac keyboard navigation (jumping/selecting word by word, jumping to the beginning/end of a line... etc.) you can use Keyd. There's a nice config file in a repository called ``mac-keyboard-behavior-in-linux``
Thank you for this video! I was trying to find something what fits the best to my workflow on ultrawide monitor, I was trying yabai and aerospace using your videos, but this fits me much better!
I've been doing Raycast for window management and quick app switching via hyper key shortcuts for a while now and it's all i need. Especially since I'm mostly using apps full screen.
If you were doing dev on a huge widescreen monitor or something, i can see how a tiling window manager would make sense, but it is likely overkill for most people.
I started using raycast right around the same time you made your aerospace video and was thinking this would be a potential next video for you. For now I think I'll stick to aerospace because I use two monitors. Maybe I'll give raycast window management a try over the holidays . I already have the hyper key raycast hotkeys set up for my different apps and find that once I get everything open with aerospace I tend to default to switiching between windows with those hotkey, rather than using the aerospace workspace hotkey. Thanks for all the content!
I have followed your video to setup TWM from Yabai to Aerospace. They all kind of have some problems: lagging, energy costing, etc. Now I have completely switched to Hyprland with Arch Linux, it experience much better comparing to any TWM on MacOS.
same, hope linux on mac with catch up so I can ditch macos and use it in VM just for ios stuff
I had the same need for a very simple solution. I ended up using Karabiner for switching apps combined with Rectangle to resize windows. Found that to be the cleanest for me since I already had Karabiner installed. Great video btw as always!
@@henrymisc Awesome, appreciate it!
I also don't understand why people like to keep apps in different workspaces, I keep all my apps in a single desktop and switch to them with keyboard shortcuts. I have a layer to switch to apps, like hyper+a+*, a layer to switch to tmux sessions hyper+t+*, a layer for system settings hyper+s+*, and so on.
I use yabai in stack mode and on the right padding area keep my sticky notes app, which is a kitty running a minimal neovim config
Currently I'm working on a project which requires frequent switching between the following:
1. React frontend (intellij + browser)
2. Backend (intellij window)
3. Component library (intellij + browser window for storybook)
4. Legacy frontend app being migrated to react app mentioned in 1. (intellij + browser)
In adition to these project related things I also haved to switch to other stuff:
5. Chat, mail, browser for communication with coworkers
6. Full screen tmux terminal for everything in between
7. Another smaller project I had to keep up with (terminal/nvim + browser)
8. Spotify/RUclips
I like being able to asign all this to workspaces and the workspaces between a wide screen monitor and laptop screen. Being able to press a single shortcut and seeing exactly what I need to see without shuffling through layers/tabs is very useful.
If I used nvim+tmux instead of Intellij for more of the code editing/debugging I could perhaps get away without using workspaces, but otherwise I'm not sure how to organise all this while keeping stacked layers to a minimum.
keyboard shortcuts approach, in effect, is the same experience as aerospace's app per space approach especially if you use mnemonic spaces.
1. I use opt + s for slack, opt + c for chrome, etc. I configured aerospace rules to ensure apps automatically assign to correct space. For apps that I don't use normally, move them to opt + 1, 2, etc.
2. Then I move apps together in stack or split mode only when it's specifically needed (e.g., visually diffing chrome with terminal), this is where tiling becomes so useful.
One caveat: for some people, the second use case is more important than mnemonic spaces.
I find macos native features for spaces (also why i ditched yabai for aerospace), window management, etc. and their respective keyboard shortcuts to be largely unreliable. I only use cmd + w and cmd + q.
@@G01010 I 100% agree with getting to stuff with a single keypress, that's how I basically navigate everything in my system, apps, tmux sessions, raycast shortcuts, system settings, etc. I have a very extensive karabiner-elements configuration
After using a huge 52 inch TV as a monitor for years, after watching ThePrimeagen workflow video, I now use a single 27 inch monitor with a single app on the screen at a time, I guess the only scneario in which you really need to have 2 apps on the screen at a time is web development where you need to see code changes in real time on the frontend? And is it really 100% necessary? Not a web dev, so not sure, but it seems like it
But even for web dev, I would enter a special web dev setup mode to activate an alternate yabai config file that has a larger padding on the right hand side, and use the padding on the right to show my browser all the time, and on the left, keep all my other apps stacked, but still, keep everything in a single desktop and just switch between apps on the left hand side where the stack is
You are my favorite tech content creator!
@@MelkeyDev Thank you so much!
@@MelkeyDev sup Melkey!
You're also a great tech RUclipsr.
But it's time to switch to Neovim or what? 😉
A wild Melkey appeared 😮
It's such a coincidence that I ended up moving back to Raycast for the same reason! I originally switched from Raycast because I thought I could do more with Aerospace, but after a few months, I found that I wasn't really using much of Aerospace. So I decided to uninstall Aerospace, and stick to Raycast.
love to see raycast here. btw in advanced settings you can toggle the hyper key symbol!
I agree that a simpler approach is beneficial. However, I haven’t been able to figure out how to automatically divide up the screen whenever a new window or app is opened, similar to how Aerospace handles it. If Raycast could offer that functionality, it would be ideal.
I’m surprised that aerospace is causing performance issues. I run it all the time with a great many windows with not even a hint of delay. On top of that I think it is a great open source project that deserves more recognition. I hope you opened a bug report so one could isolate where the performance issue stems from.
I liked Aerospace but a couple of apps were not so keen. Trying a version of this now with a bit of Moom.
I also set up my ZSA Voyager Keyboard to do some of the keyboard shortcuts on one of the layouts. In Raycast you can make an alias which can also get the app you want open quickly. I like more than one way of doing the job so I can do whichever is the quickest or the one one I remember easiest at the time.
Thank you for your amazing tutorial, always!
Also switched to this approach a few weeks ago. Had to use Karabiner for app launching though, since Hyper + C is weirdly blocked in Raycast.
I rarely need to split anything, just switch to a maximized app. In macOs there is already built in app Shortcuts to do that. I think most common usecase for splitting is inside terminal, but many modern terminals support that feature.
You could also make use of the HyperKey mac app to make capslock key as the hyperkey when long pressed. For normal keyboards I use this workflow (Raycast and HyperKey)
Thanks for the video. I don't like to use several monitors and your approach looks great to me.
Happy to hear that!
Thanks!, this is very useful, aerospace is performance intensive when switching between apps
@@gazzarDev Yes I definitely encountered that too. Thank you!
very cool simpler than aerospace, that's what i was looking
I use rectangle and karabiner elements (as launcher) to achieve a similar workflow.
I created some custom scripts to do my window management, it's basically some `open` commands for app focusing and Raycast deeplinks. Then you just launch those scripts with Raycast and you have Raycast Pro Layout feature for free. For example I have a binding that opens my terminal on 2/3rd of the screen and the browser on the last third (focusing on terminal).
How did you set up the scripts? Very interested in this approach!
This is brilliant. I’ve tried using macOS windows but there is no way to switch between them instantly without delays/animations so it seems on mac we gotta stay on a single window…
I've ran a ton of tiling window managers across platforms and they all kind of fail at some point. I just utilize dedicated workspaces and hotkeys for the most common window sizes I need. Tiling always gets in the way at some point. I have yet to truly test out the Sequoia tiling options, so maybe they've done some interesting hybrid stuff I'm not aware of.
Thank you. I'm trying it out!
I use almost same setup , but aerospace for window management, alfred for app launcher , and karabiner elements for remapping keyboard shortcuts.
But I thing everyone should note that its the app launcher job to launch apps, so for me i wouldnt bind any hyper key to launch apps, as i use hyper key to bind more useful keys like hyper H,J,K,L as arrow keys. I've wasted a lot of time to configuring everything to my liking and workflow.
do you use Mac spaces? If so how? I would like to have apps in specific spaces without the need of aerospace or the like.
I would suggest to use karabiner and map caps+letter to open apps and also re arrange with rectangle.
Right now using that setup and works amazingly but i would like to introduce spaces since there are too many Windows sometimes and have them organized in spaces would be handy
Thanks for your video!
On mac you can cycle between windows of the same app with CMD+` (backtick) by default
I like your proposal to use letter-switching-spaces but if your sketchybar has icons you can see where you need to go and reduce the tinkering?
are you using tap dance to set up hyper key on your corne keyboard?
If your hyper key is long-press space, then how would you repeat space? Say may be aligning some chars or markdown tables?
I just bought my first Mac as a backup when Im out of home where my main station is desktop on Arch + Hyprland. Its a pain to configure Mac OS to be anything near Linux experience. Closest to Hyprland is Yabai, but miles behind. Status bars are scarse. Stuff like Dmenu too. I underestimated how much customization for my workflow I did in years but I cannot go back. I also underestimated how customizable Linix is and how far it went in last 20 years Im using it. ill give Mac a few months, but right now I feel like one hand is tied behind my back when Im working on it. I hate when I have to use it. DaVinci resolve is the only reason I went with it. Hoping to see Avahi on M3 :\
Love the tip with the quadra key combo to avoid conflicts! I always wondered what combinations to use not to create any issues.
Also, how do you find the button hold config? Does it allow you to efficiently use it for both typing and using as a navigation layer when holding?
Interesting but requires me to use raycast, which I find to be slow compared to alfred. additionally, I think Tiling on monitors is really useful especially when moving windows around. I love aerospace, no lag but then i'm also on m2 pro so maybe aerospace is slower on some older chips.
This is exactly why I never got the appeal of aerospace. I have been using raycast app short cuts + rectangle for the last 4 months and it’s great
Interesting video - thank you. I'm trying to find a best approach in macOS to the one I've used with Hyprland on linux, maybe this will help.
hell yeah, now we are talking!
Great video!
I have a question.
I own a corne keyboard but I find it difficult to make it my daily driver and leave my planck keyboard.
Mainly because of the layout, more specifically the Cmd, Shift, Option, Alt keys.
I tried to use home row mods set by Via configurator and the times I accidentally activate the mod and not the letter while typing was too damn high.
I must do something wrong there.
Now back to you, I heard you used the term hyper when pressing all 4 keys at once while I could only hear you press one key.
Did you use a different layer with shortcuts like this?
Hi, how can I add the hyperkey rule?
Feel like we're only a few more months away from Josean dropping a Doom Emacs tutorial 🙏
Oh, same here. Both yabai and aerospace are great tools but I'm noticing performance issues sometimes and looking for alternative solutions.
The Raycast approach looks promising but I wonder if there is any option to assign app to a workspace and be able to move window to workspace with keycombos
Aerospace is so good i have been using for a lot of time i would really recommend but it is still in beta. and for me i dont really have lots of windows open at the same time i have my terminal my browser and my video editor and thats it.
I think Aerospace with Sketchybar is great!
Aerospace is awesome! My primary issue has been that it would start to slow down when I had several intensive applications running at the same time. If this improves in the future, I might go back to it, but I like the simplicity of this approach as well!
I also have a similar mapping for the spacebar with my keyboards. I still don't know how to replicate the same behavior on the Mac keyboard because I don't want to map the left control to the hyper key; I would love to have the spacebar hold as a hyper key. Does anyone know a solution for this?
how about 2 external monitors setup? will it keep all layouts when i unplug and plug them back? in aerospace i can force open specific workspace on each display
What software are you using to visualize your shortcuts on screen as you press them?
Hello! It’s a paid app called keystrokes pro.
I like this simple setups, but on my end, application shortcuts do not cycle through the various windows of an app.
I'll never get the same experience as I get with my arch setup
I setup a customized karabiner shortcut so that caps lock if pressed on its own is escape, and if held is hyper. If anyone would like this let me know! I use hyper +i,j,k,l as my arrow keys (this rule already exists in the "store")
Long time raycast user here. Great great video. The concept of the hyper key on the caps lock is great. But I'm a vim user and have the caps lock to esc (through macos settings), after doing the hyper mod with karabiner i lost the esc functionality.
How do you solve this so you have hyper on hold and esc on tap?!?
@@carlosmengs Thank you! As I normally use my Corne keyboard which uses QMK firmware for tap hold behavior, I’m not familiar with how to do it with Karabiner, but there is likely a way to achieve this. One of the other options I saw that was straightforward to enable in the karabiner menu was using the tab key for hyper on hold.
@joseanmartinez thanks for the reply! I'll give it a look and post a solution here for other people.
Also I'm curious about what you do when you take your Macbook outside of your setup. Do you just get it done with good ol' command tab?
Or just carry the corne everywhere?
Curious to know what macbook are you using? I have not noticed any performance drops with Aerospace yet with only a M1max and 32GB. I use wezterm, neovim, and aerospace which I think all my original configs were from your videos. I also use Raycast for opening apps and other shortcuts.
@@davidallred991 I have an m1 pro 16gb macbook so quite a bit less powerful than your machine. If its just Wezterm, Aerospace, Neovim and Chrome everything works fine. Its more so when I’m doing other work like 3d modeling with Fusion 360 and Blender, maybe a terminal window open, as well as Chrome and some other possible apps open at the same time. Maybe I need an upgrade, but I do like the simplicity of this alternative approach.
yeah, having to manage the windows manually and also having to actively select the windows for focus instead of motion feel very taxing compared to a twm.
Great video!!! I also love raycast. It’s super simple.. im wondering if any of you can give me a hand with a limitation i have regarding the focus window. If i do a 3 window layout with different apps, i cant switch the focus window easily (alt-tab wont work how i want on this case). I can however if i use aerospace or amethyst. Is there a way i can have a shortcut to change the focus window?
Thank you! If you are using three different apps, you can just use the same raycast shortcut you setup to launch/change to it, in this case it’ll change focus to the app you want. If its windows of the same application you’ll have to use the shortcut I mention in the video for switching focus for windows of the same app. Hope that helps!
@@joseanmartinez thats not a bad idea. I'll give it a go. Thanks.. Keep up with the great videos!!!
The problem I see is how do you handle easily placing a terminal next to a browser window when you have all your applications launched (notion, Spotify...). You close them all before displaying your browser and the terminal ?
@@thibaultvigouroux9056 You would simply have them side by side with the raycast window management and the other apps would essentially be hidden behind the terminal and the browser when the terminal and browser are active/you’re using them.
@@joseanmartinez as simple as that 😅 thx ! I consider switching as well like this simple workflow. Aerospace is slow when you have a code Editor running unfortunnatly. There is nevertheless an open issue on their repo to takle that issue.
@@thibaultvigouroux9056Yep I saw that issue too! Hopefully it gets resolved in the future.
If only there was an option to move the division line between to windows (e.g. resizing both simultaneously) that would be perfect solution. Unfortunately not always you want to have exact split 50/50 and sometimes you want to adjust the split "a notch" for visibility.
Sometimes less is more, in this case simplicity makes a better workflow for you.
I haven't run into any performance issues on my m1 mac with arerospace and have lot open
hmm i prefer to make a config file as well rather than bounce around gui's
my mac is for work can't use linux there but could would switch to arch sway wm setup I have at home
so much better than anything on macos or windows os
Biggest disadvantage is that if you do not have raycast pro, this shortcut won’t persist in different computer.
You can export all your Raycast settings, even if you don't have Raycast Pro. It's not quite as nice as syncing, but better than nothing
what's the wallpaper?
The fact that you're jumping around for different WM/TWM just shows how poor the alternatives are for Mac. Yabai, Amethyst, AeroSpace, Raycast - all have some their own caveats. I personally find AeroSpace to offer best flexibility and customization but I had hard time accepting their own implementation of workspaces, it breaks a lot of already provided functionality provided by MacOS. Nowdays, I'm fine with it but took some time to get used to it. However, I've also noticed that AeroSpaces becomes quite laggy and experienced some crashes. In my experience, MS Office applications seems to cause most of the trouble for AeroSpace.
man... I was hoping that the aerospace lag was just bc im using an older macbook air 😭
Buen video Bro, pero todo lo que muestras ya lo hace Rectangle, no veo la mejora. Saludos!
Actually I like aerospace but somehow I don’t like how it interferes with macOS window management. Sharing only single apps in teams become buggy. But I like having the spaces so I can use like a single space to share and don’t be afraid that I share something others shouldn’t see
Dude, I feel like you'd LOVE Karabiner Elements. Give it a go. It's like an insanely powerful QMK, but on a software level. It's right up your alley.
Correction in the video title: “… all I need … for now!” 😂
thats what i said in last video aero space is too complicated raycast is a better solution it has some less features but its not that importannt nd raycast is very easy to use
@@rajscholz I’m really liking this simpler approach for sure!
I'm still sticking with yabai. It's more scriptable.
This is too much manual window management. Yabai has some glitches but it mostly works fine for me when I use it. It is just easier to just use Linux. Dualbooting is not that bad tbh. It take seconds to switch between Linux and Macos/Windows. I use windows to watch netflix (For UHD, HDR etc) and play games, linux for everything else. Door to door, switching between them takes up around 45 seconds.
For the love of god please allow me to keep the same window management solution for a couple of months 😢
Just use amethyst tilling window manager ong
This is great, but doesn't seem like it has a solution for those who use multiple monitors
Lol looks like back to the basoc
spaceLauncher
Good, all this and still worse than windows or Linux
🔥🪟
@@raycastapp Thank you! Love using Raycast in my workflow!
Could you do the same using Keyboard Maestro? I will try it. However, I really appreciate the auto-tiling window. Maybe I'll do a combination of Yabai and Keyboard Maestro.
At the moment, I follow your Aerospace setup, but like you, I have noticed some slowdown in performance.
Talking about performance, I see you are using WezTerm, which I also tried, but why not Kitty? The downside is that you lose lua for configuration but, Kitty is much faster, in particular I noted that scrolling with WezTerm lacks the smoothness of Kitty. What's your take on that?