Open a specific app but be able to cycle through them?

I use neovide and it is one of the apps that is close to but not quite able to properly support proper macOS multiwindow behavior: what this means is if i want N neovide windows for N projects open at the same time, they are N different instances of neovide.app, instead of just one instance of the app with N sub windows.

The problem with this is that the bind that I use which I love, “Show / Hide Specific Application”, will only work to show/hide the first instance of this app, and all subsequent instances of the app are not accessible. I actually can’t even cmd+tilde through the list of them without building some other specific mechanism possibly having to use hammerspoon to do that as well.

So I would like to request possibly a modifier to “show/hide specific application” to allow for if more than one instance of the app is open to not ignore the others and to be able to:

  • cycle through instances of the app before hiding them instead of showing/hiding only the first one
  • show the most recently used instance of the app instead of the first one

I know the proper way is to get the application fixed but for so many apps like this it takes them years to get around to adding basic windowing behavior like this, so I think it is a useful feature to have on hand.

Hey @Steven_Lu , I'm not addressing your feature request, but I'll offer a workaround which I have not tested, but you might try:

Create a specific trigger/shortcut with action "Show Window Switcher for All Open Apps" and then exclude all apps except Neovide:

Maybe there are other possible "workaround" (maybe using "Cycle through multiple actions (on repeated trigger)" action and activating different windows...), but I think the above one is the "cleanest" one.

That’s a genius idea. I think I’ve seen a screenshot of the window switcher before and wondered about it but forgot. It looks quite useful! I’m trying to configure this now and I guess I will keep trying different regex features to see if i can work out how to make it match apps which are not neovide…

If you’re (somehow) curious about the context of my efforts to streamline my dev workflow you can see some walls of text of mine in here: Open multiple instances / Windows · Issue #1332 · neovide/neovide · GitHub

1 Like

I am still struggling with the regex. So far I know BTT uses js regexes which is great but it’s unclear which flags are being specified for the regex internally.

It would be so nice if this had Include as well as Exclude.

GPT-5 worked this out for me.

^(?!.*Neovide).*$

Apparently the flags used are /gm (which is very sensible)

Marked your response as solution. Thank you kind sir @xidiot