Lesson32.ListFilterを使ってみる
ワークフロー
ListFilterもScriptFilter同様にAlfredの出力を行うものです
Alfredに何か入力したら、それに反応して表示される行フォーマットのあれです
ScriptFilterはその名の通りスクリプトで動的に出力フォーマットを作成しますが
ListFilterは静的に設定パネルで作成します
具体的には、RSSみたいに刻々と変化する情報をインターネットから取得する場合は
ScriptFilterが適しています。一方、定型的な操作はListFilterが適しています
今回は、ListFilterとScriptFilterを2段構えで利用します
題材はよろず投稿サイトのnote.com。色々なアクセス方法があるので、
そのアクセス方法や一覧をListFilterで提供して、個々のページへの
アクセスをScriptFilterで実現します
別の言い方をすれば、トップページと第1階層のページをListFilterで、
第2階層以下をScriptFilterで提供するというイメージでもよいかと思います
ListFilterは設定パネルで作成します
すでにJson出力フォーマットを知っている方には理解しやすいとおもいます
出力フォーマットの要素で言えば、title,subtitle,arg,iconをGUIで設定すればOK
今回argについては任意の数字を設定していて、後続で稼働する
ScriptFilterの振り分けをしています
後続のScriptFilterは、それぞれソースコードが変わるので個々に作成しています
そのためConditionalユーティリティでフローを分岐させています
ArgandValsユーティリティがあるのは、標準出力をクリアもしくは設定して
ScriptFilterが表示される際のデフォルト文言をコントロールするためのです
ScriptFilterは、今までのLessonと同様の作りです
・cURLで該当ページのソースを取得
・ソースを解釈して、必要な要素を配列に格納
・AlfredのJson出力フォーマットを作成
という感じ
なお、ヘルプセンターについては、ヒアドキュメントで作っています
サンプルとして検索とヘルプのScriptFilterを載せます
ScriptFilter(検索)
ScriptFilter(ヘルプセンター)
ListFilterのサンプルを作ろうと試行錯誤しました
定例作業的なものだと、あまりに個人的なローカルサンプルになりだし
そもそも私のmacはインターネット閲覧と写真編集しかしてないですし
そんなおりnote.comを発見
検索での閲覧、カテゴリーからのアクセス、タグからのアクセスなど
いろいろなアクセスが整理されていたので取り上げました
Note.comサイトの投稿記事を閲覧する
1.alfredworkflowをダウンロード
2.ファイルをダブルクリックしてワークフローに登録
Alfredからキーワード『note』で起動
トップページに戻る