Utiliser un script dans une application Adobe, bonne ou mauvaises idée?

automatisation image

Rédigeant des scripts moi-même, je suis en faveur et je trouve qu’utiliser des scripts pour accélérer un workflow est une excellente idée. Mais attention, tous les scripts ne sont pas nécessairement bien fait, et ne seront peut-être pas à la hauteur de vos attentes.

Je parlerai surtout de InDesign dans cet article mais sachez que plusieurs applications, entre autres Photoshop et Acrobat, permettent aussi l’utilisation des scripts.

Un script c’est quoi et à quoi ça sert?

Un script est un document texte avec des instructions destinée à l’application qui le lis. Lorsque InDesign lira le script, il comprendra, par exemple, de créer un bloc, ajouter un guide, appliquer un formatage, etc. Donc, les scripts servent à automatiser une tâche.

Mais encore, vous me direz? Eh bien cela dépends! Ils peuvent accélérer votre travail, ou même faire travailler l’ordinateur à votre place.

Voici quelques exemples de scripts disponible dans InDesign, prêts pour l’utilisation:

  • AddGuides ajoutera des guides autour des objets de votre page, selon les paramètres que vous choisissez;
  • Align to Page alignera tout objets sélectionnés à la page ou à la marge, du côté choisis;
  • Crop Marks ajoutera des marques de coupe autour du ou des objets sélectionnés;
  • Image Catalog fera une page «contact» de toutes les images d’un même dossier;
  • Make Grid permet de diviser un objet sélectionné de façon égale dans l’espace qu’il utilise (voir vidéo pour un exemple);
  • Sort Paragraph triera les paragraphes d’un bloc texte.

 

Répondre à des besoins particulier

Comme vous voyez, un script est fait pour répondre à un besoin. Parfois, par chance, il existera un script déjà rédigé qui convient à vos besoin et vous pourrez alors l’utiliser. Mais dans la majorité des cas, vous devrez trouver un concepteur ou concevoir vous même un script personnalisé.

Voici quelques cas qui m’ont étés présentés pour lesquels j’ai dû créer des scripts.

Premier cas: nettoyage de textes Excel pour utiliser dans InDesign

Nous recevons 5 listings de produits par semaines en format Excel. Ces textes, qui contiennent environ 200 produits chacun, doivent êtres nettoyés, corrigés et formatés avec des styles InDesign pour êtres utiliser par la suite. Le script lis le document Excel, analyse le contenu pour reconnaître la bannière et applique les correctifs selon le cas. Ce qui prenait entre 30 et 45 minutes (x5) pour une personne habitué qui pouvais oublier certaines choses, le script fais tout en 10 secondes.

Second cas: plusieurs photos doivent êtres placées

J’ai une liste de 200 codes photos et je dois les placer dans une pages InDesign. Le problème est que les photos sont toutes placées dans 5 niveaux de sous-dossiers. Par exemple, le fichier 10002456.png se trouve…

image hierarchie 5 sous-dossier

Exemple d’une image, placée dans un volume image, avec 5 sous-dossiers.

Le script ira chercher toutes mes photos et les placera dans un document InDesign avec le nom en dessous, selon le nombre de colonne que je demande.

Troisième cas

J’ai 650 documents différents de 6 x 5 po avec des adresses. Il y a un layer avec un logo anglophone et un autre layer pour le logo francophone (évidemment dans cet exemple, le logo a été remplacé). Le texte de l’adresse est sur le layer base, ainsi qu’un autre bloc avec un numéro de série. La demande du client est de changer le format pour 10 x 1 po, et de placer l’information sur une seule ligne.

Certaines adresses sont très longues et le script devra appliquer un Horizontal Scale lorsque au besoin pour toujours n’avoir qu’une seule ligne.

image-adresse-format-original

Format original des adresses 7.75 x 2.75 po

image-adresse-nouveau-format

Nouveau format des adresses 10 x 1 po

À l’aide du script (3 heures de programmation), l’opération a ensuite pris 15 minutes.

Où sont les scripts InDesign?

Les scripts se trouvent dans la palette Scripts (Windows> Utilities> Scripts) lorsque vous installez InDesign. Une chose a savoir, c’est que les scripts officiels de InDesign se trouvent dans le dossier Application de la palette.

image palette script adobe indesign

Les script officiels fournis par InDesign se trouvent dans le dossier «Application» de la palette InDesign.

Pourquoi deux dossiers (AppleScript et JavaScript)?

Dans le dossier Application> Sample, vous pourrez choisir le dossier AppleScript ou JavaScript. Ce sont les mêmes scripts mais programmés dans un langage différent. C’est utile pour ceux qui désirent ouvrir les scripts et tenter de comprendre comment ça fonctionne. Mais pour le commun des mortels, un ou l’autre donneront le même résultat.

Notez que les utilisateur Windows ne verrons pas AppleScript car c’est un langage exclusif à Mac. Ils auront le dossier VB Scripts (de mémoire…) qui est, vous l’aurez deviné, exclusif à Windows.

Personnellement, j’ai décidé d’utiliser le JavaScript pour deux raisons. La première, c’est universel (Mac/Win). La seconde, c’est aussi utilisé en HTML.

Vous ne voyez pas le dossier User?

Le dossier User s’affichera seulement lorsque vous ajouterez des scripts vous-même. Les scripts ajoutés ne doivent pas aller dans le dossier Application, où se trouvent les scripts officiels.

Comment ajouter des scripts?

La façon la plus simple est de faire un clique-droit sur le dossier User et choisir Reveal in Finder.

Screen Shot 2014-10-24 at 8.00.34
Si vous ne voyez pas le dossier User, voici le chemin complet (pour les utilisateur de Mac) pour vous rendre aux scripts. Vous devrez copier les nouveaux scripts à l’intérieur du dossier «Scripts Panel».
image Emplacement scripts user InDesign CC

Emplacement du dossier «Scripts User» pour InDesign CC. Si vous utilisez une autre version, le numéro ne sera pas «Version 10». Pour InDesign CS6, par exemple, la version sera 8.0.

Une fois copié dans le dossier Scripts Panel, vous serez en mesure de voir le script dans la palette InDesign sans devoir quitter l’application.

Choses à savoir avant d’utiliser un script

Première des choses, les scripts trouvés sur le net sont fait par des gens de partout dans le monde, et ne sont jamais endossés par Adobe. De plus, toujours sauvegarder votre document avant d’utiliser un script.

N’oubliez-pas qu’utiliser un script est toujours à vos propres risques!

Est-ce qu’un script peut être dangereux?

Un JavaScript ne peut pas endommager votre ordinateur. Donc ça devient une troisième raison pourquoi je préfère utiliser ce langage. En gros, le JavaScript a des limites que le AppleScript ou le VB Script n’ont pas et pour cette raison, ça le rends inoffensif. Je ne connais pas assez les deux autres langages pour affirmer qu’ils peuvent (ou pas) représenter un danger mais dans le doute, je m’abstiens.

Pour des raisons parfois obscures, parfois moins, un script pourrais avoir un résultat étrange ou même faire planter InDesign. Cela peut dépendre de la façon dont il a été programmé, de la langue de InDesign ou d’une accumulation de trucs qui n’ont pas nécessairement rapport avec le script.

Par exemple, un programmeur novice pourrait engorger la mémoire avec son script. Pour une petite page, ça ne pose pas de problème mais pour un document de 200 pages, InDesign sortira le ballon de plage et ne répondra plus.

Pourquoi UNDO (CMD-z) ne fonctionne pas avec un script

Undo fonctionne, mais probablement pas comme vous vous attendez. La raison est fort simple: un script consiste à plusieurs opérations faites les unes à la suite des autres. Lorsque vous faites UNDO, vous annulez la dernière opération du script.

Prenez par exemple le script Make Grid démontré plus haut: il doit mesurer, calculer, réduire, dupliquer plusieurs fois, etc… et ce n’est que le résumé. Dans les faits, il y a beaucoup plus d’étapes! Imagines le nombre de Undo que vous devrez faire pour annules tout ça. C’est pour cette raison que je conseil de sauvegardez avant d’activer un script.

Lâchez votre souris et laisser le script travailler

C’est important de ne rien faire, même si ça n’a pas rapport avec InDesign, avec le poste de travail lorsqu’un script est en fonction. Certains scripts, selon la façon qu’ils sont programmés, prendrons en compte l’interaction de l’utilisateur et ne feront pas le travail correctement. Autrement dit, il va sauté des lignes de code et le résultat sera incomplet.

Certains script ne fonctionneront pas avec les nouvelles versions d’InDesign

Lorsqu’il y a des changements dans l’application, certaines fonctions sont différentes et alors les scripts doivent «demander» les choses différemment. Par exemple, InDesign CC permet de créer des groupes de nuancier. Si le script créé à l’époque de CS6 fait référence un nuancier, et que ce dernier est dans un groupe, le script ne le trouvera pas et affichera une erreur.

Où trouver des scripts ou des renseignement sur les scripts?

À mesure que vous chercherez, vous remarquerez que le monde des Scripts InDesign est un petit monde et que les même noms reviennent. Mon endroit de prédilection pour trouver des scripts est Google… Je sais, c’est poche comme conseil! Mais sans rire, c’est ce que je fais.

Forum Adobe anglophone

Le Forum Adobe est un bon endroit pour poser des question et trouver des bouts de script qui peuvent servir (à condition de parler anglais). Les gens sont assez généreux pour procurer des réponses aux questions posés par les utilisateurs, à condition que les utilisateurs montrent de la bonne volonté, expliquent leur démarche et n’attendent pas que les autres se tapent tout le travail. Avant de poser une question, faites vos recherches et montrez que vous avez fait des efforts! N’oubliez pas, les personnes sur les forums Adobe ne sont pas des employés Adobe.

Voici une courte liste (ne pas tenir compte de l’ordre et désolé si j’ai oublié quelqu’un) des noms en qui vous pouvez avoir pleinement confiance en ce qui concerne la qualité de leurs scripts: Jongware, Marc Autret, Loic Argon, Harbs, Peter Kahrel, Kasyan Servetsky, Rorohiko, Dave Saunders, Marijan Tompa (tomaxxi).

Ressources et références

Je vais très rarement sur le Forum Adobe en français mais vous pourrez tout de même y retrouver des personnes pour vous venir en aide.

Jongware a un site très complet sur le sujet avec des références pour toutes les versions de InDesign

Liste de sites comportant des scripts gratuits

Quelques uns de mes scripts personnels

J’ai mis disponible pour le téléchargement des scripts InDesign. Ils sont utilisés sur InDesign CS5.5 et CS6 en anglais. S’ils ne fonctionnent pas sur votre version d’InDesign, faites-le moi savoir (avec une capture du message d’erreur) et je verrai ce que je peux faire. Je ne peux évidemment pas mettre tous les script que je produit puisqu’ils sont pour la plupart ciblés pour un client en particulier.

Récupérer les textes sur un layer choisis

À partir d’un ou plusieurs documents InDesign, récupérez tous les textes d’un layer (qui doit porter le même nom à travers tous les documents choisis) et les exportez-les dans un document texte. Ce script est optimisé pour les Mac. Changer l’encodage pour Windows au besoin à la ligne 60.

Break Link to Styles

Il vous est arrivé de copier des éléments d’un document InDesign provenant de l’extérieur dans l’une de vos pages, et que tout devient chaotique? C’est probablement que la firme externe a créé son document en laissant les styles de base à tous les éléments.

Ce JavaScript pour InDesign va trouver les textes ayant le style de paragraphe «Basic Paragraph» et les objets ayant les styles «Basic Graphics Frame» ou «Basic Text Frame» et fera la commande «Break Link to Style».

Comment organiser efficacement ses scripts?

C’est bien d’avoir une multitude de scripts, mais si on dois les chercher à chaque fois, on ne gagne pas beaucoup de temps.

Attribuer un raccourcis clavier

Lorsque vous utilisez un script régulièrement, vous pouvez lui attribuer un raccourcis clavier à partir de Edit> Keyboard Shortcuts…

 

image raccourcis clavier

Fenêtre d’ajout de raccourcis clavier pour les scripts InDesign

 

Utiliser des Alias (ou raccourcis vers le fichier original)

Une autre méthode est d’utiliser les Alias (raccourcis pour les fichier). Plutôt que d’ouvrir le dossier Application> Sample> JavaScript et ensuite de trouver le script recherché dans la liste, je place un alias du fichier original dans le dossier Script.

 

indesign-script-finder-vs-palette

Placer un alias dans le dossier Script fonctionne aussi bien que de mettre le fichier original. De cette façon, vous pourrez mettre des alias des script que vous utilisez fréquemment plutôt que de chercher à chaque fois dans un sous-dossier.

Environnement où plusieurs postes impliqués

Je travail dans un environnement où plusieurs personnes utilisent les scripts. Ça ne fais aucun sens que je place le fichier script sur chacun des postes (35-40) car si je dois faire une mise à jour, je devrai passer à chacun des postes pour remplacer le fichier.

Pour que tous aient accès au mêmes scripts, je place tous les fichiers scripts sur un volume accessibles à tous. Ensuite, je place un raccourcis du dossier dans le dossier Scripts de chacun des postes. De cette façon, lorsque j’ajoute ou fais une mise à jour d’un script, je remplace celui au serveur et c’est tout.

Dans le cas des scripts dans le dossier Application, comme Make Grid, par exemple, je ne déplace pas le fichier script original. Je le laisse où il se trouve et je crée un Alias que je place dans le dossier Scripts.

Sur mon ordinateur personnel, mes scripts sont dans le dossier Dropbox, et j’ai des alias dans mon dossier Scripts. De cette façon, j’ai accès partout.

Pourquoi ne pas utiliser le double-clique sur le fichier Script?

Il y a une commande qui permet d’utiliser un script en le double cliquant. Ce que je n’aime pas de cette commande est que la version d’InDesign doit être précisée. Nous utilisons InDesign CS4 à CC alors ce n’est pas utile pour nous. De plus, j’ai eu quelques problèmes d’incompatibilité dans le passé avec cette méthode. La meilleur façon (et celle qui cause le moins de bogue) est d’utiliser le script à l’intérieur de la palette InDesign.

En conclusion

J’espère qu cet article vous aura éclairé sur ce qu’est un script et vous incitera à les utiliser. Le métier des art graphiques est une profession qui en demande toujours un peu plus pour un peu moins alors si on peut automatiser les tâches répétitives ennuyante, je ne vois vraiment pas d’inconvénient!

Groupe tma scripting image

Pour plus de détails sur les scripts InDesign, consultez la section des scripts Groupe tma:

www.groupetma.com/scripts


Loading...