Workflow Object の Write Text File を使って設定ファイルを作る

Alfred 3 Advent Calendar 2017 - Adventar 3日目です。

Alfred Workflow を作っていると API キーなどをユーザーに入力させて、それを保存させておきたい場合があります。

Write Text File を利用すると簡単に設定ファイルを作れます。

Write Text File を使ってみる

Write Text File は Outputs の中にあります。

Outputs の中に Write Text File がいるスクショ

設定できる項目はこんな感じです。

設定項目一覧

設定項目を見てみる

それぞれの設定内容は下記のような感じです。

  • Filename ...出力先とパスを指定します。
  • if exists ...ファイルが存在していた時に上書きするか追記するか。
  • Add UUID to filename ...チェックすると Finename にユニークなIDが追加されます。
  • Create intermediate folders if they don't exist ...チェックすると Filename で指定したパスのフォルダが存在しない時にフォルダを作成します。

If Relative で not exported なのか exported なのかを指定する

重要なのは If Relative の項目です。

  • Write to workflow's data folder(local, not exported)
  • Write to workflow folder(synced, exported)

上を選択した場合、そのファイルは ~/Library/Application Support/Alfred 3/Workflow Data に保存されます。

Workflow に Bundle id が指定されていた場合はパスの後に Bundle id で指定した名前のフォルダが作られ、そこにファイルが作成されます。

このファイルは Workflow を Export した際には含まれないので、APIキーなどの情報はこれを使えばよいかと思います。

Write to workflow folder は export されてしまうので注意

下の Write to workflow folder は Workflow を Export したときに出力されるファイルが入っている場所(例:設定ファイルの保存先_alfred_Alfred.alfredpreferences_workflows_user.workflowXXXX) に保存されます。

なので Export すると出力されてしまうので、APIキーなどの情報を保存しておきたい場合はこちらを選択しないように注意しましょう。