WebDesigner's Memorandumウェブデザイナーの備忘録

Alfred 4でのWorkflowの作り方とWorkflow Objectのまとめ

Alfred 4でのWorkflowの作り方とWorkflow Objectのまとめ

Alfred 3のときにもWorkflowに関する記事は書いたのですが、Alfred 4になってUIが変わったり、新しい機能も追加されているので、改めて作り方をまとめておきます。

ちなみにWorkflowはAlfredのPowerpack(有料版)でなければ使用できないので、ご注意ください。

Workflowとは何か?

Alfredの検索ボックスに「キーワード」と「引数」を入力することで、引数をもとに情報を引っ張って、ちょっとした自動化が可能です。

Workflowは他人が作ったものを使用することもできて、公式サイトからもWorkflowのインポートが可能です。

Workflowの基本的な作り方

Workflowファイルの作成

Alfredの[環境設定]→[Workflows]画面を開いて、サイドバーの下の方にある「+」ボタンを押し、[Blank Workflow]を選択します。

Blank Workflow

Workflowの情報を入力するパネルが表示されるので、必要情報を入力します。

Workflowの名前入力

項目入力内容備考
NameWorkflowの名前を入力 
DescriptionWorkflowの説明文を入力 
CategoryWorkflowのカテゴリを選択自分のAlfred内だけの設定。エクスポート時にはこの情報は消える
Bundle IdWorkflow固有のIDを設定
(入力しておくことでアップデート時にWorkflowを認識する)
「com.自分の名前.Workflowの名前」というフォーマットがよく使われるらしい
Created By作成者である自分の名前を入力 
Websiteウェブサイトがある場合はURLを入力 

入力できたら「Create」ボタンをクリックします。

これで空のWorkflowの作成はできました。

Workflow Objectの設定

作成したWorkflowの中に、Workflow Objectと呼ばれる「細かい指示」を配置し、それらをつなぎ合わせることでWorkflowは動作するようになります。

Workflow Objectの追加

右半分の背景が黒い場所で、右クリックをして指定のWorkflow Objectを選択します。

このWorkflow Objectには5つのタイプがあり、それぞれ下記の特徴があります。

  • Trigger:ホットキーやAlfredの機能からWorkflowを発火する
  • Input:アクションを実行するために必要なキーの入力をする
  • Action:Workflowで必要な作業を実行する
  • Utilities:Workflowをコントロールする特殊なWorkflow Object
  • Output:Inputから取得した情報を出力したり、外部の操作を行う

これらをつなぎ合わせる必要があるのですが、たいていの場合、「Trigger」か「Input」で開始し、必要に応じて「Utilities」で間の処理や調整を行い、「Output」か「Action」で出力やアクションを発生するという流れになります。

Workflowの流れ

ここからはカテゴリごとに、どんなWorkflow Objectがあるのかひと通りまとめていきます。

Triggers

ホットキーやAlfredの機能からWorkflowを発火するWorkflow Objectです。
この中ではおそらくHotkeyが1番利用頻度が高いと思います。

オブジェクト名できること
Hotkeyコマンドの入力で実行される
RemoteAlfred Remoteから実行
Snippetスニペット一覧から実行
External外部のAppleScriptから実行
File ActionAlfredのファイル操作一覧から実行
Contact ActionAlfredの連絡先一覧から実行
Fallback SearchDefault Resultsのフォールバック検索で実行

Inputs

アクションを実行するために必要なキーの入力をするWorkflow Objectです。

Alfredの強みはやはり検索ボックスに何かしら単語を入力して、それを引数にしてあれこれ処理をすることだと思っているので、これらのWorkflow Objectは非常に魅力的です。

また、Inputは基本的にOutputとセットで使うことが多いです。

オブジェクト名できること備考
Keywordキーと引数を設定する引数は「必須」「可能」「なし」の中から選択
File Filterキーと引数を設定し、引数でファイルを検索する 
Dictionary Filterキーの設定と、開きたい辞書の言語設定が可能 
List Filter固定のリストを作成可能Script Filterほど高度な機能は不要ないときに使用
Script Filterスクリプトの実行結果を一覧に表示するコードで書きたい場合は大抵これを使用

Actions

ファイルを開いたりアプリを開いたり、何かしらのアクションを行うWorkflow Objectです。

オブジェクト名できること備考
Open File指定ファイルを開く 
Launch Apps / Files指定したアプリやファイルを開く 
Reveal File in Finder指定したファイルをFinderで開く 
Browse in Terminal指定したファイルをターミナルで開く 
Browse in Alfred指定したファイルをAlfredのFile Navigation Systemで開く 
Default Web Searchデフォルトのブラウザで検索する 
Open URL指定したURLを開く単体だとWeb Searchと同じ機能
System CommandAlfredのシステムコマンドを実行する 
iTunes CommandiTunesの操作を行う 
Run Scriptbash / zsh / PHP / Ruby / Python / Perl / OsaScriptを実行する 
Run NSAppleScriptNSApple Scriptを実行する 
Terminal Command入力したスクリプトをターミナルで実行する 

Utilities

Workflowをコントロールする特殊なWorkflow Objectになります。

Workflow Objectの間にかませることで機能します。

オブジェクト名できること備考
Arg and Vars前のアクションで入力された引数を変数に入れる 
Split Arg to Vars前のアクションで入力された引数を複数の変数に分割する 
JunctionWorkflowの整理を行うためのオブジェクト 
Conditional前のアクションで入力された引数に一致する条件に応じて、別のパスをたどるように設定可能簡単なif文(条件分岐)だと思えばいい
FilterConditionalより複雑な条件分岐が可能 
Delay遅延の追加が可能 
Transformデータのフォーマットを整えられる 
Replace前のアクションで入力された引数を、別のフォーマットに置き換えることが可能 
Randomランダムに結果を返す 
Hide AlfredAlfredを隠す 
Show Alfred前のアクションで入力された引数が、Alfredに入力された状態で表示する 
JSON ConfigJSONを使用して、データを編集することが可能 
Debugデバッグ用のWorkflow Object 

Outputs

Inputから取得した情報を出力したり、外部の操作を行うWorkflow Objectです。

オブジェクト名できること備考
Post Notification通知を出す
Large Type画面中央にテキストを表示するLarge Typeを使う
Copy to Clipboardクリップボードにコピーする
Write Text Fileテキストファイルを作成する
Play Sound音を再生する
Dispatch Key Comboキーストロークの組み合わせを実行する
Call External TriggerWorkflowの外部トリガーを呼び出す

まとめ

コードを書く必要のあるWorkflow Objectもありますが、コードを書かなくてもいいWorkflow Objectが大半なので、比較的簡単に効率化ができると思います。

著者について

プロフィール画像

サイトウ マサカズ@31mskz10

1997年生まれ。2016年から専門学校でデザインについて勉強。卒業後は神戸の制作会社「N'sCreates」にウェブデザイナーとして入社。このブログでは自分の備忘録も兼ねて、ウェブに関する記事や制作環境を効率的に行うための記事を書いています。

Twitterをフォロー Facebookでいいね