iPhoneのショートカットの作成方法

前回の記事iPhoneのショートカットアプリの使い方・やり方では、ギャラリーから既存のショートカットを追加する基本的な使い方について紹介しましたが、今度はショートカットの作成について紹介していきたいと思います。

ショートカットの作成は若干プログラム的な要素がありますが、初めての人は既存のショートカットをカスタマイズして作成する事で一から作成するよりは簡単に作成できるかと思います。

なお、ここで紹介するのはiOS 12のショートカットアプリを使ったショートカットの作成となります。

iPhoneのショートカットの作成方法

目次

ギャラリーからショートカットを追加

まずはギャラリーから既存のショートカットを追加してカスタマイズしてみます。

サンプルで、ギャラリーの共有のためのショートカットを選択します。
iPhoneの共有ショートカット

続いては、ショートカットを左にスワイプしてクリップボードを共有というショートカットを探します。
iPhoneショートカットクリップボードを共有

ここではアクションを表示をタップ。
ショートカットのアクションを表示

下図のようにショートカットは、アクションと呼ばれる様々な処理が並んでおり、上から順番に処理実行されます。内容を確認して自分の作成したいショートカットに近いかを検討するといいでしょう。確認したら、ショートカットを取得をタップしてライブラリに追加します。
iPhoneのショートカットを取得

「結果を表示」アクションとマジック変数 

続いては「結果を表示」というアクションをショートカットに挿入してみましょう。「結果を表示」というアクションは、直前のアクションが持っているテキストなどのデータを表示しくれる便利なアクションで、これの使い方を覚えることで複雑なショートカットも作成できるようになるかと思います。

さきほど追加したショートカットボタンの右上のオプションをタップします。
ショートカットのオプション

このショートカット自体はアクションが2つしかありませんが、他のアクションを追加してカスタマイズ作成していきます。試しに画面上部の青い再生ボタンをタップして挙動を見てみるといいでしょう。そしたら、手始めに画面下部の検索欄をタップします。
ショートカットアクション検索

次はスクリプティングを選択します。
iPhoneショートカットスクリプティング

スクリプティングの中に結果を表示というアクションがあり、それをタップすればショートカットにアクションとして追加されますが、ここでは右端のインフォアイコンをタップします。
スクリプティングの検索結果

するとアクションの詳細説明がありますが、よく使う項目をタップしてお気に入りに追加し、すぐに使えるようにしておきます。追加したらショートカットに追加をタップしてショートカットに挿入します。
アクション結果を表示を追加

アクションを追加すると一番下に挿入されますが、アクションのタイトルバーを長押ししドラッグで「クリップボードを取得」アクションの下に並び替えます。なお、操作に失敗した場合は左上のやり直しアイコンタップです。
iPhoneショートカットにアクションの追加・並び替え

次は並び替えた結果を表示入力欄をタップします。入力状態になるとキーボード上部にマジック変数アイコンがありますので、それを選択します。
アクションのマジック変数

すると「クリップボードを取得」アクションの下に「クリップボード」というボタンが表示されましたが、これはマジック変数と呼ばれます。

マジック変数は、アクションが処理したデータを格納しているデータの塊です。このアクションで言えば、例えば「あいうえお」という文字をコピーしてクリップボードに保存した場合、「クリップボードを取得」のアクションが実行されるとマジック変数「クリップボード」に「あいうえお」のテキストデータが格納されることになります。とりあえずは、それをタップします。
アクションのマジック変数を選択

タップするとこのように表示されますが、慣れたらマジック変数のアイコンではなく、候補表示されている「クリップボード」のマジック変数を直接選択すればいいでしょう。キーボード右上の完了をタップします。
結果を表示にマジック変数を登録

そしたら、他のアプリで適当にテキストをコピーし、ショートカット実行アイコンをタップして動作を確認してみましょう。
iPhoneショートカットの実行

すると、一番上のアクションから処理が順番に行われ、「結果を表示」が受け取った「クリップボード」のマジック変数の内容を下記のように表示してくれるのを確認できます。(クリップボードにデータがなかった場合は空白が表示されます)
ショートカットの実行結果

上記の処理を簡単にまとめるとこんな感じです。

  1. クリップボードを取得のアクションを実行
  2. クリップボードの内容がマジック変数クリップボードに格納される
  3. マジック変数クリップボードを受け取った結果を表示のアクションが表示

iPhoneのショートカットは、基本的に個々のアクションが処理したデータが格納されているマジック変数を次のアクションに渡して処理を実行しますが、そのデータがうまく取得できているかを確認するために「結果を表示」のアクションを使うことで、処理が失敗している箇所を特定しやすくなります

なので、つまづいたらマジック変数と結果を表示を思い出すといいでしょう。

マッチテキストアクション

使う機会がありそうなアクションを簡単に紹介します。

上記のようにクリップボードなどで取得したテキストの中に特定の文字列が含まれているかを抽出したい時には、マッチテキストを使うといいでしょう。サンプルでクリップボードにコピーしたテキストにURLが含まれているか確認するためのアクションを作ってみましょう。

ライブラリの画面下部のアクション検索欄をタップして、マッチテキストと検索し、表示されたアクションをタップして追加します。
ショートカットアクション、マッチテキスト

そしたらアクションを並び替えて、パターン欄に下記内容をコピペします。

https?://[\w/:%#\$&\?\(\)~\.=\+\-]+

これは正規表現と呼ばれるものでこれでURLが含まれているかを調べられます。よく分からないっていう人はとらえずコピペして軽く頭の片隅に入れて次に進みましょう。
ショートカットマッチテキストのパターン

先程と同様に結果を表示のアクションを挿入・並び替えをし、入力欄には一致するテキストのマジック変数を選択します。
ショートカットの一致するテキスト

そしたら適当なURLをコピーして、アクションを実行してみましょう。成功すると下記のようにURLが表示されます。URLの頭が「http」、または「https」の場合でも表示されることを確認できます。
iPhoneのアクションでマッチテキストで一致した場合

ちなみにクリップボードに何もなかった場合や、URLが含まれていないテキストのみの場合は、下記の空白が表示されます。(エラーではありません)
アクションマッチテキストに不一致

URLを検出抽出するのは、「入力からURLを取得」のアクションで簡単に得られますが、ここではサンプルとして紹介しました。ここで一旦、共有のアクションを削除して次に進みます。

条件分岐とメニュー選択アクション

プログラムでよく使われるif条件分岐が、「次の場合」というアクションで使えます。また、選択肢を表示する「メニューから選択」というアクションも紹介します。

ライブラリのアクション検索欄をタップして次の場合と検索し下記の空白が表示されます。アクションをタップして追加します。
iPhoneショートカット条件分岐「次の場合」

追加したらの欄に、マジック変数一致するテキストを選択します。これは、条件分岐のアクション「次の場合」で、「マッチテキスト」アクションが抽出したマジック変数「一致するテキスト」にURLが含まれているかをチェックするためのものです。
ショートカットの条件分岐

続いては、アクション検索からメニューから選択を検索して挿入します。
メニューから選択のアクション

挿入したら、下記を参考にプロンプト1と2の項目を下記のように書き換えます。同様にURLを開くChromeでURLを開くのアクションをそれぞれSafariとChromeの直下に挿入します。
ショートカットにメニューから選択のアクション挿入

そしたら、メニューから選択のアクションを先程の次の場合のアクションの下記の場所まで移動します。
メニューから選択のアクションを移動

最後に次の場合その他の場合の直下に結果を表示を挿入して、下記のテキストを挿入します。
結果を表示アクションを挿入

これで一旦終わりなので、ショートカット実行のアイコンをタップして動作を確認してみてください。
ショートカットを実行

ざっとのショートカットの作り方について紹介しましたが、ここまでの流れを掴んで後は色々と試しながら作ってみてください。

うまく動作しない場合

うまく動作しなかった場合は、先程も述べたように結果を表示のアクションとマジック変数を使って随所に挿入しながらデータを受け取れているかを確認しながら作成してみてください。

また、文字での受け取りをやる場合には、スペルが異なるためにうまく動作しない場合もありますので、それらも合わせてチェックしてみてください。

あとは、やはり他の公開されているショートカットを取得してどのような処理をしているかを確認するといいかと思います。

ショートカットの共有

作成したショートカットは他の人共有ができます。画面右上のカスタマイズアイコンでアイコンや名前を修正したら、共有アイコンをタップします。
iPhoneショートカットの共有

共有シートが表示されたら、iCoudリンクをコピーのアイコンをタップし、リンクをコピーで共有できます。
ショートカットのiCloudリンクをコピー

「In order to do this, you must be signed into iCloud.」と表示される場合には、iCloudへのログイン、また、設定→パスワードとアカウント→iCloud→iCloud Driveがオンになっているかをチェックしてみてください。

マッチテキストと条件分岐を使ってサンプルのショートカットを作成してみました
https://www.icloud.com/shortcuts/1a5e6295dc6f4bc6936e09e7a38a0657
詳しい使い方こちらです。
インスタグラム投稿内のURLをコピーできない時の対処法

同様にインスタグラムの画像を保存するショートカットです。
https://www.icloud.com/shortcuts/cc3a391b104646c4b6fa69af77b17812
使い方はこちら。
インスタグラムの画像・写真を複数保存する方法

爆速でツイッターリストを取得するシンプルなショートカットも作成しました。辞書と変数を使ったサンプルです。
https://www.icloud.com/shortcuts/f10a253f3bd548e8841ee5bff2938bdf
使い方こちらです。
iPhoneのショートカットでツイッターリストを爆速で開く!