L'extension du jour : Open With pour Firefox

Rédigé par antistress le 25 avril 2020 (mis à jour le 17 juin 2020) - 6 commentaires

Super heros capé arborant le logo de Firefox sur la poitrine
Captain Extensions recommande Open With

Open With est une extension libre pour Firefox, qui est remarquable à plusieurs titres.

De par son ancienneté, d'abord : on retrouve des commentaires à son sujet sur AMO qui ont plus de onze ans (époque de Firefox 3) !

Et parce qu'elle est assez unique en son genre, ensuite.

Open With, c'est fait pour quoi ?

D'après la page AMO de l'extension :

Besoin de tester vos pages Web dans Internet Explorer, Chrome, Safari, Opera (ou autre chose d'ailleurs) ? Open With ajoute des options à vos menus et barres d'onglets pour ouvrir la page en cours dans un autre navigateur.

Voilà, c'est tout simple. Utile notamment aux développeurs Web qui voudraient tester leur page.

En revanche, depuis le passage à l'API WebExtensions, l'installation s'est un peu complexifiée et nécessite un fichier complémentaire (un script python). Mais l'extension vous prend par la main : installez-là, allez dans les options et suivez les instructions.

Mais encore ?

En fait, ce que fait plus généralement l'extension, c'est passer l'URL de l'onglet courant à un programme.

Et ce programme est configurable.

Ainsi, pour reprendre l'exemple du développeur Web, celui-ci pourra utiliser l'extension pour envoyer la page vers son éditeur de texte préféré.

Du coup, on peut l'utiliser avec youtube-dl par exemple ?

Tout à fait : c'est même comme ça que j'ai découvert Open With (sur reddit) et que je l'utilise.

Je réfléchissais à la manière de me faciliter la tâche pour récupérer vidéos et podcasts avec youtube-dl.

J'ai d'abord eu l'idée de me créer sous GNOME un raccourci clavier (en passant par Paramètres>Raccourcis clavier) : un bon vieux ctrl+alt+T qui lancerait gnome-terminal.

C'est pas mal, mais le terminal s'ouvre par défaut dans mon /home et ça devient vite le bazar. Sur debian-fr.org, doo m'indique comment configurer le raccourci pour qu'il s'ouvre directement dans mon répertoire Téléchargements : gnome-terminal --working-directory=/chemin/vers/Téléchargements.

C'est mieux : je peux enchaîner ctrl+alt+T, saisir yo et tabuler (pour l'autocomplétion en youtube-dl), coller l'URL et valider pour que le son ou la vidéo se retrouve dans mon répertoire Téléchargements. Mais ça reste du boulot.

Pour aller plus loin j'ai deux possibilités : soit un script (couplé à un alias) qui demande l'URL avant de lancer youtube-dl directement dans le bon répertoire, soit une extension pour Firefox qui passerait directement l'URL à un script.

C'est donc cette deuxième solution que j'ai choisie, et le script en question, tout simple, est celui-ci (à adapter pour le faire pointer vers le bon répertoire) :

#!/bin/bash
# If no Argument found then don't proceed:exit
if [ -z "$1" ]; then exit 1; fi
ChanURL=$1
youtube-dl -f best --geo-bypass --write-description -civw
-o "/home/$USER/Video/Youtube/%(title)s-%(id)s.%(ext)s"
"$ChanURL"

Ensuite allez dans les options de l'extension, sélectionnez « Add browser », donnez un nom à votre programme, et pointez vers le script (que vous aurez préalablement rendu exécutable) en ajoutant l'argument %s à la fin pour le passage de l'URL.

Il vous reste alors à indiquer une icône : je vous mets ici celle que j'utilise, créée à partir de « add movie » par arjuazka sur Noun Project.

Y'a pas plus simple ?!!

Bon, allez : mais c'est bien parce que c'est vous :)

Installez Video Downloader depuis FlatHub (profitez-en pour récupérer l’icône sur la page, et n'hésitez pas à la passer à la moulinette d'optipng pour réduire son poids d'un tiers les doigts dans le nez ;).

Maintenant dans Open With, cliquez sur « Add browser » et entrez la commande suivante :

flatpak run com.github.unrud.VideoDownloader --url %s

Selectionnez l'icône, et voilà :)

Vous pouvez changer le répertoire de téléchargement utilisé par Video Downloader comme indiqué ici, choisir de lancer soit l'onglet audio soit l'onglet vidéo comme indiqué ici, ou choisir de privilégier H264 plutôt que VP9 comme indiqué .

D'autres usages

Vu que je bloque pas mal de domaines depuis mon profile principal, quand une page semble mal s'afficher je l'affiche en mode navigation privée (parce qu'il permet une activation différenciée des extensions. Sur mon profile, le mode navigation privée n'a que le minimum d'extensions, à savoir NoScript par sécurité contre la vulnérabilité XSS, et Lightbeam ou Kimetrak – pour trouver le fautif et ajuster ma liste de blocage). Pour faciliter cette gymnastique, allez comme d'habitude dans les réglages d'Open With, cliquez sur « Add browser » et entrez la commande suivante si vous avez installé Firefox depuis FlatHub :

flatpak run org.mozilla.firefox -private-window %s

ou, si vous avez installé Firefox à partir des paquets de votre distribution :

firefox -private-window %s

Conclusion

Je suis plutôt satisfait du montage, même s'il manque un témoin (visuel ou sonore) pour indiquer quand le téléchargement est achevé (si quelqu'un peut indiquer comment l'ajouter au script, je veux bien !).

L'inconvénient serait d'alourdir le navigateur d'une extension de plus. Mais le gestionnaire de tâches de Firefox ne révèle aucune consommation processeur significative et montre un usage mémoire très raisonnable de 400 Ko tout rond.

L'extension peut aussi servir pour envoyer les vidéos en ligne vers votre lecteur préféré : VLC media player, mpv…

Enfin, il existe des extensions toutes faites, bâties sur le même principe que l'association Open With + youtube-dl : Youtube-dl for Linux, Youtube-dl For Extension (cette dernière semblant très complète). Je ne les ai pas essayées, séduit par l'idée de faire mon légo moi-même et rassuré par le sérieux du développeur de l'extension Open With. Mais je serais curieux de vos retours si vous les essayez.

Open With existe aussi pour Thunderbird, permettant d'ouvrir des liens dans l'application de votre choix. Après tout, l'auteur d'Open With est un des développeurs de Thunderbird !

L'illustration de ce billet est une composition réalisée par mes soins avec GIMP à partir de cette image et donc soumise à la même licence CC BY-SA 2.0 que cette dernière.

Classé dans : logiciels - Mots clés : aucun

6 commentaires

#1  - oiseauroch a dit :

Bonjour,
pour le témoin, tu peux aller voir du coté de notify-send avec par exemple un code comme celui-ci :
if [ $? -ne 0 ] ; then # if command exit with error, notify and exit
notify-send "unable to download $1"
exit 1
notify-send "video $1 downloaded"
(ou plus concis, rajouter && notify-send "video $1 downloaded" || notify-send "unable to download $1" à la ligne youtube-dl

Répondre
#2  - LittleWhite a dit :

+1 pour le notify-send.
J'ai un script similaire au votre, mais je l'ai câblé aux raccourcis clavier et non à l'aide d'une extension du navigateur.
Pour que cela marche, je récupère le contenu du presse-papier (xsel) (il me faut donc avoir copier le lien YT). Dans l'utilisation, j'appuie sur mon raccourci clavier et voilà, youtube-dl se lance et la vidéo se télécharge (et le notify-send me permet de vérifier que tout se passe bien).

Répondre
#3  - antistress a dit :

Pas mal comme idée ! Voudrais-tu partager ton script ?
Pour gagner du temps, sais-tu que tu peux ajouter une icône "Copier le lien" à la barre d'adresse de Firefox (menu ··· puis clic droit sur l'entrée "Copier le lien")

Par contre, est-ce que la récupération du presse-papier marche sous Wayland ?

Répondre
#4  - antistress a dit :

@oiseauroch : Je vais tester, merci beaucoup ! :)

Pour les lecteurs : notify-send est fourni par le paquet libnotify-bin sous Debian.

Répondre
#5  - antistress a dit :

@oiseauroch : Ça n'a pas l'air de fonctionner mais je n'y connais rien en script bash...
Je vais à la ligne après "$ChanURL"
et j'ajoute :
if [ $? -ne 0 ] ; then # if command exit with error, notify and exit
notify-send "unable to download $1"
exit 1
notify-send "video $1 downloaded"
c'est bien ça ?

Répondre
#6  - InfoLibre a dit :

Une autre extension qui serait très intéressante à utiliser avec Open With : https://github.com/rowrawer/stream-detector

Répondre

Fil RSS des commentaires de cet article

Écrire un commentaire

NB : en publiant votre commentaire, vous acceptez qu'il soit placé sous la licence CC BY-SA comme indiqué aux conditions d'utilisation du site

Quelle est la première lettre du mot fbanlv1p ?