Create Task Workflow : hkob の雑記録 (132)

はじめに

hkob の雑記録の第132回目は、いつかやるタスクを作成する Create Task Workflow を解説します。

これまでの Create Task Workflow

Create Task Workflow は以下のようになっています。後段の部分は昨日と同様に Prefab に置き換えました。こちらはトリガーが二つある Workflow になっています。一つ目はテキストをクリップボードに入れた後で、「Cmd-Ctrl-T」をタイプするものです。二つ目は「task タイトル」のように Alfred で Keyword 入力するものです。一つ一つの設定を詳しくみていきます。

これまでの Create Task Workflow

3番目の Run Script action は title 変数に登録された文字列をタイトルとしたページを Tasks データベースに作成するものです。NotionRubyMapping だと非常に短く記述できますね。

Run Script のaction の設定

HotKey の方はクリップボードの内容を title 変数に代入します。

Hotkey と Arg and Vars の設定

Keyword の方は task の後の引数を title 変数に代入します。

Keyword と Arg and Vars の設定

Workflow の改修

昨日と同様に簡単化してみます。まず、Ruby のスクリプトで変数から取得していたタイトルを引数から取得するようにします。また、せっかくスクリプトが動いているので、最後に URL scheme の書き換えも実施してしまいます。

require "notion_ruby_mapping"
include NotionRubyMapping

NotionRubyMapping.configure { |c| c.token = ENV["NOTION_API_KEY"] }
title = ARGV[0]
db = Database.find ENV["TASK_DB_ID"]
page = db.create_child_page do |p, pp|
  pp["Task name"].text_objects << title
  pp["Assignee"].people = ENV["USER_ID"]
end
print page.url.gsub("^https://", "notion://")

また、Hotkey は Argument として「macOS Clipboard Contents」を設定するようにしました。これで Arg and Vars が必要なくなります。Keyword の方はそもそも Argument に渡されるので、Arg and Vars を外すだけで問題ありません。

Hotkey trigger の設定変更

最終的にワークフローはこれだけ簡単になりました。

改修した Create Task Workflow

おわりに

昨日と同じようにそれぞれのオブジェクトを理解することで、非常に簡潔に Workflow が記述できるようになりました。人にものを解説することで自分の知識も整理されますね。これからも引き続き自分の Workflow を整理しながら解説していきます。

hkob.notion.site