iOS ショートカットアプリでよく使うであろうアクションを紹介
iOS のショートカットアプリを使って、ちょっとリッチなブックマークレットみたいな使い方をしている。今回は自分がよく使っているアクションを紹介する。
目次
よく使うアクション名を列挙する
自分がよく使っているのは以下あたり。
- 「App」カテゴリ
- 「Safari」セクション
- Web ページを表示 : 内部ブラウザでページが開く
- URL を表示 : 「Safari」アプリでページが開く
- Web ページで JavaScript を実行 : ブックマークレット的なことができる。最後に
completion(結果に渡したい変数);
を記述することで実行できる。ただ、ウェブサイトごとにスクリプトを実行して良いか尋ねられるので、ちょっと鬱陶しいかも
- 「Safari」セクション
- 「メディア」カテゴリ
- 「プレイリスト」セクション
- プレイリストを取得
- 「ミュージック」セクション
- ミュージックを検索
- ミュージックを再生 : 検索した楽曲を再生する。組み合わせていけば、「指定の1曲をループ再生する」みたいなショートカットが組める
- 「プレイリスト」セクション
- 「Web」カテゴリ
- 「URL」セクション
- URL : URL 文字列を定義するだけ。直後に「URL の内容を取得」アクションを繋げたりして併用するのが前提
- 「Web リクエスト」セクション
- URL の内容を取得 : 「URL」で定義した URL などにリクエストを投げる。GET・POST の他、フォーム送信、JSON 送信に対応する
- 「URL」セクション
- 「書類」カテゴリ
- 「テキスト」セクション
- テキスト : 任意文字列を定義するだけ。直後に「変数」アクションを繋げたりして併用する
- 「テキスト編集」セクション
- テキストを結合
- テキストを分割
- テキストを置き換え
- 「テキスト」セクション
- 「スクリプティング」カテゴリ
- 「X-Callback」セクション
- URL エンコード : 入力文字列をパーセントエンコーディングできる。GET リクエストの URL パラメータに日本語を含ませたい場合なんかに利用できる
- 「シェル」セクション
- SSH 経由でスクリプトを実行 : パスワード文字列で SSH ログインできるマシンに対し、任意のコマンドを投げられる
- 「制御フロー」セクション
- if 文
- 「通知」セクション
- アラートを表示 : 「OK」「キャンセル」を尋ねるようなアラートダイアログを出せる
- 結果を表示 : 「OK」のみのダイアログで、手前のアクションの結果や変数の値などを表示できる。例えば「現在の IP アドレスを取得」アクションと組み合わせて、自 IP を確認したり
- 入力を要求 : 任意テキストを入力させる
- 「変数」セクション
- 変数を設定 : 変数名と内容を新規に定義 (変数名が重複する場合は再代入)。日本語では「変数
変数名
を値
に設定」と表示されており、てにをはが変だが、「変数名
に値
を設定」と解釈しよう - 変数に追加 : 変数を順序付きリスト (配列) とみなし、順次値を追加していける
- 変数を設定 : 変数名と内容を新規に定義 (変数名が重複する場合は再代入)。日本語では「変数
- 「X-Callback」セクション
「受け入れる」アクション
「共有シートに表示」を On にすると、「受け入れる」アクションが登場する。コレにより、ブラウザで閲覧中の Web ページの URL やタイトル、内容を取得できるようになる。
ショートカットの作り方のヒント
- 「マジック変数」のハンドリングが難しかったら、「変数を設定」で自前の変数を定義する
- 手前にある複数のアクションの結果を受け取って、結合して使用したい、といった時にハンドリングが面倒臭くなったりする。そんな時は「変数を定義」アクションを組み込んで、任意の変数名を付けてやると操作がしやすくなる
- Safari 以外のアプリ内ブラウザから現在のページ情報を取得するには
- 「受け入れる」アクションで「Safari の Web ページ」だけでなく、「URL」や「テキスト」「記事」なども選ぶと良い
- 複雑になってきたら「コメント」アクションにメモを書いておく
- 「コメント」アクションは、処理に絡まないメモ書きを残せるアクション。処理の区切りや、条件が分かりづらいところに仕込んでおくと良いだろう
こんな感じだろうか。
どうも日本語に訳された文言が分かりづらい印象があるが、きっちりプログラミング言語らしくしているので、意味を理解していけば複雑なショートカットも作れそうだ。