
禁煙ウィジェットは、禁煙を始めてからの日数、吸わずに済んだタバコの本数、節約できた金額をiPhoneのホーム画面で確認できるScriptable用ウィジェットです。アプリを開かずに、禁煙を続けた成果をひと目で見られます。
禁煙を始めたとき、日数や節約金額を確認できるウィジェットを探したのですが、有料のものが多く、それなら自分で作ってみようと思ったのがきっかけです。我慢するだけでは続けにくいので、数字が少しずつ積み重なるのを見て、続ける励みにできるようにしました。
小・中・大の3サイズに対応しています。中・大サイズでは経過時間や、次の健康改善の目安までのカウントダウンも表示します。下の画像は、実際にiPhoneで使っている画面です。
実際のiPhoneのホーム画面を撮影したスクリーンショットです。左は小・中サイズ、右は大サイズ。画像をタップすると拡大できます。
ウィジェットの表示内容
- 禁煙開始日時からの経過日数・時間を表示
- 以前の喫煙本数から、吸わずに済んだ本数と箱数を概算
- タバコの価格から、節約できた金額を概算
- 小・中・大のウィジェットに合わせて表示内容を切り替え
- 黒・白・端末の外観に合わせる配色を選択
- 次の健康改善の目安までの残り時間を表示(中・大)
設定手順
- Scriptableをインストールします。App StoreでScriptableを開く。
- 下のフォームに禁煙開始日時、禁煙前の1日の喫煙本数、1箱の価格、1箱の本数を入力します。開始日時は、このページを開いているブラウザのタイムゾーンで入力してください。
- カラーとプレビューサイズを選び、「コードをコピー」を押します。
- Scriptableの「+」から新しいスクリプトを作り、コード全文を貼り付け、「禁煙ウィジェット」など分かりやすい名前で保存します。
- Scriptableで一度実行して、開始日時と数値が意図した設定になっているか確認します。
- iPhoneのホーム画面を長押しし、ウィジェット追加画面からScriptableを選び、小・中・大のいずれかを追加します。
- 追加したウィジェットを長押しして「ウィジェットを編集」を開き、「Script」に保存したスクリプトを指定します。「Parameter」は空欄で構いません。
パラメータ・カスタマイズ
このウィジェットの設定は、下のフォームで入力してコードに埋め込みます。ウィジェット編集画面の「Parameter」に入力する必要はありません。設定を変えるときはフォームでコードを生成し直し、Scriptableに保存した既存のコードを全文置き換えてください。
| 設定 | 内容 |
|---|---|
| 禁煙開始日時 | 最後に吸って禁煙を始めた日時。将来の日時ではなく、実際の開始日時を入力します。 |
| 1日の喫煙本数 | 禁煙する前の平均本数。節約本数の計算に使います。 |
| 1箱の価格・本数 | 購入していた商品の値。価格が異なる商品を併用していた場合、金額は概算になります。 |
| カラー | 黒・白・端末に合わせる、から選びます。 |
| プレビューサイズ | Scriptable内で実行したときの大きさ。ホーム画面では実際に配置したサイズに自動で合わせます。 |
動作確認・使用結果
| 確認した端末 | iPhone 17 ProMAX |
|---|---|
| iOS | iOS27 |
| Scriptable | 1.7.19 |
| 確認したサイズ | 小・中・大 |
| バージョン | 1.0.0 |
| 動作確認日 | 2026-09-17 |
上の2枚は実際のiPhoneのホーム画面です。1枚目に小・中サイズ、2枚目に大サイズを配置しています。撮影時には「禁煙30日目」「773本」「22,024円」が表示され、中・大サイズでは箱数や次の目安までのカウントダウンも確認できました。小サイズは日数と節約分を簡潔に、中・大サイズは経過時間や次の目安まで見られる構成です。
本数・箱数・金額は、経過時間と入力した値から計算した概算です。それぞれ表示時に丸めるため、画面に出ている整数の本数から計算した金額と、表示金額が完全に一致しない場合があります。実際に買わずに済んだ金額を家計簿から集計しているわけではありません。
更新履歴
1.0.0
- 初回リリース
よくあるエラーと対処
- コードをコピーできない
- 禁煙開始日時などの必須項目を確認してください。コピーが使えない場合は「コードをダウンロード」で保存するか、生成コードを選択してコピーします。
- 別の内容が表示される
- ホーム画面のウィジェット編集で「Script」に選んだスクリプト名を確認します。設定変更後は、保存したコードを全文置き換えてから一度実行してください。
- 日数が0になる・想定と違う
- 開始日時、午前・午後、入力時のタイムゾーンを確認します。将来の日時を指定すると経過時間は0として扱われます。日数は経過時間の24時間単位で計算されます。
- 大きさが変わらない
- フォームのプレビューサイズはScriptable内の表示用です。ホーム画面では、追加するウィジェット自体のサイズを選び直してください。
- 時間や金額がすぐに更新されない
- ホーム画面の更新タイミングはiOS側の制御も受けます。秒単位で常に更新される表示ではありません。Scriptableで直接実行すると、その時点の計算結果を確認できます。
- 実行時に構文エラーが出る
- コードの先頭から末尾までコピーできているか確認します。説明文や途中の一部だけを貼り付けず、生成したコード全文を使ってください。
注意事項・制限
- このウィジェットは経過時間から記録を表示するツールです。喫煙を検知したり、禁煙を自動で判定したりする機能はありません。途中で再開して記録をやり直す場合は、開始日時を設定し直してください。
- 「次の改善」はコード内に設定された一般的な目安へのカウントダウンです。スクショにある「肺の繊毛機能がほぼ回復」などの表示は、実際の身体の状態を測定した結果ではありません。個人差があり、表示日時にその変化が必ず起きると保証するものでもありません。禁煙の健康効果に関する説明は、下の公的情報もご参照ください。
- フォームに入力した設定は、このページからサーバーへ送信・保存しません。生成したコードには開始日時や喫煙本数などが含まれるので、他の人に共有する場合は設定内容を確認してください。記事の掲載画像は実機確認時の表示例で、利用者ごとの設定や経過時間によって数値は変わります。
データ提供・参考資料
- 日数・本数・金額:ユーザーが入力した設定と端末の現在時刻から計算。外部の喫煙記録サービスから取得しているデータではありません。
- CDC:Benefits of Quitting Smoking — 禁煙による健康効果と時間経過の参考情報。この記事の掲載にあたって参照しています。
- Scriptable公式ドキュメント
- Scriptableを初めて使う方へ
コードの生成・コピー
設定を入力して、あなたの開始日時・喫煙本数に合わせたコードを生成してください。設定後は「コードをコピー」、または「コードをダウンロード」からScriptableへ移せます。
MAKE IT YOURS
あなた専用の禁煙ウィジェット。
設定を選んで、そのままScriptableへ。
生成されたコードを確認する
Scriptableに追加するには
- 上の設定を入力して「コードをコピー」を押します。
- Scriptableの「+」で新しいスクリプトを作成し、貼り付けて保存します。
- 一度実行して確認し、ホーム画面のScriptableウィジェットでそのスクリプトを選択します。
ダウンロードは .js ファイルです。端末で直接取り込めない場合は、コピーして貼り付ける方法を使ってください。
SHARE

