I have rcmd installed and working, and I wrote this AppleScript:
tell application "Safari"
repeat with w in windows
set mt to (tabs of w whose URL contains "https://mail.google.com/")
if mt ≠ {} then exit repeat
end repeat
if mt ≠ {} then
set mt to item 1 of mt
set the current tab of w to mt
set the index of w to 1
end if
-- activate -- needed if not activated otherwise
end tell
How do I set up window actions in rcmd? I don't see that in the page on your site.
Hammerspoon is needed because App Store apps are sandboxed and can't focus specific windows, can't run arbitrary scripts and AppleScripts.
What that gives you is the ability to map Right Option+letter to specific windows or tabs of the currently focused app.
So in your case you could dorcmd-s for Safari then ralt-m for mail tab, ralt-h for HN tab and so on, and it can also open those tabs/windows if they aren't already open.
And you also get a visual switcher to see what your options are in case you tend to forget these shortcuts.
Ah, okay. Did you know that AppleScripts can be saved as "apps"? I'm happily launching the mail tab in safari by pressing rcmd-m without Hammerspoon or anything other than stock RCMD. That gives me everything I was looking for. It would be nice to be able to assign ralt-<letter> to launch different apps -- e.g. rcmd-m does gmail in Safari, ralt-m opens Messages. and rcmd+ralt-m could do something else entirely.
I've used Windows at times, but I don't miss window switching beyond the above use cases.