Hi,
It's a reasonable wish. At the moment, I don't think it's achievable by a standard Safari extension. Here's why.
In order to force bookmarks to open in new tabs, an extension would have to do three things:
- Notice when a new URL is about to be loaded in the active tab,
- determine that this is happening because the user opened a bookmark (and not for some other reason), and
- redirect the new URL to a new tab, leaving the current tab as it is.
The problem is the second step. Currently, Safari provides no way for an extension to know why the URL of the active tab (or any tab) is being changed. I can think of seven possible causes, but there are probably more:
- the user entered a new URL in the address bar
- the user performed a search from the address bar
- the user selected a bookmark
- the user selected a history item
- the user dragged and dropped an internet shortcut onto the tab
- the user clicked a link on the current page
- the page itself loaded a new URL by redirect or JavaScript
An extension can determine whether the cause is #6 above, because in that case there could be a script injected in the page that notices when a user clicks a link. But the other six cases all look the same from a Safari extension's perspective.
So, I could make an extension that forced bookmarks to open in new tabs. Unfortunately, it would also force new tabs in all the other situations in which a new URL is being loaded in the active tab.
Sorry for being so verbose when the answer is "no". I find that I think better by writing as I think.
Regards,
Chul