nikitabobko / AeroSpace

AeroSpace is an i3-like tiling window manager for macOS
https://nikitabobko.github.io/AeroSpace/guide
MIT License
6.22k stars 101 forks source link

Feature request: Array for `on-window-detected` app ids #460

Closed frankfriberg closed 1 month ago

frankfriberg commented 1 month ago

First of all, love this app! 🫶

With yabai as I used before this, I manually handled what was handled, but aerospace has a better way of automatically handling so I don't have to add as much config. But I have to repeat on-window-detected config to make certain apps float as I don't need these fullscreen.

My request is for the if.app-id to be able to get an array and it will do the run for all those app-ids like this:

[[on-window-detected]]
if.app-id = ["com.1password.1password", "ru.keepcoder.Telegram", "com.apple.iCal"]

instead of:

[[on-window-detected]]
if.app-id = "com.1password.1password"
run = "layout floating"

[[on-window-detected]]
if.app-id = "ru.keepcoder.Telegram"
run = "layout floating"

[[on-window-detected]]
if.app-id = "com.apple.iCal"
run = "layout floating"

ℹ️ I have not thought about any scenario that this might break when running for multiple apps, I only use this for floating the apps 😄

Checklist

aerospace CLI client version: 0.14.2-Beta 0cb8dbdfc5ee73b8cbc200f175f467ebead55201
AeroSpace.app server version: 0.14.2-Beta 0cb8dbdfc5ee73b8cbc200f175f467ebead55201
nikitabobko commented 1 month ago

The current on-window-detected TOML syntax is ugly, verbose and non-extensible. It will be replaced with embedded shell-like language #278

In the embedded shell-like language you will be able to use logical or || https://github.com/nikitabobko/AeroSpace/issues/278#issuecomment-2282745118

nikitabobko commented 1 month ago

Duplicate of #375