Extension de texte III Remplissage par script

TextExpander est une application de productivité Mac puissante. Il étend automatiquement les raccourcis clavier - ou abréviations-en blocs de texte plus longs-extraits

Si vous envoyez à plusieurs reprises les mêmes courriels de base ou écrivez les mêmes informations, telles qu'une adresse ou un numéro de téléphone, TextExpander rend la vie plus facile.

Dans les deux précédents tutoriels de cette série, j’ai envisagé de commencer avec TextExpander et comment utiliser des fonctionnalités plus avancées telles que les remplissages et les macros d'heure et de date.

Dans ce tutoriel, je vais utiliser des langages de script tels que JavaScript et AppleScript dans remplir ins.

Screencast

TextExpander et langages de script

TextExpander prend en charge trois langages de script: Shell Script, JavaScript et AppleScript. Pour les besoins de ce tutoriel, je vais me concentrer sur les deux derniers car ils sont les plus flexibles. Avec les langages de script, vous pouvez ajouter de la logique à votre TextExpander remplir ins.

Par exemple, dans l'un des exemples de fragments de ce tutoriel, l'utilisation de la fonction Remplir renvoie un résultat différent en fonction du jour où vous l'utilisez. Un autre extrait de code renvoie une réponse aléatoire parmi un tableau de plusieurs réponses possibles. Ce sont tous deux impossible à faire dans TextExpander sans langage de script.

JavaScript est le plus utile des trois proposés, car il fonctionne également avec TextExpander Touch, l'appli compagnon iOS, je vais regarder dans le prochain tutoriel de cette série.

Conditions préalables

Pour utiliser ce tutoriel, vous aurez besoin de la dernière version de TextExpander installée. Il coûte 44,95 $ (bien qu'il y ait un essai gratuit de 30 jours) et peut être téléchargé à partir du site Web du développeur..

Vous devrez également vous familiariser avec TextExpander et remplissez ins. Si vous ne l'êtes pas déjà, le meilleur moyen de vous mettre à niveau est de consulter les deux tutoriels précédents de cette série:

  • TextExpander: une introduction
  • TextExpander II: Remplir Ins et Macros

De plus, dans ce tutoriel, j'utilise des scripts JavaScript et AppleScript très simples. Vous n'avez pas besoin de vous familiariser avec l'une ou l'autre langue bien que cela aide. 

Pour en savoir plus sur JavaScript, consultez ce didacticiel Code.Tuts +. Pour en savoir plus sur AppleScript, consultez ce didacticiel ici, dans Computers.Tuts.+.

Utilisation de la logique simple avec JavaScript

Le premier extrait que je crée retourne soit Je te reviendrai demain ou Je te reviendrai après le week-end selon qu'il s'agisse d'un jour de semaine ou d'un week-end, y compris le vendredi.

Pour cet extrait de code, j'utilise la fonction de date intégrée de JavaScripts. Pour plus d'informations sur les spécificités, vous pouvez trouver la documentation ici.

Créer un nouveau fragment et définir son Contenu à JavaScript. Attribuez-lui une abréviation simple et pertinente.

Ensuite, vous devez créer une variable pour conserver les informations de date du jour. Pour ce faire, entrez var today = new Date (); comme la première ligne de l'extrait.

Sur la ligne suivante, entrez today.setDate (TextExpander.baseDate.getDate ());. Cela définit le aujourd'hui variable à la date du jour.

Le résultat d'un extrait qui utilise un langage de script par défaut est la dernière instruction exécutée dans l'extrait.. 

Pour finir, vous devez vérifier si nous sommes aujourd'hui vendredi, samedi ou dimanche. Le suivant si boucle fait cela et, en fonction du résultat, renvoie l'une des deux phrases possibles. Ajoutez le code ci-dessous à votre extrait pour terminer.

if (today.getDay () == 5 || today.getDay () == 6 || today.getDay () == 0) 'Je vous recontacterai après le week-end. ';  sinon 'je te reviendrai demain. '; 

Lorsque vous entrez l'abréviation, en fonction du jour, vous dites aux gens que vous répondrez demain ou après le week-end..

Pointe: N'oubliez pas que des extraits de code peuvent être intégrés à d'autres extraits. Cet extrait de réponse dépendant de la journée peut être utilisé dans tout extrait de courrier électronique plus long que vous avez..

Création d'un remplissage aléatoire avec JavaScript

Un problème avec les extraits est qu'ils peuvent être très rigides. Si chacun de vos e-mails a la même structure avec peu ou pas de variation, vous paraîtrez étouffé et trop formel. Avec les langages de script, vous pouvez résoudre ce problème en ajoutant un caractère aléatoire à vos extraits..

le TextExpander L’équipe suggère un extrait qui sélectionne de manière aléatoire une salutation finale parmi plusieurs acceptables, comme Votre sincèrement, Cordialement et La paix. C'est une excellente utilisation pour cette méthode. Pour ce tutoriel, cependant, je l'utilise pour quelque chose d'un peu différent.

Les résultats de l'exécution de la question aléatoire complètent un certain nombre de fois.

J'essaie de mieux m'occuper de la tenue d'un journal, cependant, il arrive souvent que rien ne se passe pendant la journée qui mérite d'être écrit. Quand cela se produit, je n'écris pas, rompant ainsi l'habitude. 

Pour surmonter cela, j'ai créé l'extrait suivant qui m'invite à écrire quelque chose au hasard sur chaque moment où j'ai besoin de quelque chose..

Encore une fois, commencez par créer un nouveau fragment et définissez son Contenu à JavaScript. Attribuez-lui une abréviation telle que xjournal.

Ce fragment de code nécessite deux parties, un tableau stockant toutes les valeurs possibles et la logique pour en sélectionner une au hasard. Tout d'abord, je vais créer le tableau. C'est la méthode la plus simple pour déclarer un tableau avec JavaScript.

Copiez et collez le code ci-dessous dans votre extrait. N'hésitez pas à modifier le contenu du tableau en une collection d'extraits de code que vous souhaitez sélectionner de manière aléatoire..

var qList = ["_écrivez sur l'une de vos plus grandes inspirations._", "_écrivez sur l'un de vos plus grands influenceurs._", "_écrivez sur l'un des meilleurs endroits où vous avez été._", "_écrivez sur un fou adventure._ "," _écrivez sur une photo que vous avez prise "," _écrivez sur l'un des meilleurs jours de votre vie._ "," _écrivez sur l'un des pires jours de votre vie._ "," _ quoi changerais-tu sur toi-même? _ "," _écris un de tes plus grands succès "," _écrit un de tes plus grands regrets "," "où veux-tu être dans un an à partir d’aujourd’hui? vous voulez faire une année à partir d’aujourd’hui? _ "," _écrivez au sujet d’un de vos personnages préférés._ "," _écrivez au sujet d’un de vos livres préférés. à propos de l’un de vos artistes musicaux préférés._ "]

Avec le tableau créé, il est temps de le sélectionner de manière aléatoire. Cela nécessite trois lignes de code: une pour compter le nombre d'extraits, une pour sélectionner un nombre aléatoire inférieur ou égal à celui-ci et une pour sélectionner l'extrait situé à l'emplacement du nombre aléatoire dans le tableau..

Ajoutez les trois lignes suivantes à votre extrait pour le faire.

var qLength = qList.length var qRandom = Math.floor ((Math.random () * qLength)); qList [qRandom]

Maintenant, lorsque vous entrez l'abréviation, une question aléatoire sera renvoyée.

Pointe: Les traits de soulignement rendent les questions en italique lorsque vous écrivez dans une application de journalisation, telle que Jour un-qui soutient Markdown.

Le même extrait avec AppleScript

Bien que je préfère utiliser JavaScript car il fonctionne avec TextExpander Touch, AppleScript a aussi ses fans. Vous trouverez ci-dessous le code de la question de journal aléatoire écrite en AppleScript. Vous pouvez voir qu'il utilise exactement la même logique, la seule différence est le langage utilisé.

réglez qList sur "_écrivez sur l’une de vos plus grandes inspirations._", "_écrivez sur l’un de vos plus grands influenceurs._", "_écrivez sur l’un des meilleurs endroits où vous êtes allé._", "_écrivez sur un fou adventure._ "," _écrivez sur une photo que vous avez prise "," _écrivez sur l'un des meilleurs jours de votre vie._ "," _écrivez sur l'un des pires jours de votre vie._ "," _ quoi changerais-tu sur toi-même? _ "," _écris un de tes plus grands succès "," _écrit un de tes plus grands regrets "," "où veux-tu être dans un an à partir d’aujourd’hui? vous voulez faire une année à partir d’aujourd’hui? _ "," _écrivez sur l’un de vos personnages préférés._ "," _écrivez sur un de vos livres préférés ._ "," _écrivez sur un de vos films préférés._ "," _écrit à propos de l’un de vos artistes musicaux préférés._ " définir listLength pour compter qListe définir randomNumber sur (nombre aléatoire compris entre 1 et listLength) définir selectedQ sur élément randomNumber de qList retourner selectedQ

Conclusion

Dans ce tutoriel, j'ai étudié l'utilisation de langages de script pour ajouter une logique simple à vos extraits. Bien que je vous ai montré comment un extrait renvoyait différentes valeurs soit au hasard, soit en fonction du jour, ce ne sont que les bases de ce que vous pouvez faire avec les langages de script et TextExpander. Si vous pouvez l'écrire en JavaScript, vous pouvez l'exécuter en TextExpander.

J'aimerais entendre comment d'autres personnes utilisent les langages de script avec TextExpander alors, si vous le faites, faites-le moi savoir dans les commentaires ci-dessous.