That lack of capability prevents it from being my daily driver, even if the rest were good enough (I’m not saying it isn’t, I’m saying I have no reason to find out).
I am certain I have inadvertently pushed many people away from Firefox for that reason alone, because when they ask for me to add Firefox support for my tools, I have to tell them it’s impossible.
I have tried to talk to Firefox developers about that a few times, at open-source conferences and such, but they think AppleScript is some power-user feature and fail (refuse?) to understand power users drive adoption and create tools that regular users rely on.
I remember whenever a Firefox story was submitted on HN, multiple people commented “I want to use Firefox but it’s missing <whatever>”. Then Mozilla started doing a lot of questionable stuff (all of which they eventually abandoned) outside their core competency and even pulling distasteful marketing stunts, and at some point people started commenting even that. I presume many got tired and gave up on Firefox entirely. I almost have. I now root for them only conceptually, because browser diversity is good.
I also noticed that no matter how politely someone pointed out on HN “Firefox doesn’t fit for me because of <whatever>”, they always got downvoted. If valid polite criticism is buried, no wonder things stay the way they are.
- Change to first browser tab whose URL or title matches <whatever>.
- Close every browser tab matching <whatever>.
- Grab all your tabs and backup their URLs to a file.
- Join all tabs from all windows into a single window.
- Execute JavaScript on a page and get results back.
- Grab the URL of the current tab and open it in a different browser in a Private window.
- And many more things.
I don't see why a browser should have to support AppleScript specifically. The Chrome DevTools Protocol and WebDriver BiDi are the standard protocols for interacting with browsers programmatically. Firefox supports WebDriver BiDi. Just use any tool that supports it, or talk to it directly. Maybe AppleScript can do that, I wouldn't know.