Ouvrir le menu principal

MacGeneration

Recherche

Astuce : ouvrir une page de Safari dans un autre navigateur [MàJ]

Nicolas Furno

mardi 15 mars 2011 à 19:11 • 28

macOS

Avec Safari 5.0.4, Apple a modifié le comportement du sous-menu "Ouvrir la page avec" situé dans le menu "Développement". Jusque-là, Apple affichait seulement le nom du navigateur, mais la dernière version de Safari ajoute entre parenthèses le numéro de version. Aucune importance, sauf si vous utilisiez ce menu pour ouvrir la page actuelle dans un autre navigateur. En associant un raccourci clavier au nom d'un navigateur, on pouvait ainsi se passer du plug-in Flash dans Safari, mais ouvrir rapidement une page avec du contenu multimédia dans Google Chrome qui intègre Flash, par exemple (lire : Astuce : comment vivre sans Flash sur Mac OS ?).

http://static.igen.fr/img/2011/2/skitched-20110315-173849.jpg

Avec Safari 5.0.4, il faudrait modifier le raccourci à chaque mise à jour de Google Chrome. Autant dire que la solution n'était plus praticable, d'autant que les mises à jour de Chrome se font de manière silencieuse. Une autre solution consiste à passer par un script écrit en AppleScript. Ce script est très simple, il se contente d'envoyer l'adresse du site en cours dans un nouvel onglet de Google Chrome.

Plusieurs méthodes sont possibles pour utiliser ce script. On pourrait simplement le sauvegarder dans le dossier des scripts Safari, mais le plus simple et efficace est de créer un service à l'aide d'Automator. Ouvrez le logiciel (à l'aide de Spotlight) et créez un service à l'ouverture.

http://static.macg.co/img/2011/2/skitched-20110315-183046.jpg

Ce service va être simple, il va simplement consister à exécuter du code AppleScript. Ajoutez tout d'abord l'action nommée "Exécuter un script AppleScript". Vous pouvez la retrouver facilement en faisant une recherche dans le champ de recherche (1). Glissez ensuite le script dans la partie centrale du logiciel (2) et copiez/collez le script dans la partie dédiée au code (3).

http://static.macg.co/img/2011/2/skitched-20110315-183353.jpg

voici le code AppleScript à insérer dans le service créé par Automator :


property theURL : ""

on run {input, parameters}

tell application "Safari"
set theURL to URL of current tab of window 1
end tell
tell application "Google Chrome"
if not (exists window 1) then make new window
tell window 1
if URL of active tab is "chrome://newtab/" then
set myTab to active tab
else
set myTab to make new tab at end of tabs
end if
end tell
set URL of myTab to theURL
activate

end tell

return input
end run


La ligne "activate" met au premier plan Chrome après l'opération. Si vous préférez envoyer l'URL en arrière-plan, supprimez simplement cette ligne. Quand vous êtes satisfait du code, appuyez sur le petit marteau pour vérifier que vous n'obtenez pas d'erreur.

Il ne reste plus qu'à configurer le comportement général du service. Configurez le service pour n'attendre "aucune entrée" en réception et "n'importe quelle application" en ordre (4). De cette manière, le service sera accessible depuis n'importe quelle application, mais vous pouvez aussi restreindre le champ d'action du service à Safari en choisissant "Safari" dans la liste déroulante des applications.

Enregistrez simplement ce service et il sera immédiatement accessible dans le menu "Services" de Safari ou toute autre application. Le script ouvrira automatiquement Chrome s'il n'est pas déjà ouvert, il ouvrira un nouvel onglet sauf si l'onglet en cours dans Chrome est un onglet vierge et il ouvrira dans cet onglet l'adresse de la page en cours dans Safari. Le service fonctionne si Safari est aussi fermé, mais dans ce cas un onglet vide s'ouvrira dans Chrome.

http://static.macg.co/img/2011/2/skitched-20110315-184231.jpg

La dernière étape consiste à ajouter un raccourci clavier à ce service pour simplifier son utilisation. Cela se fait depuis les préférences systèmes, panneau "Clavier" puis onglet "Raccourcis clavier". Deux possibilités alors, soit ajouter le raccourci au service directement dans la dédiée aux Services, soit ajouter un raccourci d'applications pour toutes les applications en utilisant le nom du service. Dans les deux cas, vous pourrez désormais ouvrir la page en cours de Safari dans Chrome à n'importe quel moment et quelle que soit la version de Chrome…

http://static.macg.co/img/2011/2/skitched-20110315-190837.jpg

[MàJ] : un lecteur nous a signalé une solution beaucoup plus simple que l'AppleScript décrit plus haut. Cette solution utilise le langage Shell, plus puissant, mais aussi plus complexe à maîtriser même si le résultat est extrêmement simple.

Pour la mettre en œuvre, vous devez toujours créer un service dans Automator en veillant à indiquer "pas d'entrée" dans "Réception du service" (1)

http://static.macg.co/img/2011/2/skitched-20110316-174254.jpg

Ajoutez à ce service deux actions Automator (utilisez la recherche du logiciel pour les trouver) : "Obtenir la page Web actuelle de Safari" (2) puis "Exécuter un script Shell" (3). La première action ne nécessite aucune intervention de votre part.

Pour l'action dédiée au script Shell, commencez par modifier le champ "Données en entrées" pour le positionner sur "comme arguments" (4). Dans la partie centrale, enlevez tout le code qui sera ajouté automatiquement et remplacez-le par celui-ci : « open $1 -a /Applications/Google\ Chrome.app ». Ce code va ouvrir dans l'application Chrome (c'est le sens du -a) l'URL envoyée par l'action précédente d'Automator (c'est le sens du $1).

Ce service fonctionne aussi bien que le script Apple Script précédent. Si Chrome n'est pas ouvert, il sera automatiquement lancé. Seule différence, un nouvel onglet sera toujours créé, même si l'onglet actuel est vide. Si l'astuce vous intéresse, choisissez l'une ou l'autre solution, sachant que cette dernière est plus élégante et sans doute plus fiable.

merci @JegnuX

Rejoignez le Club iGen

Soutenez le travail d'une rédaction indépendante.

Rejoignez la plus grande communauté Apple francophone !

S'abonner

iPhone Air, Pro et pliable : Apple prépare de grands bouleversements

18:51

• 36


Quelle est la capacité de stockage de votre Mac ?

15:00

• 61


Fnac : 10 € offerts tous les 100 € sur des produits Apple et autres

08:32

• 4


Sortie de veille : Apple tient bon la barre, mais cela va-t-il durer ?

08:00

• 19


TikTok écope de 530 millions d’euros d'amende en Union européenne

02/05/2025 à 21:45

• 45


Apple aurait intégré l’IA Claude dans une version interne de Xcode, enterrant un peu plus Swift Assist

02/05/2025 à 20:45

• 21


Enfin une solution simple pour télécharger vos vidéos et playlists préférées sur YouTube

02/05/2025 à 17:35

• 0


« Le pape François indifférent au décès de Zidane » : pourquoi Apple Intelligence résume si mal les titres d’articles

02/05/2025 à 17:35

• 69


French Days : le MacBook Air M2 glisse à 850 €

02/05/2025 à 15:56

• 1


Promos sur des batteries externes de grosse capacité pour iPhone et MacBook

02/05/2025 à 15:50

• 0


Amazon : 25 € de réduction à partir de 75 € d'achat

02/05/2025 à 15:17

• 11


MacBook Air M4 : la chute des prix se poursuit encore sur ce nouvel incontournable 🆕

02/05/2025 à 14:32

• 59


Mira Pro Color : le bel écran E Ink 25 pouces de Boox passe à la couleur

02/05/2025 à 13:15

• 13


MacUpdater cherche un acheteur pour rester à jour

02/05/2025 à 12:30

• 16


Selon Tim Cook, Apple « progresse » sur le développement du nouveau Siri

02/05/2025 à 10:58

• 47


Cotypist suggère du texte soufflé par l’IA dans toutes les apps sur le Mac

02/05/2025 à 10:45

• 4