Mise à jour (6-Avril-2016). — RichPaste 1.7 fournit seulement des correctifs légers liés à la gestion de fichiers. Rappelons en passant que le script (RichPaste.jsx) s'installe de la même façon qu'un script InDesign ordinaire (ce n'est pas un script de démarrage).

Mise à jour (12-Jan-2016). — RichPaste 1.6 contient d'importants correctifs (en particulier, en liaison avec l'intégration du menu dans InDesign) et apporte diverses améliorations. Le script offre désormais une localisation en allemand grâce à mon confrère Uwe Laubender dont l'aide m'a été précieuse sur tous les fronts. Le texte composé en exposant/indice est maintenant pris en charge. Par ailleurs, les polices présentant une flexion « Oblique » sont dorénavant reconnues comme une variante de l'italique.

Comment installer la mise à jour ?

1. Quittez InDesign.
2. Déposez la nouvelle version de RichPaste.jsx à l'emplacement du fichier existant.
3. Redémarrez InDesign.
4. Exécutez RichPaste.jsx à partir de votre panneau Scripts. (Un message peut vous aviser de la mise à jour.)
5. Terminé. Vous pouvez fermer le panneau Scripts et lancer RichPaste à partir du menu Édition ou du menu contextuel sur clic droit.


Le problème

J'imagine que tout maquettiste a eu affaire, au moins une fois dans sa vie, à ce genre de document source :

Exemple (pas si fantaisiste) de texte ultra-enrichi à mettre en forme dans InDesign.

Pour recomposer un matériau aussi généreusement informe — merci l'auteur ! — la solution la plus expéditive consiste à éliminer toutes les fioritures avant d'appliquer la charte typographique de l'éditeur.

Le problème, c'est qu'en évacuant toute mise en forme vous perdez également une partie substantielle du contenu (italique, soulignement…), c'est-à-dire ces enrichissements qui participent de la sémantique du texte. La fonction « Coller sans mise en forme » apparaît donc trop radicale à cet égard :

Coller sans mise en forme.

La solution

Idéalement, on préférerait conserver certains de ces formatages indispensables tout en immunisant le document-cible contre l'irruption de polices sauvages, de styles importés et d'autres effets collatéraux. La solution médiane ressemblerait alors à ceci :

Coller AVEC mise en forme minimale.

Telle est la fonction de notre script du jour : RichPaste. Ce dernier propose une interface très simple permettant à l'utilisateur de choisir explicitement les attributs minimaux à conserver lors d'un collage enrichi à destination d'InDesign :

Fenêtre de préférences du script RichPaste.

Les options parlent d'elles-mêmes. Utilisez les champs Police #1 ou #2 pour maintenir des polices de caractères particulières (par exemple, Arial-Regular) ; à défaut, laissez ces champs vides. Vos réglages seront mémorisés jusqu'à leur prochain ajustement. Cochez la case « Ne pas afficher cette fenêtre avant de coller » pour inhiber la boîte de dialogue lors d'un collage enrichi. Vous pourrez toujours modifier vos réglages par la suite via le menu contextuel sur clic droit, ou à partir du menu Édition.

Les préferences RichPaste restent accessibles depuis le menu Édition d'InDesign.

Comme vous le constatez dans la capture ci-dessus, un autre élément de menu a été ajouté : Coller avec mise en forme | RichPaste. Celui-ci s'intègre également au menu contextuel (clic droit), offrant ainsi un accès immédiat au script dans un contexte d'édition (texte sélectionné ou point d'insertion) :

Exécution du script par clic droit contextuel.

Note. — Lors de son premier lancement (i.e. depuis le panneau Scripts) RichPaste installe automatiquement ses entrées de menu dans InDesign. Vous n'aurez donc plus besoin d'ouvrir le panneau Scripts par la suite.

Installation.RichPaste étant un script JSX classique, il suffit de déposer le fichier dans votre dossier 'Scripts Panel' pour le rendre opérationnel. En tâche de fond, le script fabrique un fichier de démarrage responsable du système de menus, mais ce processus reste transparent — en principe — à l'utilisateur. (Attention : ne placez pas le script lui-même dans un dossier « startup scripts » !)

Problèmes (plus ou moins) connus

Des bugs, ou comportements insatisfaisants, peuvent se manifester. Cela dépend de vos préférences InDesign, de la disponibilité des polices de caractères impliquées dans l'opération, ou encore de l'état interne du presse-papier lorsque le script s'exécute. Je n'ai pas étudié tous les cas problématiques et certaines difficultés me restent assez impénétrables à ce jour. Ainsi, sans raison apparente, InDesign peut quelquefois échouer dans le déchiffrage des attributs du presse-papier, même lorsque l'application source est réputée assurer une gestion loyale du texte enrichi.

RichPaste restitue les notes de bas de page, mais il ne tente pas de leur appliquer une mise en forme fidèle aux paramètres d'origine. Ainsi, la composition des notes est seulement gouvernée par vos paramètres InDesign courants, sachant qu'en ce domaine les bugs de l'application sont de notoriété publique depuis une bonne décennie.