Tout le monde connaît la fonction Insertion automatique ou Mise en forme automatique du traitement de texte Word®.  Elle permet d’entrer du texte plus facilement et plus rapidement en attribuant, par exemple, une abréviation à un mot ou groupe de mot. Il est ainsi plus facile d’écrire  « càd » que « c’est-à-dire » pour avoir au final la locution en long.

Sur le même principe, dans le cas de GREP, pourquoi ne pas remplacer le lookbehind positif (?<=) par « lbp » ou tout autre chose ? Pourquoi ne pas attribuer « alt » au métacaractère de l’alternative | dont vous oubliez toujours le raccourci clavier ? Et que tout cela se transforme en formule GREP en cours de frappe ?

C’est tout à fait possible grâce à la fonction Correction automatique d’InDesign (je vous invite à regarder le tutoriel en ligne de Pierre Labbe sur Wisibility, qui explique comment détourner cette fonction. Le tutoriel est ici).

Activez la fonction Correction automatique (Édition > Préférences > Correction automatique), choisissez une langue, puis indiquez par quel « mot » vous souhaitez remplacer tel ou tel métacaractère GREP. Dans l’exemple ci-dessous, nous avons choisi :

  • « alt » pour le métacaractère de l’alternative (|) ;
  • « lbn » pour le lookbehind négatif (?<!) ;
  • « lbp » pour le lookbehind positif (?<=).

Le fichier des corrections automatiques est un fichier au format xml. Ce qui veut dire que certains caractères sont interdits, car réservés pour une fonction propre. Ainsi le signe < ne peut pas être saisi tel quel dans les corrections (au risque d’avoir comme message d’erreur : L’entrée contient un caractère incorrect). Il faut le remplacer par &lt;

C’est pourquoi, nous sommes intervenus directement sur le fichier xml (French.xml) qui se trouve, sous Windows, dans Documents and Settings > [Nom d’utilisateur] > Application Data > Adobe > InDesign > [Version] > [Langue] > Autocorrect (chemin pour la CS4).

Bien sûr, l’astuce ne fonctionne qu’à la condition de rédiger une expression régulière directement dans un document InDesign. C’est d’ailleurs l’idéal si vous profitez de l’éditeur GREP de Peter Kahrel présenté ici-même

Si vous utilisez le document pré-formaté grep_format.inx avec InDesign CS4, n’oubliez pas de modifier la langue du style de paragraphe find_what qui, par défaut, est réglé sur Anglais : États-Unis. En effet, la langue choisie pour les corrections automatiques doit être identique à celle du paragraphe.

L’insertion d’un métacaractère GREP par ce biais crée toujours une espace après. Pour éviter qu’elle ne soit prise en compte dans la regex, commencez par désactiver le Respect des espaces au moyen de (?x) placé au début de l’expression régulière.

Voici une petite vidéo qui montre comment cela fonctionne. Nous utilisons ici le document pré-formaté grep_format.inx sous la CS4. La regex recherche le mot « folio » et ses abréviations sous différentes formes.