Alfred 3 expliqué - 2e partie

Dans le dernier tutoriel, je vous ai montré de nombreux changements dans Alfred 3, sauf les modifications apportées aux flux de travail. Ce tutoriel a pour but de vous familiariser avec Alfred 3 flux de travail. Je vais aussi vous montrer un exemple de ce que vous pouvez faire avec.

Dans ce tutoriel, je suppose que vous connaissez bien Alfred 2 et c'est son processus de création de workflow. Si non, s'il vous plaît consulter mes autres tutoriels sur Alfred 2

  • Alfred Workflows pour les débutants
  • Alfred Worflow pour les intermédiaires
  • Alfred Workflows pour les utilisateurs avancés, et 
  • Alfred Debugging

Changements de flux de travail

La première nouvelle addition à la zone de flux de travail de Alfred 3 est-ce que les éléments peuvent être placés n'importe où. Vous pouvez maintenant connecter un élément de droite à un élément de gauche.

Ils ont fait un excellent travail en détectant et en évitant les scénarios de boucle infinie, bien qu’il soit encore possible avec un Déclencheur externe appeler le devant d'une chaîne d'éléments menant à l'élément appelant.

Nouvelles connexions en arrière

Comme toujours, vous connectez des éléments en cliquant et en faisant glisser sur le milieu droit d'un élément et en faisant glisser sur le côté gauche d'un autre élément. Si une bulle n'apparaît pas, ce n'est pas une zone de connexion légale. 

Remarquez dans l’animation gif ci-dessus, le JSON element est le seul élément qui ne présente pas de bulle verte du côté gauche lors du déplacement de la seconde connexion. Vous ne pouvez pas vous connecter à cet élément car cela créerait une boucle infinie.

Nouveaux éléments de workflow

Non seulement les éléments peuvent être placés n'importe où, ils peuvent également être codés par couleur et comporter une description sous-jacente pour décrire leur travail. Il y a quatre icônes dans le coin supérieur droit, tandis que le nom du workflow, une description courte et l'icône sont à gauche.. 

Les icônes de gauche à droite sont Exportation, Préférences, Éloigné, et Débogueur boutons. Il y a onze nouveaux éléments dans Alfred 3: Filtre de dictionnaire, Filtre de liste, Args et Variables, Filtre, Transformer, Retard, Remplacer, JSON Config, Jonction, Déboguer, et Écrire un fichier texte.

Bouton d'exportation

le Exportation Ce bouton vous permet d’enregistrer le flux de travail n’importe où dans le système de fichiers. Il ouvrira une boîte de dialogue de fichier qui vous permettra de sélectionner le répertoire et le nom du fichier pour enregistrer le flux de travail..

Lorsque vous exportez un flux de travail, il sera enregistré avec le .alfred3workflow extension. C'est pour les différencier de Alfred 2 flux de travail.

Bouton Préférences

Icône Préférences

le Bouton Préférences soulève la Dialogue Préférences montré ci-dessus. dans le A propos de ce workflow Dans la zone de texte, vous pouvez ajouter une description textuelle du flux de travail, des informations sur son utilisation et toute autre information utile à l'utilisateur du flux de travail. Si le flux de travail utilise d'autres applications, c'est ici que je mettrais des liens vers le site Web de l'application.. 

dans le Variables d'environnement de flux de travail section, vous pouvez créer des variables d’environnement à utiliser dans les scripts du flux de travail. Si le nom de la variable est déjà utilisé dans l'environnement système, sa valeur sera remplacée par tous les scripts exécutés dans ce flux de travail..

Bouton à distance

Icône à distance

le Éloigné bouton vous donne une mise en page de Alfred Remote pour peupler les écrans. Vous nommez l’écran et ajoutez des boutons pour faire tout ce qui est en Alfred 3

Si le flux de travail a Éloigné commandes, elles peuvent être placées dans cet écran. Quand vous ouvrez Alfred Remote sur un iOS appareil, la disposition de l'écran ici sera utilisable.

Bouton de débogage

Icône de débogage

le Déboguer Le bouton affiche le débogueur en bas de la zone de flux de travail. Cela donne une place pour montrer ce que chaque élément envoie à l'élément suivant. 

Si tu as un Déboguer élément connecté dans votre flux de travail, il affichera les informations demandées ici. Cela simplifie les scripts de workflow de débogage.

Filtre de dictionnaire

Élément de flux de travail du dictionnaire

le Filtre de dictionnaire vous permet de créer un flux de travail qui recherchera des mots dans un dictionnaire spécifié. Par conséquent, si vous avez un dictionnaire qui traduit d’une langue à une autre, cela créera une fonctionnalité de traduction facile..

Filtre de liste

Élément de flux de travail de liste

le Filtre de liste vous permet de créer facilement une liste prédéfinie d'options parmi lesquelles l'utilisateur peut sélectionner. UNE Filtre de liste est une forme spécialisée du Filtre de script. Mais, au lieu de créer les réponses possibles dans un script, vous pouvez les créer dans cette boîte de dialogue. le Mot-clé est le texte tapé dans le Alfred Browser pour lancer ce workflow. le Titre de l'espace réservé est le texte en haut figurant dans la liste des actions possibles à effectuer lors de la frappe dans le champ Alfred Browser. le Placeholder Sous-titre est le texte juste sous la Titre de l'espace réservé. Je mets souvent le nom du workflow ici.

À droite du Mot-clé est une liste déroulante avec différentes options pour obtenir des informations de l'utilisateur. Ce menu déroulant peut soit Argument requis, Argument optionnel, ou Pas d'argument. Avec Argument requis, vous ne pouvez pas activer le flux de travail avant d'avoir tapé un argument après le Mot-clé. le Argument optionnel option va aller de l'avant et afficher les options dans la liste avant que l'utilisateur commence à taper. le Pas d'argument agira le premier élément sans ajouter d'argument.

Lorsque vous ajoutez un nouvel élément en appuyant sur la touche + symbole en bas à droite de la liste des options, vous pouvez spécifier le Titre, Sous-titre, et Arg. le Titre sera la chaîne supérieure indiquée dans le navigateur Alfred pour cet élément, tandis que la Sous-titre sera en dessous. le Arg est le texte passé à l'élément suivant lorsqu'il est sélectionné.

En bas à droite de la boîte de dialogue, vous trouverez un menu déroulant avec deux possibilités: Alfred apprend l'ordre des résultats en fonction de l'utilisation, ou conserve les résultats dans l'ordre défini dans le tableau. Ceci définit les deux manières possibles Alfred pourrait afficher les éléments de la table dans le Alfred Browser.

Vous pouvez également saisir les éléments de la liste avec un CSV fichier contenant les éléments. Par conséquent, si vous créez un fichier contenant les éléments suivants:

Un titre, un sous-titre, un argument Un autre titre, un autre sous-titre, un autre augument

Lorsque vous faites glisser le fichier dans la boîte de dialogue, deux nouveaux éléments sont ajoutés. Le premier article aura le titre de Un titre, sous-titre de Un sous-titre, et l'argument sera une dispute. Par conséquent, vous pouvez importer un grand nombre d’éléments dans un fichier en faisant glisser le curseur vers le bas. CSV déposer sur les éléments de la liste et il va ajouter chaque.

L'utilisation d'un Filtre de liste et un Filtre de script ressemble exactement à l'utilisateur du flux de travail. C'est juste un autre moyen de créer une liste de choses à faire dans un workflow. Le seul inconvénient de la Filtre de liste est-ce que si ce que l'utilisateur tape ne correspond à rien dans la liste, alors Alfred affichera les éléments de recherche par défaut. Avec un Filtre de script, vous pouvez détecter si rien ne serait sélectionné et ajouter un élément pour indiquer à l'utilisateur que l'entrée ne correspond à rien.

Args et Variables

Elément de workflow Args and Variables

le Elément Args and Variables vous permet de modifier les informations passant par les variables d'élément et d'environnement. L'élément suivant reçoit tout ce qui se trouve dans le Argument zone de texte. Tout article dans le Variables zone va changer la variable d'environnement à la valeur définie. 

Les deux zones prennent la norme Alfred variables macro de question comme entrée de l'élément, et var: varname comme valeur de la variable d'environnement nommée varname.

Filtre

Filtrer l'élément de flux de travail

le Filtre element vous permet de filtrer ce qui sera ensuite activé. L'élément après cet élément ne s'exécutera que si les résultats de la condition sont vrais. La zone de texte après Continuez seulement si définit ce qu'il faut vérifier. 

Le menu déroulant suivant a trois options: est égal à, n'est pas égal à, et correspond regex. La zone de texte suivante contient la valeur à comparer ou une expression régulière pour le correspond regex. le est égal à et n'est pas égal à sont explicites. 

le correspond regex vous permet de spécifier une expression régulière correspondant à la chaîne. S'il y a une correspondance n'importe où dans la chaîne, l'exécution passe à l'élément suivant. Vous pouvez lire le ICU Spécifications sur leur site web. C'est un standard basé sur les expressions régulières de Pearl. Quand le correspond regex est vrai, l'élément suivant reçoit la chaîne d'entrée complète.

Vous n'êtes pas obligé de faire correspondre uniquement l'entrée. Vous pouvez utiliser le var: varname macro et faire correspondre une variable d’environnement. L'entrée est toujours transmise, pas la chaîne correspondante. Par conséquent, vous pouvez utiliser cet élément en tant que commutateur basé sur une variable d’environnement ou sur l’entrée..

Retard

Élément de workflow de retard

le retard element mettra en pause l'exécution du flux de travail avec l'élément suivant dans le flux avec le nombre de secondes spécifié. Cela n'affectera aucune autre ligne de flux dans le flux de travail.. 

Ce délai peut provenir de l’entrée en utilisant question, ou d'une variable d'environnement en utilisant le var: varname macro. C'est pratique lorsque vous avez deux lignes de flux ou plus et que vous voulez que l'une attende que l'autre ait le temps de se terminer.. 

Par exemple, vous pouvez avoir un Mot-clé élément qui lance un serveur Web local et y ouvre le navigateur. le Mot-clé L'élément peut avoir une ligne connectée au script pour lancer le serveur, tandis qu'une autre ligne indique un délai de 30 secondes, puis un message. Ouvrir le lien élément. Tant que le serveur ne prend pas plus de 30 secondes pour se lancer, cela fonctionnera correctement.

Si votre flux de travail comporte plusieurs lignes de flux agissant à partir d'un élément, les actions les plus en haut de la page apparaissent en premier, puis le second, etc. Par conséquent, un délai d'une seconde sur une ligne entraîne son saut jusqu'à ce que toutes les autres lignes parallèles soient exécutées..

Transformer

Élément de transformation

le Transformer L'élément effectue de simples transformations de texte sur la chaîne d'entrée. Les transformations disponibles sont: Découper les espaces, Majuscule, Minuscule, Affaire de chameau, Chaîne inversée, Bande diacritiques, et Strip Non Alphanumérique

Chacune de ces transformations sont explicites.

Jonction

le Jonction L'élément connecte simplement toutes les entrées à toutes les sorties. C'est idéal pour alimenter de nombreuses entrées avec de nombreuses sorties avec un minimum de lignes. Connectez toutes les entrées sur le côté gauche d’un Jonction, puis connectez la sortie à chaque élément d'entrée suivant dans l'ordre.

Cela aide à réduire l'encombrement et facilite les extensions.

Remplacer

Remplacer l'élément de workflow

le Remplacer l'élément comparera l'entrée à chaîne, regex, ou entrée vide comme sélectionné dans le menu déroulant. La première zone de texte contient la chaîne de comparaison, tandis que la seconde zone de texte contient la chaîne de substitution. 

Par conséquent, si la chaîne de comparaison est boîte et la chaîne de remplacement est cerf-volant, la phrase J'ai une boite changements à J'ai un cerf-volant. Si un regex est ^ un (…) plein, la chaîne de remplacement est 1 $, et l'entrée est Pomme, alors la sortie sera pp (les deux lettres appariées par les deux . dans la chaîne de correspondance). le 1 $ est un raccourci pour le premier groupe de capture désigné par le ()

Tuts + Course Expressions régulières: actif et opérationnel vous aidera à comprendre et à utiliser les expressions régulières.

JSON

Élément de flux de travail JSON

le JSON l'élément est similaire à la Args et Variables élément en ce sens qu'il vous permet de modifier les paramètres de sortie et les variables d'environnement. dans le config section, vous pouvez modifier la configuration du prochain élément. 

Par exemple, connectez un Mot-clé élément d'un JSON élément puis à un Post Notification. Placez ce qui suit dans le JSON configuration de l'élément:

"alfredworkflow": "arg": "requête", "config": "titre": "Du texte de test", "text": "Ceci est le texte du test", "variables":  

Lorsque vous activez le mot-clé avec du texte, quel que soit le texte que vous envoyez, le Post Notification aura toujours le Titre de Du texte de test, et le Texte la zone (juste sous le titre) dira Ceci est le texte de test.

Déboguer

Élément de flux de travail de débogage

Avec le Déboguer élément, vous pouvez poster n’importe laquelle des macros dans Alfred à la console de débogage. le allvars les macros montreront la valeur de chaque variable définie pour ce flux de travail.

Cela aide les scripts de débogage en fournissant des informations qui ne seraient normalement pas affichées dans la console de débogage. Vous pouvez également vérifier le Effacer le texte dans le débogueur option pour effacer le texte avant de poster un nouveau texte.

Écrire dans un fichier

Élément de flux de travail Écrire dans un fichier

le Écrire dans un fichier element vous permet d’écrire des informations dans un fichier. Vous pouvez spécifier un chemin absolu ou un chemin relatif vers le fichier. S'il s'agit d'un chemin relatif, vous pouvez le configurer pour qu'il soit enregistré dans le répertoire de flux de travail ou dans la zone de répertoire de données du flux de travail.. 

Si vous vérifiez le Ajouter UUID au nom du fichier, il ajoutera un numéro unique au nom pour créer des noms de fichiers uniques. Si vous vérifiez le Créer des dossiers intermédiaires s'ils n'existent pas option, Alfred crée tous les dossiers manquants dans le chemin. 

Si le fichier existe, vous pouvez le définir sur Sauter, Écraser, ou Ajouter. le Sauter option n'écrira pas le fichier s'il existe déjà. le Écraser Cette option efface le contenu du fichier et écrit le nouveau contenu. le Ajouter option ajoute automatiquement une nouvelle ligne à chaque écriture.

Dans la zone de texte, vous pouvez placer n’importe lequel des Alfred macros pour mettre des informations dans le fichier. Dans mon exemple de flux de travail, j'ai un Écrire dans un fichier élément défini sur:

var: firstName | var: lastName | var: email

Cela crée une nouvelle ligne à chaque fois avec les variables d'environnement Prénom, nom de famille, et email séparés avec un |.

Filtre de script

le Filtre de script Ce n’est pas un nouvel élément, mais les formats de sortie correspondants ont changé. Vous pouvez écrire un script pour produire le même XML format utilisé dans Alfred 2 ou vous pouvez créer la sortie en tant que JSON structure. le JSON la structure devrait être:

"items": ["uid": "Un identifiant unique pour l'item", "type": "fichier", "titre": "Titre pour l'item", "sous-titre": "Sous-titre pour l'item", "arg": "texte passé à l'élément suivant", "autocomplete": "texte autocomplete", "valide": true, "icône": "type": "fileicon", "chemin": "~ / Bureau" ]

Vous devez répéter les lignes 2 à 14 pour chaque élément donné à l'utilisateur. N'oubliez pas de mettre une virgule après chaque bloc, sauf pour le dernier bloc. Je pense que ce format est beaucoup plus facile à utiliser que le XML format, mais je préfère coder en Node.js pour mes workflows.

Tous les éléments liés au script

Chaque élément prenant un script dispose désormais de deux manières de transmettre le paramètre d'entrée. La méthode originale consiste à remplacer chaque occurrence de question dans le script avec la chaîne de saisie.

Maintenant, vous pouvez spécifier que le script reçoit la chaîne d'entrée avec entrée comme argv. Pour certains scripts, cela fonctionne mieux et est plus rapide car Alfred ne pas avoir à rechercher et remplacer l'opération.

Alfred Environnement Variables

Alfred configurera des variables d’environnement que vos scripts pourront utiliser. Voici la liste des variables d'environnement définies par Alfred:

Nom de variable La description
alfred_preferences Cela donne l'emplacement du fichier de préférences.
alfred_preferences_localhash Ceci est un hachage du fichier de préférence.
alfred_theme C'est le thème actuellement utilisé par Alfred.
alfred_theme_background Cela indique la couleur de fond du thème actuel.
alfred_theme_selection_background Cela indique la couleur de fond du thème actuel avec un élément sélectionné.
alfred_theme_subtext Cela donne les thèmes actuels sous-texte.
alfred_version Ceci est la version actuelle d'Alfred. Ce sera 3.0 pour Alfred 3.
alfred_version_build Cela donne le numéro de version de la version.
alfred_workflow_bundleid Ceci est l'id de bundle de flux de travail actuel.
alfred_workflow_cache Ceci contient le chemin d'accès au répertoire de cache du flux de travail actuel.
alfred_workflow_data Ceci contient le chemin du répertoire de données du workflow actuel.
alfred_workflow_name C'est le nom du workflow en cours.
alfred_workflow_uid C'est l'identifiant unique du workflow en cours..
alfred_debug Cet indicateur indique si le débogage est actuellement activé ou désactivé.

L'utilisation de ces informations vous aidera à rendre votre flux de travail plus durable. Si vous voulez voir vos variables d’environnement depuis Alfred, vous devriez obtenir le Variables Shell flux de travail. C'est très pratique pour voir ce que vos scripts verront.

Exemple de flux de travail

Le téléchargement de ce tutoriel contient la Flux de travail des adresses électroniques vu ci-dessous. Vous pouvez l’utiliser comme exemple d’utilisation des nombreux nouveaux éléments de Alfred 3.

         Flux de travail des adresses électroniques

Ce flux de travail vous permet d’ajouter des adresses électroniques à un CSV fichier (éléments jaunes), recherchez une adresse électronique pour envoyer un courrier électronique (éléments bleus), pour afficher une adresse électronique (éléments verts) ou pour supprimer une adresse (éléments rouges). Les éléments utilisés par plus d'une commande sont blancs. 

Le codage couleur aide les autres utilisateurs à comprendre ce qui se passe dans le flux de travail. La possibilité de réutiliser des pièces facilite l'écriture Alfred des flux de travail plus faciles et plus faciles à gérer. le Filtre de script utilise également la variable d'environnement alfred_workflow_data pour aider à rendre le script la preuve de l'avenir. En utilisant cette variable, vous n'avez pas besoin de coder en dur l'emplacement des fichiers de données.

Vous remarquerez également que le seul code écrit était pour le Filtre de script pour rechercher l'adresse e-mail et le Script de lancement élément pour supprimer une adresse e-mail du CSV liste.

J'ai utilisé le Client de messagerie variable d'environnement qui se trouve dans le Préférences panneau pour voir si je dois utiliser la méthode d'appel par défaut en utilisant le mailto protocole, ou faire quelque chose de spécifique pour un client de messagerie particulier. Il a une condition de manipulation spéciale pour le Lettre client de messagerie que j'utilise le plus.

Conclusion

Maintenant que vous connaissez toutes les nouveautés de Alfred 3 flux de travail, il est temps pour vous d'expérimenter. Faites-moi savoir ce que vous pensez et vos expériences dans les commentaires ci-dessous.