コンテンツにスキップ

Python API の移行

python -m pip install ankiforge と from ankiforge import ... を使います。以前の配布名 anki-forge とインポート名 anki_forge は、互換エイリアスではありません。ソースをチェックアウトして使う場合、名前を変更した後は Maturin でネイティブ拡張を再ビルドしてください。セットアップガイドを参照してください。

旧 API の互換レイヤーは残していません。従来の Deck・レジストリ・ランタイムの API を、データを所有する公開モデルに置き換えます。

従来の手順 現在の手順
安定 ID が任意の Deck または Project Project(namespace, default_deck=...)
add_note(note) と内容由来の識別情報 add(stable_key, note)
変更可能な NoteType と add_notetype NoteType.builder(key)...build() の後に model.note()
文字列によるモデル参照 ノートが検証済みモデルを所有
プロジェクトのメディアレジストリ 独立した Media.file / Media.bytes スナップショット
インラインで描画したメディアとフィールド専用 setter Content.sequence、media.image()、media.sound()、Note.field
暗黙の HTML 文字列は Text。HTML には Content.html を使う
安定した識別情報のないマスク Mask.rect(key, x, y, width, height)
成果物がない場合もある戻り値と ensure_success 成果物が保証された BuildOutput。失敗時は構造化エラーを送出
診断からレポートの成功・失敗を推測 Output/Error のスナップショットが実際の結果を示す。Report は観測結果のみ
Diff、lockfile、更新安全性の切り替え compare(CompareOptions.against(...))、BuildOptions.update_from(...)
実行時のサブプロセス用パッケージ デフォルト Rust API へのプロセス内 PyO3 バインディング

更新の基準に使えるのは、現在の識別情報の証拠を持つ完全な配布時のオリジナル APKG だけです。旧バンドルや古い APKG の証拠を自動復元することはありません。新しい手順は README と実行可能なサンプルを参照してください。

Markdown を表示