【iPhone】ショートカットで辞書Appもどきを作る[PART2]

ショートカットAppを使って、iPhone内蔵辞書の使い勝手を向上させます。

最終目標としては、以下の3つの機能の実装です。

(1) 検索を連続して行える機能
(2) 検索履歴を残せる機能
(3) 検索の強化(辞書に未定義の単語にも対応させる)

ただ、上記の内容を1記事で全部書くのは流石に長いなと感じたので、機能ごとに3つに記事を分けることにしました。

前回記事(PART1)までで(1)の機能については実装し終えたので、今回は(2)の検索履歴のお話です。

↓前回記事↓


1. はじめに

前回記事(PART1)では、内蔵辞書の検索が連続してできるショートカットを作りました。

レシピ

画像1


今回は、このショートカットに色々とアクションを付け足して、検索履歴の機能を実装していきたいと思います。

さて、まず最初に何をするかですが、ショートカットの名前を変えたいと思います。(日本語より英語名の方がなにかとやりやすいため)

ショートカット名の変更

画像2

※名前の由来は、ショートカット(shortcut)と辞書(dictionary)から適当に取ってきて、繋げて"SCDIC"


名前を変えたら、次は検索履歴を残す機能を実装していきます。肝心の履歴を残す方法ですが、iOS純正メモを使います。


2. メモアクションとメモの作成

ショートカットには、iOS純正メモを操作できるアクションが4つ用意されています。

メモアクション

画像3


今回は、「メモを検索」アクションと、「メモに追加」アクションの2つを使います。

予め履歴をとる用のメモを一つ用意しておき、そこに検索に成功した単語を書き込んでいけば、履歴が残せるよねって寸法です。

処理の流れとしては、「メモを検索」アクションで書き込むメモを検索・指定し、指定したメモに「メモに追加」アクションで単語を書き込むという感じ。

さて、書き込むメモを検索・指定するには、メモの名前やフォルダなどの情報が必要です。細かいことを言い出すとキリがないのでやめておきますが、今回の場合は、メモの名前情報から検索・指定する方法をとりたいと思います。

肝心のメモの名前をどうするかですが、先ほど名前変更した"SCDIC"というショートカットが書き込むメモということで、以下のような名前にしたいと思います。

scdic_d_his

※名前の由来は、辞書(dictionary)のdと、履歴(history)のhisを適当に後にくっつけたってだけ。


名前を決めたら、適当なフォルダに決めた名前でメモを作成します。メモの名前とは、メモの1行目のことですので、以下のようにします。

メモを作成する

画像4



3. アクションの追加その1

メモを作成し終わったら、ショートカットの編集にとりかかります。

単語の検索に成功した場合にのみ履歴を残したいので、「定義を表示」アクションの下にアクションを追加していきます。

まず、以下のようにして、メモを検索・指定します。

メモの検索・指定

画像5

(1) すべてのメモから検索する

(2) すべてのメモから名前に"scdic_d_his"の文字列が含まれているメモを選択する

(3) (2)で選択したメモを最終変更日が新しい順に並び替える

(4) (3)で並び替えたメモから1件のメモを選ぶ

(1)(2)(3)(4)を経て、
変更日が一番新しい"scdic_d_his"が検索・指定されることになる。


次いで、検索・指定したメモに、入力された単語を追加書き込みします。

単語の追加書き込み

画像6


これで、履歴機能の実装はほぼ完了です。試しに何度か辞書検索してみて、メモの内容がちゃんと変わっていることを確認します。

メモの内容の確認

画像7


大丈夫そうです。


4. アクションの追加その2

メモに履歴が残せるようになったのはいいのですが、入力の仕方次第では、面倒なことになってしまう場合があります。

例えば、以下のように入力に改行を含めてしまうと、履歴メモにも改行が含まれてしまいます。

入力に改行を含めた例

画像8


気をつけて改行しないようにすればいい話ではあるのですが、いちいちそれに気を配るのも面倒です。なので、以下のようにして、単語入力時に改行を消してやるようにします。

レシピ

画像9

(1) 改行を除いた入力(アップデートされたテキスト)を「定義を表示」アクションに渡すようにする

(2) 改行を除いた入力(アップデートされたテキスト)を「メモを追加」アクションに渡すようにする


これで、入力に改行が含まれていた場合でも、履歴メモに改行が含まれてしまうことはなくなりました。


5. まとめ

今回は、検索履歴を残せるようにショートカットに変更を加えました。

次回(PART3)では、辞書に未定義の単語にも対応できるようにショートカットに変更を加えていきたいと思います。

では〜

追記 2020/06/29
PART3が公開されました

↓PART3↓


この記事が気に入ったらサポートをしてみませんか?