Raccourcis et AppleScript
JPGBoost s'intègre aux outils d'automatisation intégrés à macOS. Une action native est disponible dans Raccourcis et Spotlight, et une commande compress est exposée à AppleScript et Automator.
Cette fonction est disponible sur JPGBoost Free comme sur JPGBoost Pro. Sur Free, chaque image traitée compte dans le quota quotidien : 50 images par jour et 5 Mo par fichier. JPGBoost Pro lève ces deux limites.
Deux façons d'automatiser
JPGBoost expose deux interfaces d'automatisation natives à macOS. Toutes deux fonctionnent en traitement autonome : elles prennent des fichiers et des réglages en entrée, renvoient des fichiers compressés en sortie, et sont indépendantes de la liste actuellement ouverte dans la fenêtre de l'application.
- App Intents pour l'app Raccourcis et Spotlight.
- AppleScript pour
osascript, l'Éditeur de script et Automator.
L'application n'a pas besoin d'être ouverte
C'est la principale différence avec l'API locale et les dossiers surveillés, qui exigent tous deux une application déjà lancée.
Qu'il s'agisse d'une action Raccourcis ou de la commande AppleScript compress, macOS relance JPGBoost automatiquement dès qu'une requête arrive, comme pour n'importe quelle application scriptable. Vous n'avez rien à faire, même si vous aviez explicitement quitté l'application auparavant.
Le seul effet visible est un léger délai, le temps du lancement, lorsque l'application n'était pas déjà ouverte. Une fois le traitement terminé, elle reste ouverte : macOS ne la referme pas automatiquement.
L'action « Compresser des images »
L'action apparaît automatiquement dans l'app Raccourcis, catégorie JPGBoost, dès que l'application a été lancée une fois. Aucune configuration n'est nécessaire.
- Ouvrez l'app Raccourcis et créez un raccourci.
- Ajoutez une action qui fournit des fichiers, par exemple Sélectionner des fichiers ou Obtenir le contenu du dossier.
- Ajoutez l'action Compresser des images de JPGBoost.
- Renseignez les paramètres souhaités. Ceux que vous laissez vides peuvent être fournis par un profil d'export.
- Enchaînez si besoin avec une autre action : l'action renvoie les fichiers compressés.
| Paramètre | Rôle | Obligatoire |
|---|---|---|
| Fichiers d'entrée | Les images à compresser | Oui |
| Output Format | Format de sortie souhaité | Non |
| Quality | Qualité de 1 à 100 | Non |
| Export Profile | Nom d'un profil d'export existant | Non |
| Destination Folder | Dossier de sortie (voir la mise en garde ci-dessous) | Non |
Le champ « Dossier de destination »
C'est le point qui déroute le plus souvent. Le champ Destination Folder est difficile à renseigner correctement depuis l'éditeur de raccourcis. La solution fiable consiste à passer par un profil d'export.
Ce champ attend une véritable référence de dossier au format URL, c'est-à-dire un chemin commençant par file:// (par exemple file:///Users/moi/Downloads/), et non du texte brut. Les méthodes suivantes échouent avec une erreur Invalid URL :
- saisir un chemin à la main, par exemple
/Users/moi/Downloads; - faire glisser un dossier depuis le Finder sur le champ, qui n'y dépose que du texte brut.
L'éditeur de raccourcis de macOS ne propose par ailleurs aucune action native de type « Choisir un dossier » permettant d'en construire une autrement. La bonne nouvelle, c'est qu'un raccourci construit à la main n'est pas obligatoire du tout. Tout dépend de ce que vous voulez déclencher.
Cas 1 : aucun raccourci à construire
Dès que JPGBoost a été lancée au moins une fois, la phrase générique qu'elle déclare elle même (« Compresser des images avec JPGBoost », « Compresser avec JPGBoost ») est directement reconnue par Spotlight, sans jamais ouvrir l'app Raccourcis.
Cette invocation brute ne transmet que les fichiers sélectionnés. Aucun autre paramètre n'est fourni, ce qui provoque l'erreur « Dossier de destination manquant » tant que la configuration préalable n'a pas été effectuée.
Pour que cette invocation fonctionne :
- Dans JPGBoost, ouvrez Réglages → Profils et définissez un profil comme profil par défaut, avec un dossier de destination configuré.
- Dans le Finder, sélectionnez les images à compresser.
- Appuyez sur
⌘Espace, puis saisissez « Compresser des images ».
JPGBoost complète alors automatiquement les paramètres manquants à partir du profil par défaut, notamment le dossier de destination, le format et la qualité.
Aucun raccourci n'est nécessaire dans l'app Raccourcis.
Cas 2 : avec un raccourci construit
Ce cas est utile lorsque plusieurs comportements doivent être disponibles sous des noms distincts. Par exemple, « Compresser vers Bureau » peut utiliser un profil, tandis que « Compresser vers Archives » en utilise un autre. Le profil par défaut du cas 1 ne permet de gérer qu'un seul comportement à la fois.
- Dans JPGBoost, ouvrez Réglages → Profils et créez un profil avec un dossier de destination, sélectionné à l'aide du sélecteur natif de l'application.
- Dans l'app Raccourcis, créez un nouveau raccourci et donnez lui un nom explicite, par exemple « Compresser vers Bureau ».
- Dans l'action JPGBoost du raccourci, renseignez uniquement Export Profile avec le nom du profil à utiliser. Laissez Destination Folder vide : le dossier défini dans le profil sera automatiquement utilisé.
- Le raccourci est alors directement disponible dans Spotlight sous le nom que vous lui avez donné, sans passer par la phrase générique déclarée par JPGBoost.
Spotlight
L'action est également accessible depuis Spotlight. Les phrases déclenchantes, du type « Compresser des images avec JPGBoost », sont traduites dans les quinze langues prises en charge.
Le titre de l'action, sa description, ses paramètres et ses messages d'erreur suivent la langue de l'outil qui les affiche (Raccourcis ou Spotlight), indépendamment de la langue choisie pour la fenêtre de JPGBoost elle-même.
AppleScript
La commande compress s'utilise comme celle de n'importe quelle application scriptable.
tell application "JPGBoost"
compress {"/chemin/vers/image1.png", "/chemin/vers/image2.jpg"} ¬
to "/chemin/de/sortie" format "webp" quality 80
end tell
Les paramètres to, format et quality sont facultatifs. Le paramètre profile peut les remplacer ou compléter ce qu'ils ne couvrent pas, exactement comme --profile en ligne de commande.
tell application "JPGBoost"
compress {"/chemin/vers/image.png"} profile "Web JPEG"
end tell
La commande renvoie une chaîne JSON : un objet par fichier, avec les champs path, originalSizeBytes, compressedSizeBytes, ratio, destination et error. C'est la même forme que la sortie --json de la CLI et que les réponses de l'API locale.
Depuis le Terminal
osascript -e 'tell application "JPGBoost" to compress {"/chemin/image.png"} profile "Web JPEG"'
Depuis Automator
Utilisez l'action Exécuter un script AppleScript et collez-y le même bloc tell. Vous pouvez ainsi créer un service accessible depuis le menu contextuel du Finder.
Autorisation « Automatisation »
À la toute première utilisation, macOS affiche l'alerte habituelle d'autorisation « Automatisation » : l'application qui envoie la commande (Éditeur de script, Automator ou Raccourcis) souhaite contrôler JPGBoost. Cliquez sur Autoriser. Cette autorisation n'est demandée qu'une fois.
Résolution de problèmes
| Symptôme | Cause | Solution |
|---|---|---|
| Invalid URL sur le dossier de destination | Le champ a reçu du texte au lieu d'une référence de dossier | Utilisez un profil d'export avec dossier de destination et laissez le champ vide |
| L'action est absente de l'app Raccourcis | L'application n'a jamais été lancée | Ouvrez JPGBoost une fois, puis rouvrez Raccourcis |
| L'action échoue avec un message de quota | Le quota quotidien de JPGBoost Free est atteint (50 images), ou un fichier dépasse 5 Mo | Attendez la réinitialisation à minuit, ou passez à JPGBoost Pro pour lever les deux limites |
| Le script AppleScript renvoie une erreur | Autorisation Automatisation refusée | Vérifiez Réglages système → Confidentialité et sécurité → Automatisation. Un refus lié au quota Free, lui, n'interrompt pas le lot : il est signalé fichier par fichier dans le JSON renvoyé |