Dans un précédent tutoriel, Donnez à votre Mac une voix avec la synthèse vocale, je vous ai montré comment utiliser la fonction vocale de votre Mac. Une section particulière de ce guide décrit en détail le processus de création d’une sonnerie de mot parlé à l’aide du système Mac. dire
commande et l'application Mac Ringer.
Dans ce tutoriel, je vais vous montrer comment automatiser ce processus en créant un plug-in pour Contacts à l'aide de Automator. Ce plug-in générera automatiquement une sonnerie vocale que nous pourrons utiliser sans avoir à taper inlassablement quoi que ce soit dans Terminal..
Pour tirer le meilleur parti de nos sonneries, vous aurez besoin de l’application Mac Ringer (3,99 $ du Mac App Store). Je vais expliquer pourquoi cette application est requise un peu plus tard.
Notre service de contacts fonctionnera comme suit:
Je vais utiliser une combinaison d’Automator et d’un script shell pour répondre à nos besoins. Automator est un outil d'automatisation extrêmement puissant qui permet à quasiment tout le monde de créer des scripts extrêmement puissants avec peu ou pas d'expérience en script..
Les flux de travail Automator fonctionnent en prenant une entrée, qu'il s'agisse d'une sélection de fichier ou de texte, puis effectuent une action dessus..
Pointe: Si vous ne connaissez pas encore Automator, consultez nos précédents didacticiels, Automator 101: Établir votre premier flux de travail et approfondir vos connaissances sur Automator dans OS X.
Ouvrir Automator, situé dans votre Applications dossier et sélectionnez Un service comme type de document.
Une fois le nouveau document chargé, vous constaterez que notre service attend de recevoir la sélection texte dans toute application. Laissez la première option telle quelle mais changez toute application à Contacts.
dans le actes liste, recherche coquille et vous verrez une action appelée Exécuter un script shell. Faites-le glisser vers la zone de workflow principale..
Vous devez apporter une légère modification afin que nous puissions utiliser le texte que nous avons sélectionné dans le script, connu sous le nom de variable.
Changer l'option pour Pass entrée de stdin à comme arguments. Le contenu de l'action va alors changer et apparaître comme ci-dessous.
Pour faciliter les choses, j'ai inclus le script que vous devez entrer ci-dessous. C'est tout ce dont vous avez besoin dans l'action pour pouvoir effacer complètement l'action et la remplacer par le texte ci-dessous..
Étape f: "Spécifiez un emplacement temporaire et un nom de fichier pour enregistrer notre sonnerie sur loc = ~ / Nom du fichier du bureau = temp.aiff # Étape 2: Utilisez la commande 'say' pour générer notre sonnerie, dites -o $ loc / $ nomfichier "$ 1 appelle" # Étape 3: Maintenant, nous avons créé une sonnerie temporaire, renommons-la mv $ loc / $ nomfichier "$ loc / $ 1.aiff" # Étape 4: Enfin, ouvrons-la dans Sonnerie pour effectuer les derniers ajustements ouverts -a /Applications/Ringer.app "$ loc / $ 1.aiff" done
Décomposons ce script et explorons ce qu'il fait en premier.
# Étape 1: Spécifiez un emplacement temporaire et un nom de fichier pour enregistrer notre sonnerie dans loc = ~ / Desktop filename = temp.aiff
Cela concerne la définition de certaines informations temporaires. Dans le script ci-dessus, nous spécifions un nom et un emplacement temporaires pour notre fichier de sonnerie et nous les attribuons en tant que variable. Les variables de script shell commencent par un signe dollar lorsque nous voulons les utiliser.
Ici, notre sonnerie commencera à s’appeler temp.aiff (qui sera appelé $ filename
) et sera sauvegardé dans votre Bureau (dénommé $ loc
).
# Étape 2: Utilisez la commande 'say' pour générer notre sonnerie say -o $ loc / $ filename "$ 1 appelle"
Ici, nous utilisons le dire
commande pour dire le nom de notre contact en surbrillance et l'enregistrer dans un fichier audio. Nous utilisons 1 $
pour représenter l'entrée que Automator nous a donnée. Notre service utilise le texte que nous aurons sélectionné comme entrée et le transmettra à notre script shell, représenté par 1 $
. Tout comme notre nom de fichier temporaire, notre variable commence par un signe dollar.
Notre sonnerie dira "Nom du contact appelle ". Si vous faisiez cela pour Johnny Appleseed, la sonnerie dirait" Johnny Appleseed appelle ".
# Étape 3: Maintenant que nous avons créé une sonnerie temporaire, renommons-la mv $ loc / $ nom_fichier "$ loc / $ 1.aiff"
Cette étape renomme le fichier temporaire en le nom de notre contact. Par exemple, si je générais une sonnerie pour "Johnny Appleseed", elle commencerait par temp.aiff et ensuite être renommé en Johnny Appleseed.aiff. Bien que le dire
La commande crée le fichier et le nomme, elle ne traite pas bien les caractères spéciaux ou les espaces dans le nom du fichier. Nous avons besoin de cette étape supplémentaire pour pouvoir nommer notre nouveau fichier après notre contact..
# Étape 4: Enfin, ouvrons cela dans Ringer pour que tous les ajustements finaux ouvrent -a /Applications/Ringer.app "$ loc / $ 1.aiff"
Enfin, la sonnerie nouvellement créée est ouverte dans l'application Sonnerie, nous permettant d'apporter des modifications supplémentaires.
Une fois que vous avez copié et collé le script ci-dessus dans l’Automator Exécuter un script shell action, il est temps de sauver. Enregistrez le fichier avec le nom Générer une sonnerie… et ensuite ouvrir Contacts.
Sélectionnez un contact et mettez en surbrillance le nom, le surnom ou le nom de la société. Faites un clic droit puis sélectionnez Générer une sonnerie… qui sera sous la Prestations de service menu. Dès que vous la sélectionnez, une nouvelle sonnerie est créée instantanément sur votre bureau et porte le nom du contact comme nom de fichier. Quelques instants plus tard, Ringer se lancera avec la sonnerie chargée et prête à apporter des modifications à.
le dire
commande peut réellement générer des fichiers de sonnerie compatibles avec un iPhone sans pour autant tout logiciel supplémentaire. Si nous devions modifier le script afin qu'il génère un .m4r déposer au lieu de .aiff nous pourrions alors contourner complètement l'application et la placer dans iTunes.
Mais il y a un problème avec ça. Sonneries sur la boucle de l'iPhone. À moins que nous utilisions une application comme Ringer pour ajouter un espace à notre sonnerie, il serait extrêmement ennuyeux d'entendre "Johnny Appleseed sonne, Johnny Appleseed sonne, Johnny Appleseed sonne" sans aucun espace. On dirait certainement que Siri est excessivement impatiente avec nous!
Maintenant que notre sonnerie est dans Ringer, veillez à laisser un espace d’au moins trois secondes à la fin du fichier. De cette façon, il y a un bel écart avant les boucles de sonnerie.
Vous pouvez ensuite envoyer votre sonnerie à iTunes qui aura toujours le nom du contact comme sonnerie. Il ne vous reste plus qu'à l'assigner comme sonnerie..
Bien que vous ne soyez pas entièrement autonome, vous pouvez créer rapidement et facilement différentes sonneries pour différents contacts. De plus, étant donné que le service que nous avons créé prend toute forme de texte sélectionné dans Contacts, vous pouvez générer une sonnerie à l'aide d'un surnom ou d'un nom d'entreprise..
Dans le cadre de ce tutoriel, j'ai inclus un flux de travail Automator prêt à l'emploi que vous pouvez utiliser. Ouvrez simplement le fichier et vous pourrez choisir de modifier le flux de travail dans Automator ou de l'installer en tant que service..