5つの実際のAnkiデッキをiPhoneアプリにインポートしてみた結果
なぜこの検証を行ったのか
「私の使っているデッキは正しくインポートできますか?」——これは、Ankiユーザーから私たちが受け取る最も多い質問です。デスクトップ版のAnkiとカードの枚数が一致するだけでは不十分です。例えば、穴埋め(cloze)デッキが正しい枚数でインポートされても、{{c1::…}}のような生のマークアップがそのまま表示されたり、ヒントが消えたり、画像が空白になったり、音声ボタンが機能しなかったりする可能性があります。そこで、パーサーの動作を鵜呑みにするのではなく、医学生、MCAT受験生、日本語学習者が実際に使っている共有デッキをiPhoneにインポートし、学習セッションを開始して、最初の6〜10枚のカードの表面と裏面を確認・撮影しました。
検証環境:Guru 1.5.1(ビルド76)、iPhone 16 Pro Max、iOS 18。各.apkgファイルは「ファイル」アプリから直接開きました。これは、AirDropや共有シートから送信した場合と同じインポートプロセスを起動します。測定時間は、「インポート」をタップしてからライブラリにデッキが表示されるまでの実際の経過時間です。
対象とした5つのデッキ
| デッキ | ファイルサイズ | Ankiでのカード数 | インポート後のカード数 | インポート時間 | レンダリング確認(6〜10枚) |
|---|---|---|---|---|---|
| First Aid 2017 Pharmacology | 5.5 MB | 1,232 | 1,232 | 約10秒 | 穴埋めヒント、斜体のExtraフィールド |
| USMLE Step 2(ノートタイプ23種、穴埋め14種) | 68 MB | 5,647 | 5,647(修正前は11,199) | 約10秒 | 穴埋め、色付きの強調、画像、Extra |
| MileDown's MCAT Decks | 238 MB | 2,888 | 2,888 | 約5秒 | 色付きの穴埋め、図解(外部リンクはグレーアウトしたテキストで表示) |
| Zanki Physiology & Pathology | 125 MB | 16,966 | 16,966(修正前は20,792) | 約15秒 | 穴埋め、下線、画像 |
| JLPT "eggrolls" N1–N5 | 121 MB、音声ファイル10,107個 | 10,147 | 10,147 | 89秒 | ふりがな、例文、音声ボタン |
6つ目のファイルとして、263枚のAnKing MCATサンプルデッキも用意しましたが、これは同じパッケージを2回再インポートするための対照テストとしてのみ使用し、カード単位の確認は行っていません。
すべてのカードで確認した項目
- ライブラリ内のカード数が、デスクトップ版のAnkiで表示される同一デッキのカード数と一致しているか。
- 穴埋め問題が正しく機能しているか。表面に
[…]やヒントテキストが表示され、裏面で正解がハイライトされ、穴埋め番号ごとに1枚のカードとして認識されているか。 - 太字、下線、色付きテキスト(AnKingスタイルの強調)が維持されているか。
- パッケージ内の画像が(Extraフィールドから参照されているものも含めて)正しく読み込まれるか。
- 音声フィールドが再生可能なボタンとして機能し、ふりがな(ルビ)が漢字の上に正しく配置されているか。
- 一部のデッキでカード上部に表示されるヘッダーなど、テンプレートレベルでの追加要素がそのまま表示されるか。
USMLE Step 2
今回の検証で最も複雑だったデッキです。1つのパッケージに23種類のノートタイプと14種類の異なる穴埋めテンプレートが含まれていました。確認したすべてのバリエーションにおいて、通常の穴埋めカードとしてレンダリングされ、赤と青の強調表記はそのまま残り、正解の下にはExtraフィールドが正しく表示されました。心内膜炎のカードにあるRetina対応の高解像度画像も、インターネットからではなくパッケージ内のメディアフォルダから正しく読み込まれました。
Zanki Physiology & Pathology
カード数が最も多いデッキです。16,966枚のインポートに約15秒かかりました。下線の引かれた用語や画像も問題なく表示されました。ただし、USMLE Step 2でも同様でしたが、1つのノート(例:穴埋めノートのc1、c2、c3)から生成された関連カードが、1回のセッションで連続して出題されることに気づきました。デスクトップ版のAnkiはデフォルトで「関連カードを延期」しますが、テストしたビルドではこの機能が有効になっていませんでした。詳細については後述します。
MileDown's MCAT Decks
ファイルサイズが最も大きい238MBのデッキですが、そのほとんどが画像でした。カード数自体は少ないため、約5秒でインポートが完了しました。色付きの穴埋めや図解も正しくレンダリングされています。唯一の欠点は、MileDownのカードには外部リンクが含まれていますが、それがタップ可能なリンクではなくグレーのテキストとして表示されたことです。テキスト自体は存在しますが、リンク先には飛べません。
JLPT "eggrolls" N1–N5
インポートに最も時間がかかったデッキですが、その理由はカード数ではなくメディアの数にあります。10,107個の音声ファイルを展開してインデックスを作成する必要があったため、10,147枚のカードに89秒かかりました。カード上では、ふりがなが漢字の上に正しく配置され、例文の改行も保持され、各音声フィールドは紫色の再生ボタンとして機能しました。
First Aid 2017 Pharmacology
小規模で古典的な穴埋めデッキです。穴埋めのヒントや、斜体のExtraフィールドも期待通りにレンダリングされました。唯一の問題は見た目に関するもので、デッキの元の名前であるaervien + tracymcgrady1991 step 1 pharm (FA 2017)がそのままライブラリに表示され、最初の画面では途切れてしまうことです。インポート後に名前を変更すれば解決します。
この検証で発見されたバグ:サブデッキツリーの二重カウント
USMLE Step 2は11,199枚のカードとしてインポートされました。しかし、デスクトップ版のAnkiでは5,647枚です。Zankiは16,966枚のところが20,792枚になっていました。一方で、MileDownとJLPTは正確に一致しました。
二重カウントが発生したデッキとそうでないデッキの違いは、デッキの階層構造(ツリー)にあります。USMLE Step 2の親デッキは独自のカードを保持しつつ、15個のサブデッキを持っています。従来のインポーターでは、カードを直接含むすべてのデッキをリストアップした後、子デッキも含めてそれぞれのノートを列挙していたため、サブデッキのノートが親デッキの配下とサブデッキ自体の配下で1回ずつ、計2回収集されていました。Zankiには独自のカードを持つ中間デッキがいくつかあるため、22%多くカウントされた理由がこれで説明できます。MileDownとJLPTの親デッキは空であるため、二重にカウントされることはありませんでした。「カードごとのカード保持祖先デッキの数」をモデル化すると、11,194 / 20,790 / 2,888 / 10,147となり、実測値と一致しました。
この修正により、各ノートはそれを要求する最も深い階層のデッキにのみ保持されるようになりました。以前は「少なくとも100枚のカードがある」ことしか確認していなかった17の実際のデッキに対するローカルコーパステストも、正確な枚数を検証するようになり、現在24/24でパスしています。この変更は、現在App Storeで審査中のGuru 1.5.1に含まれています。もし以前のビルドでネストされたデッキをインポートし、予想される枚数の約2倍の数が表示された場合は、そのデッキを削除し、アプリをアップデートしてから再度インポートしてください。既存のライブラリが自動的に書き換えられることはありません。
改善が必要な3つのポイント
- 穴埋めの関連カードが連続して表示される。 1つのノートのc1、c2、c3が1回のセッションで連続して出題されました。バージョン1.5.1のGuruでは、Ankiの「関連カードを延期する」機能と同様に、ノートごとに1日1枚のカードのみを表示するようになります。
- 「約60分」の見積もり時間。 すべてのデッキにおいて、新規カード20枚に対する見積もり時間が同じように表示されていました。17,000枚のカードをインポートした直後にこれを見ると、間違っている上にやる気を削がれます。バージョン1.5.1では、実際にセッションで表示されるカードに基づいて見積もりを算出します。
- デッキの名前。 共有デッキは元の非常に長い名前のままインポートされ、ライブラリで途切れてしまいます。この問題はまだ未解決ですので、当面はインポート後に名前を変更してください。
自分のデッキで同じ検証をする方法
- デスクトップ版のAnkiで:ファイル → 書き出す → Anki デッキパッケージ(.apkg)。復習間隔を引き継ぎたい場合はスケジュール情報を含めるにチェックを入れ、画像や音声を含める場合はメディアを含めるにチェックを入れてください。
- そのファイルをiPhoneにAirDropするか、iCloud Driveに保存し、「ファイル」アプリからタップしてGuruを選択します。(スクリーンショット付きのステップバイステップ解説はこちら。)
- ライブラリ内のカード数と、デスクトップ版のAnkiのカード数を比較します。デッキにサブデッキがあり、枚数が約2倍になっている場合は、1.5.1より前のビルドを使用しています。
- セッションを開始し、穴埋めカード、画像カード、音声カードをそれぞれ1枚ずつ確認してからファイルを削除します。
インポート(既存のトップレベルデッキへのインポートを含む)と毎日の復習は、作成とインポートを合わせて最大5つのトップレベルデッキまで無料で利用できます。サブデッキツリー全体で1つのデッキとしてカウントされます。もちろん、すべてのデッキは標準の.apkgとして書き出すことが可能です。Proプラン(月額$4.99で3日間のトライアル付き、年額$39.99、買い切り$24.99)にアップグレードすると、カードの編集、同期、Study Lock機能、そして無制限のデッキ利用が可能になります。
よくある質問(FAQ)
インポートすると、復習の履歴や間隔は維持されますか? パッケージが「スケジュール情報を含める」設定でエクスポートされた場合、スケジュールの状態(期日、安定度、難易度)は維持されます。この設定なしでエクスポートされたパッケージは、すべて新規カードとしてインポートされます。
AnKingには対応していますか? 今回の検証で使用したUSMLE Step 2デッキは、14種類の穴埋めバリエーションや色付きの強調表記などAnKingスタイルのノートタイプを使用しており、すべて正常にレンダリングされました。完全なAnKing Stepデッキはファイルサイズが大きくメディアも多いため、インポートには10秒ではなく1分近くかかることが予想されます。なお、AnkiHubのアップデートはGuruには自動で反映されないため、その都度最新のパッケージを再インポートする必要があります。詳しくはiPhoneでのAnKingとZankiの利用をご覧ください。
Zankiが15秒だったのに、音声デッキのインポートに89秒かかったのはなぜですか? インポートにかかる時間は、カード数ではなくメディアファイルの数に比例します。JLPT eggrollsデッキには10,107個の音声ファイルがありますが、Zankiの画像ファイルの数はそれよりはるかに少ないためです(サイズ自体は大きくても)。
これらのスクリーンショットは実機のものですか? これらは、App Storeで配信されているものと同じビルドを実行しているiOSシミュレーター(iPhone 16 Pro Max)からのものです。インポートエンジンとレンダラーは実機と完全に同一です。iPhone 15や16の実機でのインポート時間も同じ範囲に収まります。
カード内の外部リンクは機能しますか? まだ機能しません。上記のMileDownカードの例のように、カードテキスト内のリンクはタップ可能なリンクではなく、グレーのテキストとして表示されます。
ご自身のデッキでお試しください
Guruは、穴埋め、メディア、サブデッキ、スケジュール情報を維持したまま、.apkgおよび.colpkgをインポートできます。インポートおよび毎日の復習は最大5つのデッキまで無料です。さらに機能を活用したい方には、編集、同期、Study Lock、無制限デッキが使えるProプラン(月額$4.99・年額$39.99・買い切り$24.99、3日間の無料トライアルあり)もご用意しています。
Guruをダウンロード