├── .version ├── proto ├── .top_level ├── .clang-format └── README.md ├── qt ├── aqt │ ├── py.typed │ ├── import_export │ │ └── __init__.py │ ├── data │ │ ├── qt │ │ │ └── icons │ │ │ │ ├── anki.png │ │ │ │ └── media-record.png │ │ └── web │ │ │ ├── imgs │ │ │ ├── more.png │ │ │ ├── favicon.ico │ │ │ ├── paperclip.png │ │ │ ├── text_bold.png │ │ │ ├── text_clear.png │ │ │ ├── text_cloze.png │ │ │ ├── text_sub.png │ │ │ ├── text_super.png │ │ │ ├── text_under.png │ │ │ ├── media-record.png │ │ │ ├── text_italic.png │ │ │ └── anki-logo-thin.png │ │ │ ├── js │ │ │ └── pycmd.d.ts │ │ │ └── css │ │ │ ├── addonconf.scss │ │ │ └── toolbar-bottom.scss │ ├── colors.py │ ├── forms │ │ ├── main.py │ │ ├── about.py │ │ ├── addons.py │ │ ├── dconf.py │ │ ├── debug.py │ │ ├── fields.py │ │ ├── forget.py │ │ ├── models.py │ │ ├── stats.py │ │ ├── addcards.py │ │ ├── addfield.py │ │ ├── addmodel.py │ │ ├── browser.py │ │ ├── edithtml.py │ │ ├── preview.py │ │ ├── profiles.py │ │ ├── progress.py │ │ ├── setgroup.py │ │ ├── setlang.py │ │ ├── synclog.py │ │ ├── taglimit.py │ │ ├── template.py │ │ ├── widgets.py │ │ ├── addonconf.py │ │ ├── changemap.py │ │ ├── editaddon.py │ │ ├── exporting.py │ │ ├── finddupes.py │ │ ├── getaddons.py │ │ ├── importing.py │ │ ├── modelopts.py │ │ ├── studydeck.py │ │ ├── browserdisp.py │ │ ├── browseropts.py │ │ ├── changemodel.py │ │ ├── clayout_top.py │ │ ├── customstudy.py │ │ ├── editcurrent.py │ │ ├── emptycards.py │ │ ├── fields_web.py │ │ ├── findreplace.py │ │ ├── preferences.py │ │ ├── reposition.py │ │ └── filtered_deck.py │ ├── props.py │ └── gui_hooks.py ├── tests │ └── __init__.py ├── README.md ├── bundle │ ├── PyOxidizer │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── pyoxy │ │ │ ├── tests │ │ │ │ └── yaml │ │ │ │ │ ├── hello-world.stdout │ │ │ │ │ ├── shell-shebang.stdout │ │ │ │ │ ├── hello-world-no-document-end.stdout │ │ │ │ │ ├── hello-world.yaml │ │ │ │ │ ├── hello-world-no-document-end.yaml │ │ │ │ │ └── shell-shebang.yaml │ │ │ └── docs │ │ │ │ └── index.rst │ │ ├── .hgignore │ │ ├── .editorconfig │ │ ├── ci │ │ │ └── install-rust-linux.sh │ │ ├── pyoxidizer │ │ │ ├── src │ │ │ │ └── templates │ │ │ │ │ └── application-manifest.rc.hbs │ │ │ └── tests │ │ │ │ └── cli_tests.rs │ │ ├── pyembed │ │ │ └── docs │ │ │ │ └── index.rst │ │ ├── tugger-code-signing │ │ │ └── src │ │ │ │ ├── apple-codesign-testuser.p12 │ │ │ │ ├── windows-testuser-default.pfx │ │ │ │ └── windows-testuser-no-extras.pfx │ │ ├── docs │ │ │ └── requirements.in │ │ ├── python-oxidized-importer │ │ │ └── docs │ │ │ │ └── index.rst │ │ ├── tugger-apple │ │ │ └── src │ │ │ │ └── lib.rs │ │ ├── tugger │ │ │ └── docs │ │ │ │ └── tugger_starlark_type_resolved_target.rst │ │ ├── .gitignore │ │ ├── tugger-rpm │ │ │ └── src │ │ │ │ └── lib.rs │ │ ├── tugger-common │ │ │ └── src │ │ │ │ └── lib.rs │ │ └── Cross.toml │ ├── mac │ │ ├── dmg │ │ │ ├── set-dmg-settings.app │ │ │ │ └── Contents │ │ │ │ │ ├── PkgInfo │ │ │ │ │ ├── MacOS │ │ │ │ │ └── applet │ │ │ │ │ └── Resources │ │ │ │ │ ├── applet.icns │ │ │ │ │ ├── applet.rsrc │ │ │ │ │ ├── Scripts │ │ │ │ │ └── main.scpt │ │ │ │ │ └── description.rtfd │ │ │ │ │ └── TXT.rtf │ │ │ ├── dmg_ds_store │ │ │ ├── anki-logo-bg.png │ │ │ └── set-dmg-settings.scpt │ │ └── icon │ │ │ ├── Assets.car │ │ │ ├── AppIcon.icns │ │ │ ├── Assets.xcassets │ │ │ ├── Contents.json │ │ │ └── AppIcon.appiconset │ │ │ │ └── round-1024-512.png │ │ │ └── build.sh │ ├── win │ │ ├── anki-console.bat │ │ ├── anki-icon.ico │ │ └── anki-manifest.rc │ ├── lin │ │ └── anki.png │ └── qt.exclude ├── mac │ ├── README.md │ └── ankihelper.xcodeproj │ │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcuserdata │ │ └── dae.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── xcshareddata │ │ └── IDEWorkspaceChecks.plist ├── icons │ ├── README.md │ └── sidebar.afdesign ├── tools │ └── runanki.system.in └── .isort.cfg ├── .rustfmt-empty.toml ├── pylib ├── anki │ ├── py.typed │ └── storage.py ├── tests │ ├── support │ │ ├── fake.png │ │ ├── text-update.txt │ │ ├── text-tags.txt │ │ ├── media.apkg │ │ ├── mnemo.db │ │ ├── anki12.anki │ │ ├── update1.apkg │ │ ├── update2.apkg │ │ ├── anki12-due.anki │ │ ├── anki2-alpha.anki2 │ │ ├── diffmodels1.anki │ │ ├── diffmodels2.anki │ │ ├── invalid-ords.anki │ │ ├── suspended12.anki │ │ ├── anki12-broken.anki │ │ ├── diffmodels2-1.apkg │ │ ├── diffmodels2-2.apkg │ │ ├── diffmodeltemplates-1.apkg │ │ ├── diffmodeltemplates-2.apkg │ │ └── text-2fields.txt │ ├── test_sched2021.py │ └── __init__.py ├── rsbridge │ └── .gitignore ├── README.md └── .gitignore ├── rslib ├── linkchecker │ └── src │ │ └── lib.rs ├── README.md ├── .gitignore ├── src │ ├── storage │ │ ├── config │ │ │ ├── get.sql │ │ │ ├── get_entry.sql │ │ │ └── add.sql │ │ ├── tag │ │ │ ├── get.sql │ │ │ ├── add.sql │ │ │ ├── update.sql │ │ │ └── alloc_id.sql │ │ ├── graves │ │ │ ├── remove.sql │ │ │ └── add.sql │ │ ├── note │ │ │ ├── get_tags.sql │ │ │ ├── is_orphaned.sql │ │ │ ├── update_tags.sql │ │ │ ├── search_nids_setup.sql │ │ │ ├── get.sql │ │ │ ├── get_without_fields.sql │ │ │ ├── update.sql │ │ │ └── notes_types_checksums_decks.sql │ │ ├── notetype │ │ │ ├── get_notetype_names.sql │ │ │ ├── update_fields.sql │ │ │ ├── get_notetype.sql │ │ │ ├── get_fields.sql │ │ │ ├── update_notetype_config.sql │ │ │ ├── update_templates.sql │ │ │ ├── add_or_update.sql │ │ │ ├── field_names_for_notes.sql │ │ │ ├── get_templates.sql │ │ │ ├── highest_card_ord.sql │ │ │ └── get_use_counts.sql │ │ ├── deckconfig │ │ │ ├── get.sql │ │ │ ├── update.sql │ │ │ ├── add_if_unique.sql │ │ │ └── add_or_update.sql │ │ ├── deck │ │ │ ├── get_deck.sql │ │ │ ├── cards_for_deck.sql │ │ │ ├── missing-decks.sql │ │ │ ├── add_or_update_deck.sql │ │ │ ├── update_deck.sql │ │ │ ├── update_active.sql │ │ │ ├── all_decks_of_search_notes.sql │ │ │ ├── alloc_id.sql │ │ │ └── all_decks_and_original_of_search_cards.sql │ │ ├── revlog │ │ │ ├── v2_upgrade.sql │ │ │ ├── studied_today.sql │ │ │ └── get.sql │ │ ├── card │ │ │ ├── at_or_above_position.sql │ │ │ ├── search_cids_setup_ordered.sql │ │ │ ├── search_cids_setup.sql │ │ │ ├── fix_ordinal.sql │ │ │ ├── new_cards.sql │ │ │ ├── fix_ivl.sql │ │ │ ├── search_cards_of_notes_into_table.sql │ │ │ ├── fix_low_ease.sql │ │ │ ├── active_new_cards.sql │ │ │ ├── intraday_due.sql │ │ │ ├── due_cards.sql │ │ │ ├── get_card.sql │ │ │ └── update_card.sql │ │ └── upgrades │ │ │ ├── schema17_upgrade.sql │ │ │ └── schema11_downgrade.sql │ ├── sync │ │ ├── media │ │ │ └── database │ │ │ │ ├── server │ │ │ │ ├── meta │ │ │ │ │ ├── get_meta.sql │ │ │ │ │ └── set_meta.sql │ │ │ │ └── entry │ │ │ │ │ ├── get_entry.sql │ │ │ │ │ ├── set_entry.sql │ │ │ │ │ └── changes.sql │ │ │ │ └── mod.rs │ │ └── mod.rs │ ├── notetype │ │ ├── cloze_styling.css │ │ ├── styling.css │ │ └── header.tex │ ├── i18n.rs │ ├── import_export │ │ ├── text │ │ │ └── csv │ │ │ │ └── mod.rs │ │ └── package │ │ │ ├── colpkg │ │ │ └── mod.rs │ │ │ └── apkg │ │ │ └── mod.rs │ ├── stats │ │ └── mod.rs │ └── search │ │ ├── deck_order.sql │ │ ├── notetype_order.sql │ │ ├── card_mod_order.sql │ │ ├── note_cards_order.sql │ │ ├── note_lapses_order.sql │ │ ├── note_reps_order.sql │ │ ├── note_ease_order.sql │ │ ├── note_interval_order.sql │ │ └── template_order.sql ├── bench.sh ├── tests │ └── support │ │ └── mediacheck.anki2 ├── i18n_helpers │ └── src │ │ └── lib.rs └── i18n │ └── src │ └── generated.rs ├── ftl ├── qt-repo │ ├── .gitattributes │ ├── desktop │ │ ├── la │ │ │ ├── addons.ftl │ │ │ ├── about.ftl │ │ │ └── qt-misc.ftl │ │ ├── mr │ │ │ └── addons.ftl │ │ ├── th │ │ │ ├── addons.ftl │ │ │ └── qt-misc.ftl │ │ ├── or │ │ │ └── errors.ftl │ │ ├── oc │ │ │ ├── addons.ftl │ │ │ └── about.ftl │ │ ├── da │ │ │ ├── addons.ftl │ │ │ └── profiles.ftl │ │ ├── el │ │ │ └── addons.ftl │ │ ├── hr │ │ │ ├── addons.ftl │ │ │ └── profiles.ftl │ │ ├── af │ │ │ ├── addons.ftl │ │ │ └── profiles.ftl │ │ ├── bg │ │ │ ├── addons.ftl │ │ │ └── profiles.ftl │ │ ├── be │ │ │ ├── errors.ftl │ │ │ └── profiles.ftl │ │ ├── zh-CN │ │ │ └── profiles.ftl │ │ ├── hy-AM │ │ │ └── profiles.ftl │ │ ├── zh-TW │ │ │ └── profiles.ftl │ │ ├── eo │ │ │ └── profiles.ftl │ │ ├── sr │ │ │ ├── profiles.ftl │ │ │ └── addons.ftl │ │ ├── hu │ │ │ └── profiles.ftl │ │ ├── sv-SE │ │ │ └── profiles.ftl │ │ ├── ja │ │ │ └── profiles.ftl │ │ ├── pt-PT │ │ │ └── profiles.ftl │ │ ├── eu │ │ │ └── profiles.ftl │ │ ├── ms │ │ │ └── about.ftl │ │ ├── sk │ │ │ └── profiles.ftl │ │ ├── ko │ │ │ └── profiles.ftl │ │ ├── kab │ │ │ └── about.ftl │ │ ├── gl │ │ │ └── profiles.ftl │ │ ├── nl │ │ │ └── profiles.ftl │ │ ├── ar │ │ │ └── profiles.ftl │ │ ├── it │ │ │ └── profiles.ftl │ │ ├── jbo │ │ │ └── profiles.ftl │ │ ├── en-GB │ │ │ └── about.ftl │ │ ├── he │ │ │ └── profiles.ftl │ │ ├── ga-IE │ │ │ └── profiles.ftl │ │ ├── vi │ │ │ └── profiles.ftl │ │ ├── pl │ │ │ └── profiles.ftl │ │ ├── templates │ │ │ └── profiles.ftl │ │ ├── pt-BR │ │ │ └── profiles.ftl │ │ ├── fa │ │ │ └── profiles.ftl │ │ ├── fr │ │ │ └── profiles.ftl │ │ ├── cs │ │ │ └── profiles.ftl │ │ └── ml │ │ │ └── profiles.ftl │ ├── l10n.toml │ └── README.md ├── core-repo │ ├── .gitattributes │ ├── core │ │ ├── et │ │ │ ├── profiles.ftl │ │ │ ├── fields.ftl │ │ │ ├── undo.ftl │ │ │ ├── media.ftl │ │ │ ├── editing.ftl │ │ │ ├── sync.ftl │ │ │ ├── adding.ftl │ │ │ ├── notetypes.ftl │ │ │ ├── card-templates.ftl │ │ │ ├── actions.ftl │ │ │ ├── decks.ftl │ │ │ └── card-stats.ftl │ │ ├── ms │ │ │ ├── actions.ftl │ │ │ ├── fields.ftl │ │ │ ├── findreplace.ftl │ │ │ ├── adding.ftl │ │ │ ├── decks.ftl │ │ │ ├── statistics.ftl │ │ │ ├── editing.ftl │ │ │ ├── notetypes.ftl │ │ │ ├── custom-study.ftl │ │ │ └── studying.ftl │ │ ├── mn │ │ │ ├── profiles.ftl │ │ │ ├── undo.ftl │ │ │ ├── media.ftl │ │ │ ├── adding.ftl │ │ │ ├── editing.ftl │ │ │ ├── sync.ftl │ │ │ ├── notetypes.ftl │ │ │ ├── actions.ftl │ │ │ ├── exporting.ftl │ │ │ ├── statistics.ftl │ │ │ ├── studying.ftl │ │ │ ├── card-stats.ftl │ │ │ └── preferences.ftl │ │ ├── mr │ │ │ ├── profiles.ftl │ │ │ ├── search.ftl │ │ │ ├── undo.ftl │ │ │ ├── fields.ftl │ │ │ ├── media-check.ftl │ │ │ ├── media.ftl │ │ │ ├── adding.ftl │ │ │ ├── editing.ftl │ │ │ ├── sync.ftl │ │ │ └── card-stats.ftl │ │ ├── oc │ │ │ ├── profiles.ftl │ │ │ ├── custom-study.ftl │ │ │ ├── filtering.ftl │ │ │ ├── deck-config.ftl │ │ │ ├── media.ftl │ │ │ ├── search.ftl │ │ │ ├── fields.ftl │ │ │ ├── media-check.ftl │ │ │ ├── adding.ftl │ │ │ ├── findreplace.ftl │ │ │ └── editing.ftl │ │ ├── el │ │ │ ├── filtering.ftl │ │ │ ├── deck-config.ftl │ │ │ ├── undo.ftl │ │ │ ├── search.ftl │ │ │ ├── profiles.ftl │ │ │ ├── media.ftl │ │ │ ├── database-check.ftl │ │ │ ├── findreplace.ftl │ │ │ ├── adding.ftl │ │ │ └── custom-study.ftl │ │ ├── fr │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ ├── findreplace.ftl │ │ │ └── network.ftl │ │ ├── ja │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ ├── findreplace.ftl │ │ │ ├── network.ftl │ │ │ └── help.ftl │ │ ├── ko │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ ├── findreplace.ftl │ │ │ └── network.ftl │ │ ├── sr │ │ │ ├── filtering.ftl │ │ │ ├── deck-config.ftl │ │ │ ├── undo.ftl │ │ │ ├── search.ftl │ │ │ ├── empty-cards.ftl │ │ │ ├── findreplace.ftl │ │ │ └── media-check.ftl │ │ ├── tr │ │ │ ├── filtering.ftl │ │ │ ├── change-notetype.ftl │ │ │ ├── empty-cards.ftl │ │ │ ├── findreplace.ftl │ │ │ └── errors.ftl │ │ ├── bg │ │ │ ├── filtering.ftl │ │ │ ├── deck-config.ftl │ │ │ ├── undo.ftl │ │ │ ├── search.ftl │ │ │ ├── empty-cards.ftl │ │ │ ├── findreplace.ftl │ │ │ ├── media-check.ftl │ │ │ └── adding.ftl │ │ ├── da │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ ├── search.ftl │ │ │ └── findreplace.ftl │ │ ├── de │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ └── findreplace.ftl │ │ ├── eo │ │ │ ├── filtering.ftl │ │ │ ├── deck-config.ftl │ │ │ ├── undo.ftl │ │ │ ├── empty-cards.ftl │ │ │ ├── search.ftl │ │ │ ├── findreplace.ftl │ │ │ └── media-check.ftl │ │ ├── gl │ │ │ ├── filtering.ftl │ │ │ ├── deck-config.ftl │ │ │ ├── undo.ftl │ │ │ ├── search.ftl │ │ │ ├── empty-cards.ftl │ │ │ ├── findreplace.ftl │ │ │ └── media-check.ftl │ │ ├── hr │ │ │ ├── filtering.ftl │ │ │ ├── deck-config.ftl │ │ │ ├── media.ftl │ │ │ ├── undo.ftl │ │ │ ├── search.ftl │ │ │ ├── media-check.ftl │ │ │ ├── profiles.ftl │ │ │ ├── findreplace.ftl │ │ │ └── adding.ftl │ │ ├── it │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ ├── findreplace.ftl │ │ │ └── network.ftl │ │ ├── jbo │ │ │ ├── filtering.ftl │ │ │ ├── undo.ftl │ │ │ ├── findreplace.ftl │ │ │ ├── search.ftl │ │ │ ├── network.ftl │ │ │ └── deck-config.ftl │ │ ├── kab │ │ │ ├── filtering.ftl │ │ │ ├── deck-config.ftl │ │ │ ├── undo.ftl │ │ │ ├── media-check.ftl │ │ │ ├── search.ftl │ │ │ ├── findreplace.ftl │ │ │ ├── adding.ftl │ │ │ ├── custom-study.ftl │ │ │ └── fields.ftl │ │ ├── la │ │ │ ├── card-stats.ftl │ │ │ ├── editing.ftl │ │ │ ├── adding.ftl │ │ │ ├── custom-study.ftl │ │ │ ├── notetypes.ftl │ │ │ ├── findreplace.ftl │ │ │ ├── decks.ftl │ │ │ ├── card-templates.ftl │ │ │ └── studying.ftl │ │ ├── nl │ │ │ ├── filtering.ftl │ │ │ ├── deck-config.ftl │ │ │ ├── undo.ftl │ │ │ ├── empty-cards.ftl │ │ │ ├── search.ftl │ │ │ ├── findreplace.ftl │ │ │ └── media-check.ftl │ │ ├── vi │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ ├── findreplace.ftl │ │ │ └── network.ftl │ │ ├── zh-CN │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ ├── findreplace.ftl │ │ │ └── network.ftl │ │ ├── zh-TW │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ ├── findreplace.ftl │ │ │ └── network.ftl │ │ ├── af │ │ │ ├── filtering.ftl │ │ │ ├── undo.ftl │ │ │ ├── search.ftl │ │ │ ├── empty-cards.ftl │ │ │ ├── findreplace.ftl │ │ │ └── media-check.ftl │ │ ├── cs │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ └── findreplace.ftl │ │ ├── es │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ └── findreplace.ftl │ │ ├── eu │ │ │ ├── filtering.ftl │ │ │ ├── undo.ftl │ │ │ ├── search.ftl │ │ │ ├── empty-cards.ftl │ │ │ ├── findreplace.ftl │ │ │ └── media-check.ftl │ │ ├── fi │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ └── findreplace.ftl │ │ ├── hy-AM │ │ │ ├── filtering.ftl │ │ │ ├── deck-config.ftl │ │ │ ├── undo.ftl │ │ │ ├── empty-cards.ftl │ │ │ ├── search.ftl │ │ │ └── findreplace.ftl │ │ ├── pl │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ ├── findreplace.ftl │ │ │ └── network.ftl │ │ ├── pt-BR │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ ├── findreplace.ftl │ │ │ └── network.ftl │ │ ├── pt-PT │ │ │ ├── deck-config.ftl │ │ │ ├── filtering.ftl │ │ │ ├── undo.ftl │ │ │ ├── search.ftl │ │ │ ├── empty-cards.ftl │ │ │ ├── findreplace.ftl │ │ │ └── media-check.ftl │ │ ├── ro │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ └── findreplace.ftl │ │ ├── ru │ │ │ ├── filtering.ftl │ │ │ ├── keyboard.ftl │ │ │ ├── network.ftl │ │ │ └── findreplace.ftl │ │ ├── sk │ │ │ ├── filtering.ftl │ │ │ ├── deck-config.ftl │ │ │ ├── undo.ftl │ │ │ ├── search.ftl │ │ │ ├── empty-cards.ftl │ │ │ ├── media-check.ftl │ │ │ └── findreplace.ftl │ │ ├── sv-SE │ │ │ ├── filtering.ftl │ │ │ ├── deck-config.ftl │ │ │ ├── undo.ftl │ │ │ ├── empty-cards.ftl │ │ │ ├── search.ftl │ │ │ ├── findreplace.ftl │ │ │ └── media-check.ftl │ │ ├── th │ │ │ ├── preferences.ftl │ │ │ ├── search.ftl │ │ │ ├── editing.ftl │ │ │ ├── media.ftl │ │ │ ├── findreplace.ftl │ │ │ ├── card-templates.ftl │ │ │ ├── sync.ftl │ │ │ ├── decks.ftl │ │ │ ├── notetypes.ftl │ │ │ ├── actions.ftl │ │ │ ├── exporting.ftl │ │ │ ├── card-stats.ftl │ │ │ └── studying.ftl │ │ ├── uk │ │ │ ├── filtering.ftl │ │ │ ├── undo.ftl │ │ │ ├── search.ftl │ │ │ ├── findreplace.ftl │ │ │ └── network.ftl │ │ ├── nb-NO │ │ │ ├── deck-config.ftl │ │ │ ├── media.ftl │ │ │ ├── undo.ftl │ │ │ ├── filtering.ftl │ │ │ ├── network.ftl │ │ │ ├── profiles.ftl │ │ │ ├── search.ftl │ │ │ ├── findreplace.ftl │ │ │ ├── custom-study.ftl │ │ │ ├── adding.ftl │ │ │ ├── card-template-rendering.ftl │ │ │ └── fields.ftl │ │ ├── ar │ │ │ ├── keyboard.ftl │ │ │ ├── filtering.ftl │ │ │ └── network.ftl │ │ ├── be │ │ │ ├── keyboard.ftl │ │ │ ├── network.ftl │ │ │ └── findreplace.ftl │ │ ├── en-GB │ │ │ ├── browsing.ftl │ │ │ ├── database-check.ftl │ │ │ ├── scheduling.ftl │ │ │ └── editing.ftl │ │ ├── he │ │ │ ├── keyboard.ftl │ │ │ ├── filtering.ftl │ │ │ ├── network.ftl │ │ │ └── findreplace.ftl │ │ ├── lv │ │ │ └── card-templates.ftl │ │ ├── or │ │ │ ├── keyboard.ftl │ │ │ └── findreplace.ftl │ │ ├── sl │ │ │ ├── keyboard.ftl │ │ │ └── findreplace.ftl │ │ ├── ga-IE │ │ │ ├── keyboard.ftl │ │ │ └── filtering.ftl │ │ ├── ml │ │ │ ├── keyboard.ftl │ │ │ └── findreplace.ftl │ │ ├── templates │ │ │ ├── keyboard.ftl │ │ │ └── findreplace.ftl │ │ ├── fa │ │ │ ├── undo.ftl │ │ │ ├── filtering.ftl │ │ │ ├── findreplace.ftl │ │ │ └── network.ftl │ │ ├── ca │ │ │ ├── keyboard.ftl │ │ │ ├── filtering.ftl │ │ │ └── findreplace.ftl │ │ ├── hu │ │ │ ├── undo.ftl │ │ │ ├── filtering.ftl │ │ │ ├── empty-cards.ftl │ │ │ ├── search.ftl │ │ │ ├── findreplace.ftl │ │ │ └── network.ftl │ │ └── si │ │ │ └── adding.ftl │ ├── l10n.toml │ └── README.md ├── .gitignore ├── core │ ├── keyboard.ftl │ ├── findreplace.ftl │ └── network.ftl ├── usage │ └── no-deprecate.json ├── README.md ├── update-ankidroid-usage.sh ├── update-ankimobile-usage.sh └── qt │ └── profiles.ftl ├── python ├── requirements.win.in ├── requirements.qt5_14.in ├── requirements.qt5_15.in ├── requirements.base.in ├── requirements.qt6_3.in ├── requirements.qt6_4.in ├── update_win_deps.bat ├── requirements.bundle.in ├── README.md ├── requirements.aqt.in ├── requirements.anki.in └── mkempty.py ├── ts ├── .gitignore ├── lib │ ├── image-import.d.ts │ ├── tsconfig.json │ └── shadow-dom.d.ts ├── card-info │ ├── card-info-base.scss │ └── tsconfig.json ├── graphs │ ├── graphs-base.scss │ └── tsconfig.json ├── sveltelib │ ├── event-predicate.d.ts │ └── tsconfig.json ├── components │ ├── tsconfig.json │ ├── DropdownDivider.svelte │ └── Spacer.svelte ├── congrats │ ├── congrats-base.scss │ └── tsconfig.json ├── html-filter │ └── tsconfig.json ├── mathjax │ └── tsconfig.json ├── tag-editor │ ├── index.ts │ ├── tag-options-button │ │ └── index.ts │ ├── icons.ts │ └── tsconfig.json ├── fields │ ├── FieldsPage.svelte │ └── tsconfig.json ├── editor │ ├── image-overlay │ │ └── index.ts │ ├── mathjax-overlay │ │ └── index.ts │ ├── symbols-overlay │ │ └── index.ts │ └── LabelName.svelte ├── deck-options │ ├── types.ts │ └── tsconfig.json ├── README.md ├── editable │ ├── icons.ts │ ├── index.ts │ └── tsconfig.json ├── domlib │ └── index.ts ├── import-csv │ └── tsconfig.json ├── change-notetype │ └── tsconfig.json ├── reviewer │ └── tsconfig.json └── page.html ├── .config ├── nextest.toml └── hakari.toml ├── tools ├── workspace-hack │ ├── src │ │ └── lib.rs │ ├── build.rs │ └── .gitattributes ├── runopt ├── build ├── build.bat ├── dmypy ├── ts-run ├── ninja.bat ├── run-qt5.14 ├── run-qt5.15 ├── run-qt5.15.bat └── run.py ├── .gitattributes ├── .prettierignore ├── .prettierrc ├── cargo ├── format │ └── rust-toolchain.toml ├── README.md └── update-licenses.sh ├── rust-toolchain.toml ├── .gitignore ├── .buildkite ├── linux │ ├── docker │ │ ├── buildkite.cfg │ │ └── environment │ └── release-entrypoint └── mac │ └── entrypoint ├── run ├── .isort.cfg ├── .rustfmt.toml ├── .cargo └── config.toml ├── sass ├── bootstrap-forms.scss └── night-mode.scss └── .vscode.dist └── extensions.json /.version: -------------------------------------------------------------------------------- 1 | 1.4.0 2 | -------------------------------------------------------------------------------- /proto/.top_level: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /qt/aqt/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.rustfmt-empty.toml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pylib/anki/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /qt/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /qt/aqt/import_export/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /rslib/linkchecker/src/lib.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /pylib/tests/support/fake.png: -------------------------------------------------------------------------------- 1 | abc 2 | -------------------------------------------------------------------------------- /rslib/README.md: -------------------------------------------------------------------------------- 1 | Anki's Rust code. 2 | -------------------------------------------------------------------------------- /ftl/qt-repo/.gitattributes: -------------------------------------------------------------------------------- 1 | *.ftl eol=lf 2 | -------------------------------------------------------------------------------- /pylib/tests/support/text-update.txt: -------------------------------------------------------------------------------- 1 | 1 x 2 | -------------------------------------------------------------------------------- /python/requirements.win.in: -------------------------------------------------------------------------------- 1 | pywin32 2 | 3 | -------------------------------------------------------------------------------- /qt/README.md: -------------------------------------------------------------------------------- 1 | Python's Qt GUI is in aqt/ 2 | -------------------------------------------------------------------------------- /ftl/core-repo/.gitattributes: -------------------------------------------------------------------------------- 1 | *.ftl eol=lf 2 | -------------------------------------------------------------------------------- /proto/.clang-format: -------------------------------------------------------------------------------- 1 | BasedOnStyle: google 2 | -------------------------------------------------------------------------------- /pylib/rsbridge/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | Cargo.lock 3 | -------------------------------------------------------------------------------- /rslib/.gitignore: -------------------------------------------------------------------------------- 1 | Cargo.lock 2 | .build 3 | target 4 | -------------------------------------------------------------------------------- /ts/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | yarn-error.log 3 | -------------------------------------------------------------------------------- /ts/lib/image-import.d.ts: -------------------------------------------------------------------------------- 1 | declare module "*.svg"; 2 | -------------------------------------------------------------------------------- /ftl/.gitignore: -------------------------------------------------------------------------------- 1 | usage/* 2 | !usage/no-deprecate.json 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/et/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-open = Ava 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ms/actions.ftl: -------------------------------------------------------------------------------- 1 | actions-add = Tambah 2 | -------------------------------------------------------------------------------- /ts/card-info/card-info-base.scss: -------------------------------------------------------------------------------- 1 | @import "sass/base"; 2 | -------------------------------------------------------------------------------- /.config/nextest.toml: -------------------------------------------------------------------------------- 1 | [store] 2 | dir = "out/tests/nextest" 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mn/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-open = Нээх 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mr/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-open = उघडा 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/oc/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-open = Dobrir 2 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: [indygreg] 2 | -------------------------------------------------------------------------------- /qt/bundle/mac/dmg/set-dmg-settings.app/Contents/PkgInfo: -------------------------------------------------------------------------------- 1 | APPLaplt -------------------------------------------------------------------------------- /tools/workspace-hack/src/lib.rs: -------------------------------------------------------------------------------- 1 | // This is a stub lib.rs. 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/el/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Λόγω 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/et/fields.ftl: -------------------------------------------------------------------------------- 1 | fields-add-field = Lisa väli 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/fr/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Dû 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ja/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = 期日 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ko/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = 만기 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mr/search.ftl: -------------------------------------------------------------------------------- 1 | search-card-modified = बदलले 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ms/fields.ftl: -------------------------------------------------------------------------------- 1 | fields-add-field = Tambah Field 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sr/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Рок 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/tr/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Vade 3 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/la/addons.ftl: -------------------------------------------------------------------------------- 1 | addons-disabled = (inactivum) 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/bg/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Насрочено 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/da/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = I dag 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/de/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Fällig 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/eo/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Limdato 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/gl/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Obrigadas 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hr/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Obveza 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/it/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Scadenza 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/jbo/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = morji 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/kab/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Tagara 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/la/card-stats.ftl: -------------------------------------------------------------------------------- 1 | card-stats-added = Additum esse 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/la/editing.ftl: -------------------------------------------------------------------------------- 1 | editing-add-media = Adde documentum 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mn/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = { $val }-г тайлах 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mr/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = { $val } मागे घ्या 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nl/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Verwacht 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/oc/custom-study.ftl: -------------------------------------------------------------------------------- 1 | custom-study-cards = cartas 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/oc/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Escasença 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/vi/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Đến hạn 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/zh-CN/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = 到期 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/zh-TW/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = 到期 3 | -------------------------------------------------------------------------------- /ftl/core/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/mr/addons.ftl: -------------------------------------------------------------------------------- 1 | addons-checking = तपासत आहे..... 2 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/th/addons.ftl: -------------------------------------------------------------------------------- 1 | addons-checking = กำลังตรวจสอบ... 2 | -------------------------------------------------------------------------------- /pylib/tests/support/text-tags.txt: -------------------------------------------------------------------------------- 1 | foo bar baz,qux 2 | foo2 bar2 baz2 3 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/pyoxy/tests/yaml/hello-world.stdout: -------------------------------------------------------------------------------- 1 | hello, world 2 | -------------------------------------------------------------------------------- /qt/mac/README.md: -------------------------------------------------------------------------------- 1 | Helper library for macOS-specific functionality. 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/af/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Uitstaande 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/cs/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Ke zkoušení 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/eo/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = Defaŭlta 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/es/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Programadas 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/et/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Võta tagasi { $val } 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/eu/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Zor izanda 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/fi/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Erääntyvät 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hy-AM/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Կրկնելիք 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/kab/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = Amezwer 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nl/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = Standaard 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pl/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Oczekujące 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pt-BR/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = A Revisar 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pt-PT/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = Padrão 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pt-PT/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = A rever 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ro/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Programate 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ru/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = К просмотру 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sk/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Na skúšanie 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sv-SE/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Aktuella 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/th/preferences.ftl: -------------------------------------------------------------------------------- 1 | preferences-backups = สำรองข้อมูล 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/th/search.ftl: -------------------------------------------------------------------------------- 1 | search-card-modified = มีการเปลี่ยนแปลง 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/uk/filtering.ftl: -------------------------------------------------------------------------------- 1 | 2 | filtering-is-due = Очікується 3 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/pyoxy/tests/yaml/shell-shebang.stdout: -------------------------------------------------------------------------------- 1 | hello, world 2 | -------------------------------------------------------------------------------- /qt/icons/README.md: -------------------------------------------------------------------------------- 1 | Source files used to produce some of the svg/png files. 2 | -------------------------------------------------------------------------------- /rslib/src/storage/config/get.sql: -------------------------------------------------------------------------------- 1 | SELECT val 2 | FROM config 3 | WHERE KEY = ? -------------------------------------------------------------------------------- /ftl/core-repo/core/el/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = Προεπιλογή 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/gl/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = Predeterminado 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hy-AM/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = Սկզբնադիր 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nb-NO/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = Standard 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/oc/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = Per defaut 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sk/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = Predvolený 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sr/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = Подразумевано 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sv-SE/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = Standard 2 | -------------------------------------------------------------------------------- /qt/bundle/win/anki-console.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | anki %* 3 | pause 4 | 5 | 6 | -------------------------------------------------------------------------------- /rslib/src/storage/tag/get.sql: -------------------------------------------------------------------------------- 1 | SELECT tag, 2 | usn, 3 | collapsed 4 | FROM tags -------------------------------------------------------------------------------- /ftl/core-repo/core/ar/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/be/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/bg/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = По подразбиране 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/cs/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/da/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/en-GB/browsing.ftl: -------------------------------------------------------------------------------- 1 | browsing-randomize-order = Randomise order 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/es/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/fi/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Vaihto 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/fr/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Tab 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/he/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hr/deck-config.ftl: -------------------------------------------------------------------------------- 1 | deck-config-default-name = Početna vrijednost 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/it/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ko/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/lv/card-templates.ftl: -------------------------------------------------------------------------------- 1 | card-templates-preview-settings = Opcijas 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nb-NO/media.ftl: -------------------------------------------------------------------------------- 1 | media-recordingtime = Opptak...
Tid: { $secs } 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/or/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pl/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ro/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ru/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sk/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Späť { $val } 2 | undo-undo = Späť 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sl/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/th/editing.ftl: -------------------------------------------------------------------------------- 1 | editing-cut = ตัด 2 | editing-fields = ช่องข้อมูล 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/vi/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /tools/runopt: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | RELEASE=1 $(dirname $0)/../run $* 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/de/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Umschalt 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/et/media.ftl: -------------------------------------------------------------------------------- 1 | media-recordingtime = Lindistan...
Kestvus: { $secs } 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ga-IE/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hr/media.ftl: -------------------------------------------------------------------------------- 1 | media-recordingtime = Snimam...
Vrijeme: { $secs } 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ja/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl キー 2 | keyboard-shift = Shift キー 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/kab/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Uɣal { $val } 2 | undo-undo = Err-d 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ml/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = കണ്ട്രോൾ 2 | keyboard-shift = ഷിഫ്റ്റ് 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nb-NO/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Angre { $val } 2 | undo-undo = Angre 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pt-BR/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sv-SE/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Ångra { $val } 2 | undo-undo = Ångra 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/templates/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/zh-CN/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/zh-TW/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Shift 3 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/pyoxy/tests/yaml/hello-world-no-document-end.stdout: -------------------------------------------------------------------------------- 1 | hello, world 2 | -------------------------------------------------------------------------------- /rslib/bench.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | cargo criterion --bench benchmark --features bench 4 | -------------------------------------------------------------------------------- /rslib/src/storage/graves/remove.sql: -------------------------------------------------------------------------------- 1 | DELETE FROM graves 2 | WHERE oid = ? 3 | AND type = ? -------------------------------------------------------------------------------- /rslib/src/storage/note/get_tags.sql: -------------------------------------------------------------------------------- 1 | SELECT id, 2 | mod, 3 | usn, 4 | tags 5 | FROM notes -------------------------------------------------------------------------------- /rslib/src/storage/note/is_orphaned.sql: -------------------------------------------------------------------------------- 1 | SELECT COUNT(id) = 0 2 | FROM cards 3 | WHERE nid = ?; -------------------------------------------------------------------------------- /rslib/src/storage/notetype/get_notetype_names.sql: -------------------------------------------------------------------------------- 1 | SELECT id, 2 | name 3 | FROM notetypes -------------------------------------------------------------------------------- /ftl/core-repo/core/af/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Herroep { $val } 2 | undo-undo = Herroep 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/bg/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Отмяна на { $val } 2 | undo-undo = Отмяна 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/el/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Αναίρεση { $val } 2 | undo-undo = Αναίρεση 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/eo/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = &Malfari { $val }n 2 | undo-undo = Malfari 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/eu/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = { $val } desegin 2 | undo-undo = Desegin 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/fa/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = برگرداندن { $val } 2 | undo-undo = برگرداندن 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/gl/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Desfacer { $val } 2 | undo-undo = Desfacer 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hr/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Poništi { $val } 2 | undo-undo = Poništi 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mn/media.ftl: -------------------------------------------------------------------------------- 1 | media-recordingtime = Дуу хурааж байна...
Цаг: { $secs } 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mr/fields.ftl: -------------------------------------------------------------------------------- 1 | fields-reverse-text-direction-rtl = विपरीत पाठ्य दिशा (RTL) 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/oc/media.ftl: -------------------------------------------------------------------------------- 1 | media-error-executing = Error al moment d'executar { $val }. 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pt-PT/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Anular { $val } 2 | undo-undo = Anular 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sr/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Опозови { $val } 2 | undo-undo = Опозови 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/th/media.ftl: -------------------------------------------------------------------------------- 1 | media-error-executing = เกิดข้อผิดพลาดขณะเรียกใช้ { $val } 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/uk/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Скасувати { $val } 2 | undo-undo = Скасувати 3 | -------------------------------------------------------------------------------- /python/requirements.qt5_14.in: -------------------------------------------------------------------------------- 1 | pyqt5==5.14.1 2 | pyqtwebengine==5.14.0 3 | pyqt5_sip==12.8.1 4 | -------------------------------------------------------------------------------- /python/requirements.qt5_15.in: -------------------------------------------------------------------------------- 1 | pyqt5==5.15.5 2 | pyqtwebengine==5.15.5 3 | pyqt5_sip==12.9.0 4 | -------------------------------------------------------------------------------- /qt/bundle/lin/anki.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/lin/anki.png -------------------------------------------------------------------------------- /ftl/core-repo/core/ca/keyboard.ftl: -------------------------------------------------------------------------------- 1 | keyboard-ctrl = Ctrl 2 | keyboard-shift = Tecla de majúscules 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/da/search.ftl: -------------------------------------------------------------------------------- 1 | search-note-modified = Redigeret 2 | search-card-modified = Ændret 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/gl/search.ftl: -------------------------------------------------------------------------------- 1 | search-note-modified = Editada 2 | search-card-modified = Cambiado 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hu/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Visszavonás: { $val } 2 | undo-undo = Visszavonás 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hy-AM/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = Հետարկել՝ { $val } 2 | undo-undo = Հետարկում 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/kab/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-delete-unused = Kkes ifuyla ur nettwaseqdac ara 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sk/search.ftl: -------------------------------------------------------------------------------- 1 | search-note-modified = Upravené 2 | search-card-modified = Zmenené 3 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/or/errors.ftl: -------------------------------------------------------------------------------- 1 | -errors-support-site = [ସମର୍ଥନ ସାଇଟ୍](https://help.ankiweb.net) 2 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/.hgignore: -------------------------------------------------------------------------------- 1 | syntax: glob 2 | 3 | .idea/ 4 | docs/_build/ 5 | target/ 6 | venv/ 7 | -------------------------------------------------------------------------------- /qt/icons/sidebar.afdesign: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/icons/sidebar.afdesign -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto eol=lf 2 | *.ftl -linguist-detectable 3 | cargo/remote/* linguist-vendored 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/bg/search.ftl: -------------------------------------------------------------------------------- 1 | search-note-modified = Редактирано 2 | search-card-modified = Променено 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/en-GB/database-check.ftl: -------------------------------------------------------------------------------- 1 | database-check-rebuilt = Database rebuilt and optimised. 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/eu/search.ftl: -------------------------------------------------------------------------------- 1 | search-note-modified = Editatua 2 | search-card-modified = Aldatuta 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/fa/filtering.ftl: -------------------------------------------------------------------------------- 1 | # True if a card is due/ready for review 2 | filtering-is-due = مرور 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ja/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = {$total} 件中 {$changed} 件のノートを更新しました 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/kab/search.ftl: -------------------------------------------------------------------------------- 1 | search-note-modified = Ittwaẓreg 2 | search-card-modified = Ibeddel 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ko/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = {$total}개중 {$changed}개 노트를 업데이트 했습니다. 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/la/adding.ftl: -------------------------------------------------------------------------------- 1 | adding-added = Additum esse 2 | adding-note-deleted = (Nota deteta) 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nl/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = { $val } ongedaan maken 2 | undo-undo = Ongedaan maken 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/oc/search.ftl: -------------------------------------------------------------------------------- 1 | search-note-modified = Modificat 2 | search-card-modified = Cambiat 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pt-PT/search.ftl: -------------------------------------------------------------------------------- 1 | search-note-modified = Editado 2 | search-card-modified = Alterado 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sr/search.ftl: -------------------------------------------------------------------------------- 1 | search-note-modified = Измењено 2 | search-card-modified = Измењени 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/zh-CN/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 已更新{ $total }条笔记中的{ $changed }条。 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/zh-TW/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 已更新 { $changed } 則筆記,共 { $total } 則 2 | -------------------------------------------------------------------------------- /qt/bundle/win/anki-icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/win/anki-icon.ico -------------------------------------------------------------------------------- /rslib/src/storage/graves/add.sql: -------------------------------------------------------------------------------- 1 | INSERT 2 | OR IGNORE INTO graves (usn, oid, type) 3 | VALUES (?, ?, ?) -------------------------------------------------------------------------------- /rslib/src/storage/tag/add.sql: -------------------------------------------------------------------------------- 1 | INSERT 2 | OR REPLACE INTO tags (tag, usn, collapsed) 3 | VALUES (?, ?, ?) -------------------------------------------------------------------------------- /tools/build: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | RELEASE=1 ./ninja wheels 5 | echo "wheels are in out/wheels" 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/af/search.ftl: -------------------------------------------------------------------------------- 1 | search-note-modified = Nota Gewysig 2 | search-card-modified = Kaart Gewysig 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ar/filtering.ftl: -------------------------------------------------------------------------------- 1 | # True if a card is due/ready for review 2 | filtering-is-due = مستحقة 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ca/filtering.ftl: -------------------------------------------------------------------------------- 1 | # True if a card is due/ready for review 2 | filtering-is-due = Venciment 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/he/filtering.ftl: -------------------------------------------------------------------------------- 1 | # True if a card is due/ready for review 2 | filtering-is-due = מתוזמן 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hr/search.ftl: -------------------------------------------------------------------------------- 1 | search-note-modified = Promijenjeno 2 | search-card-modified = Promijenjeno 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hu/filtering.ftl: -------------------------------------------------------------------------------- 1 | # True if a card is due/ready for review 2 | filtering-is-due = Esedékes 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/jbo/undo.ftl: -------------------------------------------------------------------------------- 1 | undo-undo-action = xruti fo la'o zoi. { $val } .zoi 2 | undo-undo = xruti 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ms/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = {$changed} of {$total} nota dikemas kini 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/vi/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = Đã cập nhật {$changed} trên {$total} phiếu 2 | -------------------------------------------------------------------------------- /pylib/tests/support/media.apkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/media.apkg -------------------------------------------------------------------------------- /pylib/tests/support/mnemo.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/mnemo.db -------------------------------------------------------------------------------- /qt/aqt/data/qt/icons/anki.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/qt/icons/anki.png -------------------------------------------------------------------------------- /qt/aqt/data/web/imgs/more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/web/imgs/more.png -------------------------------------------------------------------------------- /qt/bundle/mac/dmg/dmg_ds_store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/mac/dmg/dmg_ds_store -------------------------------------------------------------------------------- /qt/bundle/mac/icon/Assets.car: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/mac/icon/Assets.car -------------------------------------------------------------------------------- /rslib/src/storage/config/get_entry.sql: -------------------------------------------------------------------------------- 1 | SELECT val, 2 | usn, 3 | mtime_secs 4 | FROM config 5 | WHERE KEY = ? -------------------------------------------------------------------------------- /rslib/src/storage/notetype/update_fields.sql: -------------------------------------------------------------------------------- 1 | INSERT INTO fields (ntid, ord, name, config) 2 | VALUES (?, ?, ?, ?); -------------------------------------------------------------------------------- /tools/build.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | pushd "%~dp0"\.. 3 | set RELEASE=1 4 | .\ninja wheels || exit /b 1 5 | popd 6 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | licenses.json 2 | vendor 3 | node_modules 4 | bazel-* 5 | .bazel 6 | ftl/usage 7 | .mypy_cache 8 | -------------------------------------------------------------------------------- /ftl/core-repo/core/el/search.ftl: -------------------------------------------------------------------------------- 1 | search-note-modified = Επεξεργάστηκε 2 | search-card-modified = Τροποποιήθηκε 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ga-IE/filtering.ftl: -------------------------------------------------------------------------------- 1 | # True if a card is due/ready for review 2 | filtering-is-due = Le Staidéar 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nb-NO/filtering.ftl: -------------------------------------------------------------------------------- 1 | # True if a card is due/ready for review 2 | filtering-is-due = Forfaller 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/tr/change-notetype.ftl: -------------------------------------------------------------------------------- 1 | change-notetype-collapse = Daralt 2 | change-notetype-expand = Genişlet 3 | -------------------------------------------------------------------------------- /ftl/usage/no-deprecate.json: -------------------------------------------------------------------------------- 1 | [ 2 | "scheduling-update-soon", 3 | "scheduling-update-later-button" 4 | ] 5 | -------------------------------------------------------------------------------- /pylib/tests/support/anki12.anki: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/anki12.anki -------------------------------------------------------------------------------- /pylib/tests/support/update1.apkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/update1.apkg -------------------------------------------------------------------------------- /pylib/tests/support/update2.apkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/update2.apkg -------------------------------------------------------------------------------- /qt/aqt/data/web/imgs/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/web/imgs/favicon.ico -------------------------------------------------------------------------------- /qt/bundle/mac/icon/AppIcon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/mac/icon/AppIcon.icns -------------------------------------------------------------------------------- /rslib/src/storage/note/update_tags.sql: -------------------------------------------------------------------------------- 1 | UPDATE notes 2 | SET mod = ?, 3 | usn = ?, 4 | tags = ? 5 | WHERE id = ? -------------------------------------------------------------------------------- /rslib/src/storage/tag/update.sql: -------------------------------------------------------------------------------- 1 | UPDATE tags 2 | SET tag = ?1, 3 | usn = ?, 4 | collapsed = ? 5 | WHERE tag = ?1 -------------------------------------------------------------------------------- /ftl/README.md: -------------------------------------------------------------------------------- 1 | Files related to Anki's translations. 2 | 3 | Please see https://translating.ankiweb.net/anki/developers 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/el/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-already-exists = Ο φάκελος υπάρχει ήδη. 2 | profiles-open = Άνοιγμα 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hr/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-missing-header = Košisteno na karticama, ali nedostaje u mapi medija: 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/jbo/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = .i mo'u ningau {$changed} lo {$total} karda datni 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/th/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = การบันทึก {$changed} จาก {$total} ได้ปรับปรุงแล้ว 2 | -------------------------------------------------------------------------------- /pylib/tests/support/anki12-due.anki: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/anki12-due.anki -------------------------------------------------------------------------------- /qt/aqt/data/web/imgs/paperclip.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/web/imgs/paperclip.png -------------------------------------------------------------------------------- /qt/aqt/data/web/imgs/text_bold.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/web/imgs/text_bold.png -------------------------------------------------------------------------------- /qt/aqt/data/web/imgs/text_clear.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/web/imgs/text_clear.png -------------------------------------------------------------------------------- /qt/aqt/data/web/imgs/text_cloze.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/web/imgs/text_cloze.png -------------------------------------------------------------------------------- /qt/aqt/data/web/imgs/text_sub.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/web/imgs/text_sub.png -------------------------------------------------------------------------------- /qt/aqt/data/web/imgs/text_super.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/web/imgs/text_super.png -------------------------------------------------------------------------------- /qt/aqt/data/web/imgs/text_under.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/web/imgs/text_under.png -------------------------------------------------------------------------------- /qt/aqt/data/web/js/pycmd.d.ts: -------------------------------------------------------------------------------- 1 | declare function pycmd(cmd: string, result_callback?: (arg: unknown) => void): unknown; 2 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/.editorconfig: -------------------------------------------------------------------------------- 1 | [Makefile] 2 | indent_style = tab 3 | 4 | [Makefile.extra] 5 | indent_style = tab 6 | -------------------------------------------------------------------------------- /qt/bundle/mac/dmg/anki-logo-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/mac/dmg/anki-logo-bg.png -------------------------------------------------------------------------------- /rslib/src/storage/config/add.sql: -------------------------------------------------------------------------------- 1 | INSERT 2 | OR REPLACE INTO config (KEY, usn, mtime_secs, val) 3 | VALUES (?, ?, ?, ?) -------------------------------------------------------------------------------- /rslib/src/storage/deckconfig/get.sql: -------------------------------------------------------------------------------- 1 | SELECT id, 2 | name, 3 | mtime_secs, 4 | usn, 5 | config 6 | FROM deck_config -------------------------------------------------------------------------------- /tools/workspace-hack/build.rs: -------------------------------------------------------------------------------- 1 | // A build script is required for cargo to consider build dependencies. 2 | fn main() {} 3 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "trailingComma": "all", 3 | "printWidth": 88, 4 | "tabWidth": 4, 5 | "semi": true 6 | } 7 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mr/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-missing-header = पत्त्यांवर वापरलेले पण मिडीया संचयीकेतून गायब असलेले: 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/oc/fields.ftl: -------------------------------------------------------------------------------- 1 | fields-add-field = Apondre un camp 2 | fields-field = Camp : 3 | fields-font = Poliça : 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/th/card-templates.ftl: -------------------------------------------------------------------------------- 1 | card-templates-card-count = { $count -> 2 | *[other] { $count } บัตรคำ 3 | } 4 | -------------------------------------------------------------------------------- /pylib/tests/support/anki2-alpha.anki2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/anki2-alpha.anki2 -------------------------------------------------------------------------------- /pylib/tests/support/diffmodels1.anki: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/diffmodels1.anki -------------------------------------------------------------------------------- /pylib/tests/support/diffmodels2.anki: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/diffmodels2.anki -------------------------------------------------------------------------------- /pylib/tests/support/invalid-ords.anki: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/invalid-ords.anki -------------------------------------------------------------------------------- /pylib/tests/support/suspended12.anki: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/suspended12.anki -------------------------------------------------------------------------------- /qt/aqt/data/qt/icons/media-record.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/qt/icons/media-record.png -------------------------------------------------------------------------------- /qt/aqt/data/web/imgs/media-record.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/web/imgs/media-record.png -------------------------------------------------------------------------------- /qt/aqt/data/web/imgs/text_italic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/web/imgs/text_italic.png -------------------------------------------------------------------------------- /rslib/src/storage/deck/get_deck.sql: -------------------------------------------------------------------------------- 1 | SELECT id, 2 | name, 3 | mtime_secs, 4 | usn, 5 | common, 6 | kind 7 | FROM decks -------------------------------------------------------------------------------- /rslib/src/storage/notetype/get_notetype.sql: -------------------------------------------------------------------------------- 1 | SELECT id, 2 | name, 3 | mtime_secs, 4 | usn, 5 | config 6 | FROM notetypes -------------------------------------------------------------------------------- /rslib/src/storage/revlog/v2_upgrade.sql: -------------------------------------------------------------------------------- 1 | UPDATE revlog 2 | SET ease = ease + 1 3 | WHERE ease IN (2, 3) 4 | AND type IN (0, 2); -------------------------------------------------------------------------------- /rslib/tests/support/mediacheck.anki2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/rslib/tests/support/mediacheck.anki2 -------------------------------------------------------------------------------- /ftl/core-repo/core/af/empty-cards.ftl: -------------------------------------------------------------------------------- 1 | empty-cards-card-line = 2 | Leë kaart getalle: {$card-numbers} 3 | Velde: {$fields} 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/et/editing.ftl: -------------------------------------------------------------------------------- 1 | editing-fields = Väljad 2 | editing-html-editor = HTML redaktor 3 | editing-tags = Märksõnad 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/et/sync.ftl: -------------------------------------------------------------------------------- 1 | sync-cancel-button = Loobu 2 | sync-password-label = Salasõna: 3 | sync-connecting = Ühendan... 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/la/custom-study.ftl: -------------------------------------------------------------------------------- 1 | custom-study-cards = cartae 2 | custom-study-cards-from-the-deck = cartae ab pila cartarum 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nl/empty-cards.ftl: -------------------------------------------------------------------------------- 1 | empty-cards-card-line = 2 | Lege kaarten: {$card-numbers} 3 | Velden: {$fields} 4 | -------------------------------------------------------------------------------- /ftl/core-repo/l10n.toml: -------------------------------------------------------------------------------- 1 | basepath = "core" 2 | 3 | [[paths]] 4 | reference = "templates/*.ftl" 5 | l10n = "{locale}/*.ftl" 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/l10n.toml: -------------------------------------------------------------------------------- 1 | basepath = "desktop" 2 | 3 | [[paths]] 4 | reference = "templates/*.ftl" 5 | l10n = "{locale}/*.ftl" 6 | -------------------------------------------------------------------------------- /pylib/tests/support/anki12-broken.anki: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/anki12-broken.anki -------------------------------------------------------------------------------- /pylib/tests/support/diffmodels2-1.apkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/diffmodels2-1.apkg -------------------------------------------------------------------------------- /pylib/tests/support/diffmodels2-2.apkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/diffmodels2-2.apkg -------------------------------------------------------------------------------- /qt/aqt/data/web/imgs/anki-logo-thin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/aqt/data/web/imgs/anki-logo-thin.png -------------------------------------------------------------------------------- /qt/bundle/mac/dmg/set-dmg-settings.scpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/mac/dmg/set-dmg-settings.scpt -------------------------------------------------------------------------------- /rslib/src/storage/notetype/get_fields.sql: -------------------------------------------------------------------------------- 1 | SELECT ord, 2 | name, 3 | config 4 | FROM fields 5 | WHERE ntid = ? 6 | ORDER BY ord -------------------------------------------------------------------------------- /rslib/src/storage/notetype/update_notetype_config.sql: -------------------------------------------------------------------------------- 1 | INSERT 2 | OR REPLACE INTO notetype_config (ntid, config) 3 | VALUES (?, ?) -------------------------------------------------------------------------------- /rslib/src/sync/media/database/server/meta/get_meta.sql: -------------------------------------------------------------------------------- 1 | SELECT last_usn, 2 | total_bytes, 3 | total_nonempty_files 4 | FROM meta; -------------------------------------------------------------------------------- /ts/graphs/graphs-base.scss: -------------------------------------------------------------------------------- 1 | @use "sass/root-vars"; 2 | @import "sass/base"; 3 | 4 | button { 5 | margin-bottom: 5px; 6 | } 7 | -------------------------------------------------------------------------------- /cargo/format/rust-toolchain.toml: -------------------------------------------------------------------------------- 1 | [toolchain] 2 | channel = "nightly-2023-01-24" 3 | profile = "minimal" 4 | components = ["rustfmt"] 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hu/empty-cards.ftl: -------------------------------------------------------------------------------- 1 | empty-cards-card-line = 2 | Üres kártyák száma: {$card-numbers} 3 | Mezők: {$fields} 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mn/adding.ftl: -------------------------------------------------------------------------------- 1 | adding-added = Нэмсэн 2 | adding-close-and-lose-current-input = Хааж одоогийн оруулалтыг хаях уу? 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mn/editing.ftl: -------------------------------------------------------------------------------- 1 | editing-fields = Талбарууд 2 | editing-html-editor = HTML хэлний редактор 3 | editing-tags = Шошгууд 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mn/sync.ftl: -------------------------------------------------------------------------------- 1 | sync-cancel-button = Хүчингүй 2 | sync-password-label = Нууц үг: 3 | sync-connecting = Холбож байна... 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sk/empty-cards.ftl: -------------------------------------------------------------------------------- 1 | empty-cards-card-line = 2 | Čísla prázdnych kariet: {$card-numbers} 3 | Polia: {$fields} 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sr/empty-cards.ftl: -------------------------------------------------------------------------------- 1 | empty-cards-card-line = 2 | Бројеви празних карата: {$card-numbers} 3 | Поља: {$fields} 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sv-SE/empty-cards.ftl: -------------------------------------------------------------------------------- 1 | empty-cards-card-line = 2 | Antal tomma kort: {$card-numbers} 3 | Fält: {$fields} 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/th/sync.ftl: -------------------------------------------------------------------------------- 1 | sync-cancel-button = ยกเลิก 2 | sync-checking = กำลังตรวจสอบ... 3 | sync-connecting = กำลังเชื่อมต่อ... 4 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/th/qt-misc.ftl: -------------------------------------------------------------------------------- 1 | qt-misc-browse = เรียกดู 2 | qt-misc-second = { $count -> 3 | *[other] { $count } วินาที 4 | } 5 | -------------------------------------------------------------------------------- /ftl/update-ankidroid-usage.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | cargo run --bin write_ftl_json ftl/usage/ankidroid.json ~/Local/droid/Anki-Android 4 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/pyoxy/tests/yaml/hello-world.yaml: -------------------------------------------------------------------------------- 1 | --- 2 | interpreter_config: 3 | run_command: 'print("hello, world")' 4 | ... 5 | -------------------------------------------------------------------------------- /rslib/src/storage/card/at_or_above_position.sql: -------------------------------------------------------------------------------- 1 | INSERT INTO search_cids 2 | SELECT id 3 | FROM cards 4 | WHERE due >= ? 5 | AND type = ? -------------------------------------------------------------------------------- /ts/sveltelib/event-predicate.d.ts: -------------------------------------------------------------------------------- 1 | export interface EventPredicateResult { 2 | reason: string; 3 | originalEvent: Event; 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/bg/empty-cards.ftl: -------------------------------------------------------------------------------- 1 | empty-cards-card-line = 2 | Номера на празните карти: {$card-numbers} 3 | Полета: {$fields} 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/eo/empty-cards.ftl: -------------------------------------------------------------------------------- 1 | empty-cards-card-line = 2 | Nombro de malplenaj kartoj: {$card-numbers} 3 | Kampoj: {$fields} 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/et/adding.ftl: -------------------------------------------------------------------------------- 1 | adding-added = Lisatud 2 | adding-close-and-lose-current-input = Sulge ja kaota praegu sisestatud andmed? 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mn/notetypes.ftl: -------------------------------------------------------------------------------- 1 | notetypes-basic-name = Үндсэн 2 | notetypes-add = Нэм: { $val } 3 | notetypes-copy = { $val } хуулах 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/th/decks.ftl: -------------------------------------------------------------------------------- 1 | decks-build = สร้างโปรแกรม 2 | decks-filter = ตัวกรอง: 3 | decks-minutes = นาที 4 | decks-random = สุ่ม 5 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/oc/addons.ftl: -------------------------------------------------------------------------------- 1 | addons-checking = Verificacion en cors... 2 | addons-code = Còdi : 3 | addons-disabled = (desactivat) 4 | -------------------------------------------------------------------------------- /pylib/tests/support/diffmodeltemplates-1.apkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/diffmodeltemplates-1.apkg -------------------------------------------------------------------------------- /pylib/tests/support/diffmodeltemplates-2.apkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/pylib/tests/support/diffmodeltemplates-2.apkg -------------------------------------------------------------------------------- /qt/bundle/qt.exclude: -------------------------------------------------------------------------------- 1 | qml 2 | bindings 3 | uic 4 | lupdate 5 | qsci 6 | *.pyc 7 | *.pyi 8 | *.sip 9 | py.typed 10 | __pycache__ 11 | -------------------------------------------------------------------------------- /qt/bundle/win/anki-manifest.rc: -------------------------------------------------------------------------------- 1 | #define RT_MANIFEST 24 2 | 1 RT_MANIFEST "anki.exe.manifest" 3 | IDI_ICON1 ICON DISCARDABLE "anki-icon.ico" 4 | -------------------------------------------------------------------------------- /rslib/src/storage/deck/cards_for_deck.sql: -------------------------------------------------------------------------------- 1 | SELECT id 2 | FROM cards 3 | WHERE did = ?1 4 | OR ( 5 | odid != 0 6 | AND odid = ?1 7 | ) -------------------------------------------------------------------------------- /rslib/src/storage/deck/missing-decks.sql: -------------------------------------------------------------------------------- 1 | SELECT DISTINCT did 2 | FROM cards 3 | WHERE did NOT IN ( 4 | SELECT id 5 | FROM decks 6 | ); -------------------------------------------------------------------------------- /rslib/src/storage/notetype/update_templates.sql: -------------------------------------------------------------------------------- 1 | INSERT INTO templates (ntid, ord, name, mtime_secs, usn, config) 2 | VALUES (?, ?, ?, ?, ?, ?) -------------------------------------------------------------------------------- /rslib/src/sync/media/database/server/meta/set_meta.sql: -------------------------------------------------------------------------------- 1 | UPDATE meta 2 | SET last_usn = ?, 3 | total_bytes = ?, 4 | total_nonempty_files = ?; -------------------------------------------------------------------------------- /rust-toolchain.toml: -------------------------------------------------------------------------------- 1 | [toolchain] 2 | # older versions may fail to compile; newer versions may fail the clippy tests 3 | channel = "1.66.1" 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/en-GB/scheduling.ftl: -------------------------------------------------------------------------------- 1 | scheduling-buried-cards-were-delayed = Some related or buried cards were delayed for a later session. 2 | -------------------------------------------------------------------------------- /ftl/core-repo/core/et/notetypes.ftl: -------------------------------------------------------------------------------- 1 | notetypes-basic-name = Põhimudel 2 | notetypes-add = Lisa: { $val } 3 | notetypes-copy = { $val } (koopia) 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/eu/empty-cards.ftl: -------------------------------------------------------------------------------- 1 | empty-cards-card-line = 2 | Karta hutsetako zenbakiak : {$card-numbers} 3 | Eremuak : {$fields} 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/gl/empty-cards.ftl: -------------------------------------------------------------------------------- 1 | empty-cards-card-line = 2 | Números das tarxetas baleiras: {$card-numbers} 3 | Campos: {$fields} 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pt-PT/empty-cards.ftl: -------------------------------------------------------------------------------- 1 | empty-cards-card-line = 2 | Números das fichas vazias: {$card-numbers} 3 | Campos: {$fields} 4 | -------------------------------------------------------------------------------- /python/requirements.base.in: -------------------------------------------------------------------------------- 1 | pip-tools 2 | colorama # required on windows 3 | 4 | # anki-code 5 | throttle 6 | Jinja2 7 | psutil 8 | ordered-set 9 | -------------------------------------------------------------------------------- /python/requirements.qt6_3.in: -------------------------------------------------------------------------------- 1 | pyqt6==6.3.1 2 | pyqt6-qt6==6.3.1 3 | pyqt6-webengine==6.3.1 4 | pyqt6-webengine-qt6==6.3.1 5 | pyqt6_sip==13.4.0 6 | -------------------------------------------------------------------------------- /python/requirements.qt6_4.in: -------------------------------------------------------------------------------- 1 | pyqt6==6.4.0 2 | pyqt6-qt6==6.4.2 3 | pyqt6-webengine==6.4.0 4 | pyqt6-webengine-qt6==6.4.2 5 | pyqt6_sip==13.4.0 6 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/pyoxy/tests/yaml/hello-world-no-document-end.yaml: -------------------------------------------------------------------------------- 1 | --- 2 | interpreter_config: 3 | run_command: 'print("hello, world")' 4 | -------------------------------------------------------------------------------- /qt/bundle/mac/icon/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info": { 3 | "author": "xcode", 4 | "version": 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /rslib/src/storage/card/search_cids_setup_ordered.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS search_cids; 2 | CREATE TEMPORARY TABLE search_cids (cid integer NOT NULL); -------------------------------------------------------------------------------- /rslib/src/storage/deckconfig/update.sql: -------------------------------------------------------------------------------- 1 | UPDATE deck_config 2 | SET name = ?, 3 | mtime_secs = ?, 4 | usn = ?, 5 | config = ? 6 | WHERE id = ?; -------------------------------------------------------------------------------- /rslib/src/storage/notetype/add_or_update.sql: -------------------------------------------------------------------------------- 1 | INSERT 2 | OR REPLACE INTO notetypes (id, name, mtime_secs, usn, config) 3 | VALUES (?, ?, ?, ?, ?); -------------------------------------------------------------------------------- /ts/card-info/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*"], 4 | "references": [{ "path": "../lib" }] 5 | } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nb-NO/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = Sjekk internett-tilkoblingen din. 2 | network-details = Feilmeldingsdetaljer: { $details } 3 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/ci/install-rust-linux.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -exo pipefail 4 | 5 | curl https://sh.rustup.rs -sSf | sh -s -- -y 6 | -------------------------------------------------------------------------------- /rslib/src/storage/card/search_cids_setup.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS search_cids; 2 | CREATE TEMPORARY TABLE search_cids (cid integer PRIMARY KEY NOT NULL); -------------------------------------------------------------------------------- /rslib/src/storage/deck/add_or_update_deck.sql: -------------------------------------------------------------------------------- 1 | INSERT 2 | OR REPLACE INTO decks (id, name, mtime_secs, usn, common, kind) 3 | VALUES (?, ?, ?, ?, ?, ?) -------------------------------------------------------------------------------- /rslib/src/storage/deckconfig/add_if_unique.sql: -------------------------------------------------------------------------------- 1 | INSERT 2 | OR IGNORE INTO deck_config (id, name, mtime_secs, usn, config) 3 | VALUES (?, ?, ?, ?, ?); -------------------------------------------------------------------------------- /rslib/src/storage/deckconfig/add_or_update.sql: -------------------------------------------------------------------------------- 1 | INSERT 2 | OR REPLACE INTO deck_config (id, name, mtime_secs, usn, config) 3 | VALUES (?, ?, ?, ?, ?); -------------------------------------------------------------------------------- /rslib/src/storage/note/search_nids_setup.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS search_nids; 2 | CREATE TEMPORARY TABLE search_nids (nid integer PRIMARY KEY NOT NULL); -------------------------------------------------------------------------------- /rslib/src/storage/revlog/studied_today.sql: -------------------------------------------------------------------------------- 1 | SELECT COUNT(), 2 | coalesce(sum(time) / 1000.0, 0.0) 3 | FROM revlog 4 | WHERE id > ? 5 | AND type != ? -------------------------------------------------------------------------------- /rslib/src/sync/media/database/server/entry/get_entry.sql: -------------------------------------------------------------------------------- 1 | SELECT fname, 2 | csum, 3 | size, 4 | usn, 5 | mtime 6 | FROM media 7 | WHERE fname = ?; -------------------------------------------------------------------------------- /rslib/src/sync/media/database/server/entry/set_entry.sql: -------------------------------------------------------------------------------- 1 | INSERT 2 | OR REPLACE INTO media (fname, csum, size, usn, mtime) 3 | VALUES (?, ?, ?, ?, ?); -------------------------------------------------------------------------------- /ftl/core-repo/core/et/card-templates.ftl: -------------------------------------------------------------------------------- 1 | card-templates-card-count = { $count -> 2 | [one] { $count } kaart 3 | *[other] { $count } kaarti 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/la/notetypes.ftl: -------------------------------------------------------------------------------- 1 | notetypes-add = Adde: { $val } 2 | notetypes-add-note-type = Adde genus notae 3 | notetypes-copy = { $val } exemplum 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nb-NO/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-open = Åpne 2 | profiles-profiles = Profiler 3 | profiles-quit = Avslutt 4 | profiles-user-1 = Bruker 1 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/oc/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-window-title = Verificacion dels mèdias 2 | media-check-check-media-action = Verificacion dels mèdias 3 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/pyoxidizer/src/templates/application-manifest.rc.hbs: -------------------------------------------------------------------------------- 1 | #define RT_MANIFEST 24 2 | 1 RT_MANIFEST "{{{ program_name }}}.exe.manifest" 3 | -------------------------------------------------------------------------------- /rslib/src/storage/deck/update_deck.sql: -------------------------------------------------------------------------------- 1 | UPDATE decks 2 | SET name = ?, 3 | mtime_secs = ?, 4 | usn = ?, 5 | common = ?, 6 | kind = ? 7 | WHERE id = ? -------------------------------------------------------------------------------- /ftl/core-repo/core/el/media.ftl: -------------------------------------------------------------------------------- 1 | media-error-executing = Σφάλμα κατά την εκτέλεση του { $val }. 2 | media-error-running = Σφάλμα κατά την εκτέλεση του { $val } 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nb-NO/search.ftl: -------------------------------------------------------------------------------- 1 | search-invalid = Ugyldig søk - sjekk for skrivefeil. 2 | search-note-modified = Endret 3 | search-card-modified = Endret 4 | -------------------------------------------------------------------------------- /rslib/src/notetype/cloze_styling.css: -------------------------------------------------------------------------------- 1 | .cloze { 2 | font-weight: bold; 3 | color: blue; 4 | } 5 | .nightMode .cloze { 6 | color: lightblue; 7 | } 8 | -------------------------------------------------------------------------------- /rslib/src/storage/card/fix_ordinal.sql: -------------------------------------------------------------------------------- 1 | UPDATE cards 2 | SET ord = max(0, min(30000, ord)), 3 | mod = ?1, 4 | usn = ?2 5 | WHERE ord != max(0, min(30000, ord)) -------------------------------------------------------------------------------- /pylib/README.md: -------------------------------------------------------------------------------- 1 | Anki's Python library code is in anki/. 2 | 3 | The Rust/Python extension module is in rsbridge/; it references the library defined in ../rslib. 4 | -------------------------------------------------------------------------------- /python/update_win_deps.bat: -------------------------------------------------------------------------------- 1 | ..\out\pyenv\scripts\pip-compile --resolver=backtracking --allow-unsafe --no-header --strip-extras --generate-hashes requirements.win.in 2 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/pyembed/docs/index.rst: -------------------------------------------------------------------------------- 1 | The ``pyembed`` Rust Crate 2 | ========================== 3 | 4 | .. toctree:: 5 | :maxdepth: 2 6 | 7 | pyembed 8 | -------------------------------------------------------------------------------- /rslib/src/storage/notetype/field_names_for_notes.sql: -------------------------------------------------------------------------------- 1 | SELECT DISTINCT name 2 | FROM fields 3 | WHERE ntid IN ( 4 | SELECT mid 5 | FROM notes 6 | WHERE id IN -------------------------------------------------------------------------------- /rslib/src/storage/notetype/get_templates.sql: -------------------------------------------------------------------------------- 1 | SELECT ord, 2 | name, 3 | mtime_secs, 4 | usn, 5 | config 6 | FROM templates 7 | WHERE ntid = ? 8 | ORDER BY ord -------------------------------------------------------------------------------- /ftl/core-repo/core/hy-AM/empty-cards.ftl: -------------------------------------------------------------------------------- 1 | empty-cards-window-title = Դատարկ քարտեր 2 | empty-cards-delete-button = Ջնջել 3 | empty-cards-not-found = Դատարկ քարտեր չկան: 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ms/adding.ftl: -------------------------------------------------------------------------------- 1 | adding-add-shortcut-ctrlandenter = Tambah (shortcut: Ctrl + Enter) 2 | adding-added = Ditambah 3 | adding-note-deleted = (Nota dipadam) 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/oc/adding.ftl: -------------------------------------------------------------------------------- 1 | adding-add-shortcut-ctrlandenter = Apondre (acorchi :Ctrl+Entrada) 2 | adding-added = Apondut 3 | adding-note-deleted = (Nòta suprimida) 4 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/la/about.ftl: -------------------------------------------------------------------------------- 1 | about-a-big-thanks-to-all-the = Gratias valde omnibus hominibus quae aut propositiones aut defectionium monitiones aut dona misserunt. 2 | -------------------------------------------------------------------------------- /python/requirements.bundle.in: -------------------------------------------------------------------------------- 1 | # currently broken in pyoxidizer 2 | jsonschema<4.2 3 | 4 | -r requirements.base.txt 5 | -r requirements.anki.in 6 | -r requirements.aqt.in -------------------------------------------------------------------------------- /qt/bundle/mac/dmg/set-dmg-settings.app/Contents/MacOS/applet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/mac/dmg/set-dmg-settings.app/Contents/MacOS/applet -------------------------------------------------------------------------------- /qt/tools/runanki.system.in: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | 3 | import sys 4 | 5 | sys.path.append("@PREFIX@/share/anki") 6 | 7 | import aqt 8 | 9 | aqt.run() 10 | -------------------------------------------------------------------------------- /rslib/src/storage/card/new_cards.sql: -------------------------------------------------------------------------------- 1 | SELECT id, 2 | nid, 3 | ord, 4 | cast(mod AS integer), 5 | did, 6 | odid 7 | FROM cards 8 | WHERE did = ? 9 | AND queue = 0 -------------------------------------------------------------------------------- /rslib/src/storage/deck/update_active.sql: -------------------------------------------------------------------------------- 1 | INSERT INTO active_decks 2 | SELECT id 3 | FROM decks 4 | WHERE name = ? 5 | OR ( 6 | name >= ? 7 | AND name < ? 8 | ) -------------------------------------------------------------------------------- /rslib/src/storage/note/get.sql: -------------------------------------------------------------------------------- 1 | SELECT id, 2 | guid, 3 | mid, 4 | mod, 5 | usn, 6 | tags, 7 | flds, 8 | cast(sfld AS text), 9 | csum 10 | FROM notes -------------------------------------------------------------------------------- /ts/lib/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["**/*"], 4 | "compilerOptions": { 5 | "types": ["jest"] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hy-AM/search.ftl: -------------------------------------------------------------------------------- 1 | search-invalid = Անվավեր որոնում. ստուգեք մուտքագրման սխալները 2 | search-note-modified = Խմբագրված 3 | search-card-modified = Փոփոխված 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ms/decks.ftl: -------------------------------------------------------------------------------- 1 | decks-add-new-deck-ctrlandn = Tambah Dek Baru (Ctrl + N) 2 | decks-it-has-card = { $count -> 3 | *[other] Ia ada { $count } kad. 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ms/statistics.ftl: -------------------------------------------------------------------------------- 1 | statistics-cards-per-min = {$cards-per-minute} kad/minit 2 | statistics-cards = {$cards} kad 3 | statistics-reviews = {$reviews} semakan 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nl/search.ftl: -------------------------------------------------------------------------------- 1 | search-invalid = Ongeldige zoekopdracht - controleer op typfouten. 2 | search-note-modified = Bewerkt 3 | search-card-modified = Gewijzigd 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sv-SE/search.ftl: -------------------------------------------------------------------------------- 1 | search-invalid = Ogiltig sökning - kolla om du har skrivit rätt. 2 | search-note-modified = Redigerade 3 | search-card-modified = Ändrade 4 | -------------------------------------------------------------------------------- /rslib/src/storage/notetype/highest_card_ord.sql: -------------------------------------------------------------------------------- 1 | SELECT coalesce(max(ord), 0) 2 | FROM cards 3 | WHERE nid IN ( 4 | SELECT id 5 | FROM notes 6 | WHERE mid = ? 7 | ) -------------------------------------------------------------------------------- /ts/components/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*"], 4 | "references": [{ "path": "../lib" }, { "path": "../sveltelib" }] 5 | } 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/da/addons.ftl: -------------------------------------------------------------------------------- 1 | addons-checking = Kontrollerer... 2 | addons-code = Kode: 3 | addons-install-addon = Installér tilføjelse 4 | addons-invalid-code = Ugyldig kode. 5 | -------------------------------------------------------------------------------- /rslib/src/notetype/styling.css: -------------------------------------------------------------------------------- 1 | .card { 2 | font-family: arial; 3 | font-size: 20px; 4 | text-align: left; 5 | color: black; 6 | background-color: white; 7 | } 8 | -------------------------------------------------------------------------------- /rslib/src/storage/card/fix_ivl.sql: -------------------------------------------------------------------------------- 1 | UPDATE cards 2 | SET ivl = min(max(round(ivl), 0), 2147483647), 3 | mod = ?1, 4 | usn = ?2 5 | WHERE ivl != min(max(round(ivl), 0), 2147483647) -------------------------------------------------------------------------------- /rslib/src/storage/card/search_cards_of_notes_into_table.sql: -------------------------------------------------------------------------------- 1 | INSERT INTO search_cids 2 | SELECT id 3 | FROM cards 4 | WHERE nid IN ( 5 | SELECT nid 6 | FROM search_nids 7 | ) -------------------------------------------------------------------------------- /ftl/core-repo/core/eo/search.ftl: -------------------------------------------------------------------------------- 1 | search-invalid = Nevalida serĉo - bonvolu kontroli, ĉu vi skribis ĉion ĝuste. 2 | search-note-modified = Redaktita 3 | search-card-modified = Ŝanĝita 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/jbo/search.ftl: -------------------------------------------------------------------------------- 1 | search-invalid = .i lo se sisku cu toldra .i ko cipcta lo se samci'a lo se srera 2 | search-note-modified = binxo 3 | search-card-modified = binxo 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ms/editing.ftl: -------------------------------------------------------------------------------- 1 | editing-add-media = Tambah Media 2 | editing-an-error-occurred-while-opening = Masalah terjadi semasa membuka { $val } 3 | editing-cards = Kad-Kad 4 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/el/addons.ftl: -------------------------------------------------------------------------------- 1 | addons-checking = Έλεγχος... 2 | addons-code = Κωδικός: 3 | addons-install-addon = Εγκατάσταση Πρόσθετου 4 | addons-invalid-code = Μη έγκυρος κώδικας. 5 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/hr/addons.ftl: -------------------------------------------------------------------------------- 1 | addons-checking = Provjera u tijeku... 2 | addons-code = Kôd: 3 | addons-install-addon = Instaliraj dodatak 4 | addons-invalid-code = Neispravan kod. 5 | -------------------------------------------------------------------------------- /qt/aqt/colors.py: -------------------------------------------------------------------------------- 1 | # Copyright: Ankitects Pty Ltd and contributors 2 | # License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | from _aqt.colors import * 5 | -------------------------------------------------------------------------------- /qt/aqt/forms/main.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.main_qt6 import * 5 | else: 6 | from _aqt.forms.main_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/pyoxy/docs/index.rst: -------------------------------------------------------------------------------- 1 | ======================= 2 | The PyOxy Python Runner 3 | ======================= 4 | 5 | .. toctree:: 6 | :maxdepth: 2 7 | 8 | pyoxy 9 | -------------------------------------------------------------------------------- /rslib/src/i18n.rs: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | pub use anki_i18n::I18n; 5 | -------------------------------------------------------------------------------- /rslib/src/storage/note/get_without_fields.sql: -------------------------------------------------------------------------------- 1 | SELECT id, 2 | guid, 3 | mid, 4 | mod, 5 | usn, 6 | tags, 7 | "", 8 | cast(sfld AS text), 9 | csum 10 | FROM notes -------------------------------------------------------------------------------- /.config/hakari.toml: -------------------------------------------------------------------------------- 1 | hakari-package = "workspace-hack" 2 | dep-format-version = "2" 3 | resolver = "2" 4 | 5 | [traversal-excludes] 6 | third-party = [ 7 | { name = "reqwest" }, 8 | ] 9 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hu/search.ftl: -------------------------------------------------------------------------------- 1 | search-invalid = Érvénytelen keresés - kérjük, ellenőrizze a gépelési hibákat. 2 | search-note-modified = Szerkesztve 3 | search-card-modified = Módosítva 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/la/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} ex {$total} nota missa 3 | *[other] {$changed} ex {$total} notae missae 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ms/notetypes.ftl: -------------------------------------------------------------------------------- 1 | notetypes-add = Tambah: { $val } 2 | notetypes-add-note-type = Tambah Jenis Nota 3 | notetypes-cards = Kad-Kad... 4 | notetypes-copy = salinan { $val } 5 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/af/addons.ftl: -------------------------------------------------------------------------------- 1 | addons-checking = Besig om na te gaan... 2 | addons-code = Kode: 3 | addons-install-addon = Installeer Byvoeging 4 | addons-invalid-code = Ongeldige kode. 5 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/bg/addons.ftl: -------------------------------------------------------------------------------- 1 | addons-checking = Проверява се... 2 | addons-code = Код: 3 | addons-install-addon = Инсталиране на приставката 4 | addons-invalid-code = Невалиден код. 5 | -------------------------------------------------------------------------------- /qt/aqt/forms/about.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.about_qt6 import * 5 | else: 6 | from _aqt.forms.about_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/addons.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.addons_qt6 import * 5 | else: 6 | from _aqt.forms.addons_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/dconf.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.dconf_qt6 import * 5 | else: 6 | from _aqt.forms.dconf_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/debug.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.debug_qt6 import * 5 | else: 6 | from _aqt.forms.debug_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/fields.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.fields_qt6 import * 5 | else: 6 | from _aqt.forms.fields_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/forget.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.forget_qt6 import * 5 | else: 6 | from _aqt.forms.forget_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/models.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.models_qt6 import * 5 | else: 6 | from _aqt.forms.models_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/stats.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.stats_qt6 import * 5 | else: 6 | from _aqt.forms.stats_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/bundle/mac/dmg/set-dmg-settings.app/Contents/Resources/applet.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/mac/dmg/set-dmg-settings.app/Contents/Resources/applet.icns -------------------------------------------------------------------------------- /qt/bundle/mac/dmg/set-dmg-settings.app/Contents/Resources/applet.rsrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/mac/dmg/set-dmg-settings.app/Contents/Resources/applet.rsrc -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | __pycache__ 2 | .DS_Store 3 | anki.prof 4 | target 5 | /user.bazelrc 6 | .dmypy.json 7 | /.idea/ 8 | /.vscode 9 | /.bazel 10 | /windows.bazelrc 11 | /out 12 | node_modules 13 | -------------------------------------------------------------------------------- /ftl/core-repo/core/it/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} nota su {$total} aggiornata 3 | *[other] {$changed} note su {$total} aggiornate 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/jbo/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = .i ko cipcta lo do te samjo'e 2 | network-other = .i da samjo'e nabmi 3 | network-details = .i tcila pa nabmi fa la'o zoi. { $details } .zoi 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/uk/search.ftl: -------------------------------------------------------------------------------- 1 | search-invalid = Помилка пошуку. Будь ласка, перевірте правильність написання запиту. 2 | search-note-modified = Відредаговано 3 | search-card-modified = Змінено 4 | -------------------------------------------------------------------------------- /pylib/.gitignore: -------------------------------------------------------------------------------- 1 | *.mo 2 | *.pyc 3 | *\# 4 | *~ 5 | .*.swp 6 | .build 7 | .coverage 8 | .DS_Store 9 | .mypy_cache 10 | .pytype 11 | __pycache__ 12 | anki.egg-info 13 | build 14 | dist 15 | -------------------------------------------------------------------------------- /python/README.md: -------------------------------------------------------------------------------- 1 | - To achieve reproducible builds we use pip-tools to lock packages to a particular version - see 2 | update_python_deps.sh 3 | - write_wheel.py is used to generate our wheels. 4 | -------------------------------------------------------------------------------- /qt/aqt/forms/addcards.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.addcards_qt6 import * 5 | else: 6 | from _aqt.forms.addcards_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/addfield.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.addfield_qt6 import * 5 | else: 6 | from _aqt.forms.addfield_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/addmodel.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.addmodel_qt6 import * 5 | else: 6 | from _aqt.forms.addmodel_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/browser.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.browser_qt6 import * 5 | else: 6 | from _aqt.forms.browser_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/edithtml.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.edithtml_qt6 import * 5 | else: 6 | from _aqt.forms.edithtml_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/preview.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.preview_qt6 import * 5 | else: 6 | from _aqt.forms.preview_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/profiles.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.profiles_qt6 import * 5 | else: 6 | from _aqt.forms.profiles_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/progress.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.progress_qt6 import * 5 | else: 6 | from _aqt.forms.progress_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/setgroup.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.setgroup_qt6 import * 5 | else: 6 | from _aqt.forms.setgroup_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/setlang.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.setlang_qt6 import * 5 | else: 6 | from _aqt.forms.setlang_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/synclog.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.synclog_qt6 import * 5 | else: 6 | from _aqt.forms.synclog_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/taglimit.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.taglimit_qt6 import * 5 | else: 6 | from _aqt.forms.taglimit_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/template.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.template_qt6 import * 5 | else: 6 | from _aqt.forms.template_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/widgets.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.widgets_qt6 import * 5 | else: 6 | from _aqt.forms.widgets_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/tugger-code-signing/src/apple-codesign-testuser.p12: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/PyOxidizer/tugger-code-signing/src/apple-codesign-testuser.p12 -------------------------------------------------------------------------------- /qt/bundle/mac/icon/Assets.xcassets/AppIcon.appiconset/round-1024-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/mac/icon/Assets.xcassets/AppIcon.appiconset/round-1024-512.png -------------------------------------------------------------------------------- /rslib/src/storage/note/update.sql: -------------------------------------------------------------------------------- 1 | UPDATE notes 2 | SET guid = ?, 3 | mid = ?, 4 | mod = ?, 5 | usn = ?, 6 | tags = ?, 7 | flds = ?, 8 | sfld = ?, 9 | csum = ? 10 | WHERE id = ? -------------------------------------------------------------------------------- /ftl/core-repo/core/af/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} van {$total} nota opgedateer 3 | *[other] {$changed} van {$total} notas opgedateer 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/bg/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} от {$total} бележка обновена 3 | *[other] {$changed} от {$total} бележки обновени 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/da/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} af {$total} notater opdateret 3 | *[other] {$changed} af {$total} notater opdateret 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/es/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} de {$total} nota actualizada 3 | *[other] {$changed} de {$total} notas actualizadas 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/eu/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$total} oharretik {$changed} eguneratuta 3 | *[other] {$total} oharretik {$changed} eguneratuta 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/gl/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} de {$total} nota actualizada 3 | *[other] {$changed} de {$total} notas actualizadas 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nb-NO/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} av {$total} notat oppdatert 3 | *[other] {$changed} av {$total} notater oppdatert 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pt-BR/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} de {$total} nota atualizada 3 | *[other] {$changed} de {$total} notas atualizadas 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pt-PT/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} de {$total} nota atualizada 3 | *[other] {$changed} de {$total} notas atualizadas 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sv-SE/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} av {$total} not uppdaterad 3 | *[other] {$changed} av {$total} noter uppdaterade 4 | } 5 | -------------------------------------------------------------------------------- /pylib/tests/test_sched2021.py: -------------------------------------------------------------------------------- 1 | # Copyright: Ankitects Pty Ltd and contributors 2 | # License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | from .test_schedv2 import * 5 | -------------------------------------------------------------------------------- /qt/aqt/forms/addonconf.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.addonconf_qt6 import * 5 | else: 6 | from _aqt.forms.addonconf_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/changemap.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.changemap_qt6 import * 5 | else: 6 | from _aqt.forms.changemap_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/editaddon.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.editaddon_qt6 import * 5 | else: 6 | from _aqt.forms.editaddon_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/exporting.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.exporting_qt6 import * 5 | else: 6 | from _aqt.forms.exporting_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/finddupes.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.finddupes_qt6 import * 5 | else: 6 | from _aqt.forms.finddupes_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/getaddons.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.getaddons_qt6 import * 5 | else: 6 | from _aqt.forms.getaddons_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/importing.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.importing_qt6 import * 5 | else: 6 | from _aqt.forms.importing_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/modelopts.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.modelopts_qt6 import * 5 | else: 6 | from _aqt.forms.modelopts_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/studydeck.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.studydeck_qt6 import * 5 | else: 6 | from _aqt.forms.studydeck_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/tugger-code-signing/src/windows-testuser-default.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/PyOxidizer/tugger-code-signing/src/windows-testuser-default.pfx -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/tugger-code-signing/src/windows-testuser-no-extras.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/PyOxidizer/tugger-code-signing/src/windows-testuser-no-extras.pfx -------------------------------------------------------------------------------- /qt/bundle/mac/dmg/set-dmg-settings.app/Contents/Resources/Scripts/main.scpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/bundle/mac/dmg/set-dmg-settings.app/Contents/Resources/Scripts/main.scpt -------------------------------------------------------------------------------- /rslib/src/storage/deck/all_decks_of_search_notes.sql: -------------------------------------------------------------------------------- 1 | SELECT nid, 2 | did 3 | FROM cards 4 | WHERE nid IN ( 5 | SELECT nid 6 | FROM search_nids 7 | ) 8 | GROUP BY nid 9 | HAVING ord = MIN(ord) -------------------------------------------------------------------------------- /rslib/src/storage/revlog/get.sql: -------------------------------------------------------------------------------- 1 | SELECT id, 2 | cid, 3 | usn, 4 | ease, 5 | cast(ivl AS integer), 6 | cast(lastIvl AS integer), 7 | factor, 8 | time, 9 | type 10 | FROM revlog -------------------------------------------------------------------------------- /ts/congrats/congrats-base.scss: -------------------------------------------------------------------------------- 1 | @use "sass/root-vars"; 2 | @import "sass/base"; 3 | 4 | @import "bootstrap/scss/containers"; 5 | 6 | body { 7 | margin-left: 0.5em; 8 | margin-right: 0.5em; 9 | } -------------------------------------------------------------------------------- /ts/html-filter/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*"], 4 | "references": [], 5 | "compilerOptions": { 6 | "types": ["jest"] 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /ts/mathjax/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*"], 4 | "references": [], 5 | "compilerOptions": { 6 | "isolatedModules": false 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /ftl/core-repo/core/de/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} von {$total} Notiz aktualisiert 3 | *[other] {$changed} von {$total} Notizen aktualisiert 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/fr/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} sur {$total} note mise à jour. 3 | *[other] {$changed} sur {$total} notes mises à jour. 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hr/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-already-exists = Mapa već postoji. 2 | profiles-open = Otvori 3 | profiles-profiles = Profili 4 | profiles-quit = Izlaz 5 | profiles-user-1 = Korisnik 1 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hu/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$total} jegyzet közül {$changed} frissítve 3 | *[other] {$total} jegyzet közül {$changed} frissítve 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mr/media.ftl: -------------------------------------------------------------------------------- 1 | media-error-executing = { $val } चालवताना त्रुटी. 2 | media-error-running = { $val } चालू करण्यात दोष 3 | media-recordingtime = ध्वनिमुद्रित करत आहे...
वेळ: { $secs } 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/oc/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} sus {$total} nòta mesa a jorn. 3 | *[other] {$changed} sus {$total} nòtas mesas a jorn. 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 2 | { $total -> 3 | [one] { $changed } of { $total } note updated 4 | *[other] { $changed } of { $total } notes updated 5 | } 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/la/qt-misc.ftl: -------------------------------------------------------------------------------- 1 | qt-misc-please-select-1-card = (Quaeso, electa unam cartam) 2 | qt-misc-second = { $count -> 3 | [one] { $count } seconda 4 | *[other] { $count } secondae 5 | } 6 | -------------------------------------------------------------------------------- /qt/aqt/forms/browserdisp.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.browserdisp_qt6 import * 5 | else: 6 | from _aqt.forms.browserdisp_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/browseropts.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.browseropts_qt6 import * 5 | else: 6 | from _aqt.forms.browseropts_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/changemodel.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.changemodel_qt6 import * 5 | else: 6 | from _aqt.forms.changemodel_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/clayout_top.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.clayout_top_qt6 import * 5 | else: 6 | from _aqt.forms.clayout_top_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/customstudy.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.customstudy_qt6 import * 5 | else: 6 | from _aqt.forms.customstudy_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/editcurrent.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.editcurrent_qt6 import * 5 | else: 6 | from _aqt.forms.editcurrent_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/emptycards.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.emptycards_qt6 import * 5 | else: 6 | from _aqt.forms.emptycards_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/fields_web.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.fields_web_qt6 import * 5 | else: 6 | from _aqt.forms.fields_web_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/findreplace.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.findreplace_qt6 import * 5 | else: 6 | from _aqt.forms.findreplace_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/preferences.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.preferences_qt6 import * 5 | else: 6 | from _aqt.forms.preferences_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/aqt/forms/reposition.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.reposition_qt6 import * 5 | else: 6 | from _aqt.forms.reposition_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/pyoxy/tests/yaml/shell-shebang.yaml: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | "exec" "`dirname $0`/pyoxy" run-yaml "$0" -- "$@" 3 | --- 4 | interpreter_config: 5 | run_command: 'print("hello, world")' 6 | ... 7 | -------------------------------------------------------------------------------- /rslib/src/storage/card/fix_low_ease.sql: -------------------------------------------------------------------------------- 1 | UPDATE cards 2 | SET factor = 2500, 3 | usn = ? 4 | WHERE factor != 0 5 | AND factor <= 2000 6 | AND ( 7 | did IN DECK_IDS 8 | OR odid IN DECK_IDS 9 | ) -------------------------------------------------------------------------------- /rslib/src/storage/notetype/get_use_counts.sql: -------------------------------------------------------------------------------- 1 | SELECT nt.id, 2 | nt.name, 3 | ( 4 | SELECT COUNT(*) 5 | FROM notes n 6 | WHERE nt.id = n.mid 7 | ) 8 | FROM notetypes nt 9 | ORDER BY nt.name -------------------------------------------------------------------------------- /tools/dmypy: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Run mypy in daemon mode for fast checking 4 | 5 | ./ninja pylib/anki qt/aqt 6 | MYPY_CACHE_DIR=out/tests/mypy out/pyenv/bin/dmypy run pylib/anki qt/aqt pylib/tests 7 | -------------------------------------------------------------------------------- /ftl/core-repo/core/el/database-check.ftl: -------------------------------------------------------------------------------- 1 | database-check-corrupt = Η συλλογή είναι κατεστραμμένη. Παρακαλούμε δείτε το manual. 2 | database-check-rebuilt = Η βάση δεδομένων ξαναδημιουργήθηκε και βελτιώθηκε. 3 | -------------------------------------------------------------------------------- /ftl/core-repo/core/el/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} από {$total} σημείωση ενημερώθηκε 3 | *[other] {$changed} από {$total} σημειώσεις ενημερώθηκαν 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/en-GB/editing.ftl: -------------------------------------------------------------------------------- 1 | editing-customize-card-templates-ctrlandl = Customise Card Templates (Ctrl+L) 2 | editing-customize-fields = Customise Fields 3 | editing-mathjax-inline = in-line MathJax 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/eo/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} el {$total} noto estas ĝisdatigita 3 | *[other] {$changed} el {$total} notoj estas ĝisdatigitaj 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/kab/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} seg {$total} n tezmilt tettwalqem 3 | *[other] {$changed} seg {$total} n tezmilin ttwaleqment 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/th/notetypes.ftl: -------------------------------------------------------------------------------- 1 | notetypes-front-field = หน้า 2 | notetypes-back-field = ย้อนกลับ 3 | notetypes-text-field = ข้อความ 4 | notetypes-cards = ไพ่... 5 | notetypes-copy = คัดลอก { $val } รายการ 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/zh-CN/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = 请检查您的网络连接。 2 | network-timeout = 连接超时,请更换网络后重试。 3 | network-proxy-auth = 代理服务器需要身份验证。 4 | network-other = 发生网络错误。 5 | network-details = 错误详情:{ $details } 6 | -------------------------------------------------------------------------------- /qt/aqt/forms/filtered_deck.py: -------------------------------------------------------------------------------- 1 | from aqt.qt import qtmajor 2 | 3 | if qtmajor > 5: 4 | from _aqt.forms.filtered_deck_qt6 import * 5 | else: 6 | from _aqt.forms.filtered_deck_qt5 import * # type: ignore 7 | -------------------------------------------------------------------------------- /qt/bundle/mac/dmg/set-dmg-settings.app/Contents/Resources/description.rtfd/TXT.rtf: -------------------------------------------------------------------------------- 1 | {\rtf1\ansi\ansicpg1252\cocoartf1671 2 | {\fonttbl} 3 | {\colortbl;\red255\green255\blue255;} 4 | {\*\expandedcolortbl;;} 5 | } -------------------------------------------------------------------------------- /ftl/core-repo/core/hy-AM/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$total} գրառումներից {$changed}-ը թարմացվել են 3 | *[other] {$total} գրառումներից {$changed}-ը թարմացվել են 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nl/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} van {$total} aantekening bijgewerkt 3 | *[other] {$changed} van {$total} aantekeningen bijgewerkt 4 | } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/th/actions.ftl: -------------------------------------------------------------------------------- 1 | actions-add = เพิ่ม 2 | actions-cancel = ยกเลิก 3 | actions-close = ปิด 4 | actions-copy = คัดลอก 5 | actions-decks = สำรับ 6 | actions-delete = ลบออก 7 | actions-export = ส่งออก 8 | -------------------------------------------------------------------------------- /pylib/tests/support/text-2fields.txt: -------------------------------------------------------------------------------- 1 | # this is a test file 2 | 食べる to eat 3 | 飲む to drink 4 | テスト test 5 | to eat 食べる 6 | 飲む to drink 7 | 多すぎる too many fields 8 | not, enough, fields 9 | 遊ぶ 10 | to play 11 | -------------------------------------------------------------------------------- /python/requirements.aqt.in: -------------------------------------------------------------------------------- 1 | beautifulsoup4 2 | flask 3 | flask_cors 4 | jsonschema 5 | requests 6 | send2trash 7 | waitress>=2.0.0 8 | psutil; sys.platform == "win32" 9 | pywin32; sys.platform == "win32" 10 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/docs/requirements.in: -------------------------------------------------------------------------------- 1 | sphinx 2 | # We need these to force inclusion on modern Python, where they are optional. 3 | # (RTD runs an older Python 3.) 4 | importlib-metadata 5 | typing-extensions 6 | -------------------------------------------------------------------------------- /rslib/src/sync/media/database/mod.rs: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | pub mod client; 5 | pub mod server; 6 | -------------------------------------------------------------------------------- /ts/congrats/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*"], 4 | "references": [{ "path": "../lib" }], 5 | "compilerOptions": { 6 | "types": ["node"] 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mr/adding.ftl: -------------------------------------------------------------------------------- 1 | adding-add-shortcut-ctrlandenter = जोडा (शोर्टकट: कंट्रोल+एंटर) 2 | adding-added = जोडले 3 | adding-close-and-lose-current-input = बंद करून वर्तमान आदान गमवा? 4 | adding-history = इतिहास 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/si/adding.ftl: -------------------------------------------------------------------------------- 1 | adding-add-shortcut-ctrlandenter = එකතු කරන්න (කෙටි- ctrl+enter) 2 | adding-added = එක් කරන ලදී 3 | adding-close-and-lose-current-input = යෙදවුම වසා දැනට ඇතුලත් කළ දෑ නැති කරගන්නවාද? 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/tr/empty-cards.ftl: -------------------------------------------------------------------------------- 1 | empty-cards-delete-button = Sil 2 | empty-cards-delete-empty-cards = Boş kartları sil 3 | empty-cards-delete-empty-notes = Boş notları sil 4 | empty-cards-deleting = Siliniyor... 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/zh-TW/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = 請檢查你的網際網路連線。 2 | network-timeout = 連線逾時。請使用不同網路再試一次。 3 | network-proxy-auth = 你的代理伺服器需要驗證。 4 | network-other = 發生網路錯誤。 5 | network-details = 錯誤詳細資訊:{ $details } 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/be/errors.ftl: -------------------------------------------------------------------------------- 1 | -errors-support-site = [сайт падтрымкі](https://help.ankiweb.net) 2 | -errors-addon-support-site = [сайт падтрымкі дадатковых кампанентаў](https://help.ankiweb.net/discussions/add-ons/) 3 | -------------------------------------------------------------------------------- /rslib/src/storage/deck/alloc_id.sql: -------------------------------------------------------------------------------- 1 | SELECT CASE 2 | WHEN ?1 IN ( 3 | SELECT id 4 | FROM decks 5 | ) THEN ( 6 | SELECT max(id) + 1 7 | FROM decks 8 | ) 9 | ELSE ?1 10 | END; -------------------------------------------------------------------------------- /rslib/src/storage/tag/alloc_id.sql: -------------------------------------------------------------------------------- 1 | SELECT CASE 2 | WHEN ?1 IN ( 3 | SELECT id 4 | FROM tags 5 | ) THEN ( 6 | SELECT max(id) + 1 7 | FROM tags 8 | ) 9 | ELSE ?1 10 | END; -------------------------------------------------------------------------------- /ts/components/DropdownDivider.svelte: -------------------------------------------------------------------------------- 1 | 5 | 6 | -------------------------------------------------------------------------------- /ts/sveltelib/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*", "position/*"], 4 | "references": [ 5 | { 6 | "path": "../lib" 7 | } 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /.buildkite/linux/docker/buildkite.cfg: -------------------------------------------------------------------------------- 1 | name="lin-ci" 2 | tags="queue=lin-ci" 3 | build-path="/state/build" 4 | hooks-path="/etc/buildkite-agent/hooks" 5 | no-plugins=true 6 | no-local-hooks=true 7 | no-git-submodules=true 8 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mn/actions.ftl: -------------------------------------------------------------------------------- 1 | actions-add = Нэм 2 | actions-cancel = Хүчингүй 3 | actions-close = Хаа 4 | actions-delete = Устга 5 | actions-export = Экспорт 6 | actions-help = Тусламж 7 | actions-import = Импорт хий 8 | -------------------------------------------------------------------------------- /ftl/core-repo/core/templates/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 2 | { $total -> 3 | [one] { $changed } of { $total } note updated 4 | *[other] { $changed } of { $total } notes updated 5 | } 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/zh-CN/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | 所有Anki数据都存放在单个文件夹中以便备份。 3 | 如需更改Anki数据存放至其他位置,请参见: 4 | { $link } 5 | # will appear as 'Downgrade & Quit' 6 | profiles-downgrade-and-quit = 降级并退出 7 | -------------------------------------------------------------------------------- /pylib/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright: Ankitects Pty Ltd and contributors 2 | # License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | from anki.lang import set_lang 5 | 6 | set_lang("en_US") 7 | -------------------------------------------------------------------------------- /python/requirements.anki.in: -------------------------------------------------------------------------------- 1 | beautifulsoup4 2 | decorator 3 | markdown 4 | orjson 5 | protobuf>=4.21 6 | requests[socks] 7 | distro; sys_platform != "darwin" and sys_platform != "win32" 8 | psutil; sys_platform == "win32" 9 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/python-oxidized-importer/docs/index.rst: -------------------------------------------------------------------------------- 1 | The ``oxidized_importer`` Python Extension 2 | ========================================== 3 | 4 | .. toctree:: 5 | :maxdepth: 2 6 | 7 | oxidized_importer 8 | -------------------------------------------------------------------------------- /rslib/i18n_helpers/src/lib.rs: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | pub mod garbage_collection; 5 | pub mod serialize; 6 | -------------------------------------------------------------------------------- /run: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | export PYTHONWARNINGS=default 6 | export PYTHONPYCACHEPREFIX=out/pycache 7 | export ANKIDEV=1 8 | 9 | ./ninja pylib/anki qt/aqt 10 | ./out/pyenv/bin/python tools/run.py $* 11 | -------------------------------------------------------------------------------- /tools/ts-run: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # The pages can be accessed by, eg surfing to 4 | # http://localhost:40000/_anki/pages/deckconfig.html 5 | 6 | QTWEBENGINE_REMOTE_DEBUGGING=8080 ANKI_API_PORT=40000 SOURCEMAP=1 ./run $* 7 | -------------------------------------------------------------------------------- /ts/tag-editor/index.ts: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | export { default as TagEditor } from "./TagEditor.svelte"; 5 | -------------------------------------------------------------------------------- /ftl/update-ankimobile-usage.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script can only be run by Damien, as it requires a copy of AnkiMobile's sources. 3 | 4 | cargo run --bin write_ftl_json ftl/usage/ankimobile.json ../../mobile/ankimobile/src 5 | -------------------------------------------------------------------------------- /python/mkempty.py: -------------------------------------------------------------------------------- 1 | # Copyright: Ankitects Pty Ltd and contributors 2 | # License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | import sys 5 | 6 | open(sys.argv[1], "w", encoding="utf8").close() 7 | -------------------------------------------------------------------------------- /rslib/src/import_export/text/csv/mod.rs: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | mod export; 5 | mod import; 6 | mod metadata; 7 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ca/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 2 | { $total -> 3 | [one] S'ha actualitzat { $changed } nota de { $total } 4 | *[other] S'han actualitzat { $changed } notes de { $total } 5 | } 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/hy-AM/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Այս պանակը պարունակում է Anki-ի բոլոր Ձեր տեղեկությունները, 3 | ավելի արագ պահուստավորելու համար: Այլ պանակ օգտագործելու համար նայեք՝ 4 | 5 | {$link} 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/zh-TW/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | 為了方便備份,Anki 將你所有的資料都儲存在單個資料夾中。若要更改 Anki 資料夾的位置,請參閱: 3 | 4 | { $link } 5 | # will appear as 'Downgrade & Quit' 6 | profiles-downgrade-and-quit = 降級並退出 7 | -------------------------------------------------------------------------------- /qt/mac/ankihelper.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /rslib/src/notetype/header.tex: -------------------------------------------------------------------------------- 1 | \documentclass[12pt]{article} 2 | \special{papersize=3in,5in} 3 | \usepackage[utf8]{inputenc} 4 | \usepackage{amssymb,amsmath} 5 | \pagestyle{empty} 6 | \setlength{\parindent}{0in} 7 | \begin{document} 8 | -------------------------------------------------------------------------------- /tools/ninja.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | set CARGO_TARGET_DIR=%~dp0\..\out\rust 3 | REM separate build+run steps so build env doesn't leak into subprocesses 4 | cargo build -p runner || exit /b 1 5 | out\rust\debug\runner build %* || exit /b 1 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/fa/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 2 | { $total -> 3 | [one] { $changed } کارت از { $total } کارت به‌روزرسانی شد 4 | *[other] { $changed } کارت از { $total } کارت به‌روزرسانی شد 5 | } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/fi/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 2 | { $total -> 3 | [one] { $changed }/{ $total } muistiinpanosta päivitetty. 4 | *[other] { $changed }/{ $total } muistiinpanosta päivitetty. 5 | } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/kab/adding.ftl: -------------------------------------------------------------------------------- 1 | adding-add-shortcut-ctrlandenter = Arbu (anegzum: ctrl+enter) 2 | adding-added = yettwarna 3 | adding-edit = Ẓref "{ $val }" 4 | adding-history = Amazray 5 | adding-note-deleted = (Tazmilt tettwakkes) 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ms/custom-study.ftl: -------------------------------------------------------------------------------- 1 | custom-study-all-cards-in-random-order-dont = Semua kad didalam susunan rawak (jangan jadualkan kembali) 2 | custom-study-all-review-cards-in-random-order = Semua kad kaji semula didalam susunan rawak 3 | -------------------------------------------------------------------------------- /qt/aqt/data/web/css/addonconf.scss: -------------------------------------------------------------------------------- 1 | /* Copyright: Ankitects Pty Ltd and contributors 2 | * License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html */ 3 | 4 | body { 5 | margin: 5px; 6 | font-size: 13px; 7 | } 8 | -------------------------------------------------------------------------------- /rslib/src/storage/card/active_new_cards.sql: -------------------------------------------------------------------------------- 1 | SELECT id, 2 | nid, 3 | ord, 4 | cast(mod AS integer), 5 | did, 6 | odid 7 | FROM cards 8 | WHERE did IN ( 9 | SELECT id 10 | FROM active_decks 11 | ) 12 | AND queue = 0 -------------------------------------------------------------------------------- /rslib/src/sync/media/database/server/entry/changes.sql: -------------------------------------------------------------------------------- 1 | SELECT fname, 2 | usn, 3 | ( 4 | CASE 5 | WHEN size > 0 THEN lower(hex(csum)) 6 | ELSE '' 7 | END 8 | ) 9 | FROM media 10 | WHERE usn > ? 11 | LIMIT 1000 -------------------------------------------------------------------------------- /ts/fields/FieldsPage.svelte: -------------------------------------------------------------------------------- 1 | 5 | 7 | 8 |
Fields
9 | -------------------------------------------------------------------------------- /cargo/README.md: -------------------------------------------------------------------------------- 1 | This folder used to contain Bazel-specific Rust integration, but now only 2 | contains: 3 | 4 | - our license-checking script, which should be run when using cargo update. 5 | - a nightly toolchain definition for formatting 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/et/actions.ftl: -------------------------------------------------------------------------------- 1 | actions-add = Lisa 2 | actions-cancel = Loobu 3 | actions-close = Sulge 4 | actions-delete = Kustuta 5 | actions-export = Eksport 6 | actions-help = Abi 7 | actions-import = Impordi 8 | actions-search = Otsi 9 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ko/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = 인터넷 연결을 확인하십시오. 2 | network-timeout = 접속 시간이 초과되었습니다. 다른 네트워크로 다시 시도하십시오. 3 | network-proxy-auth = 프록시 인증이 필요합니다. 4 | network-other = 네트워크 오류가 발생함. 5 | network-details = 오류 상세 정보: { $details } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ml/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 2 | { $total -> 3 | [one] { $total } കുറിപ്പിൽ { $changed } അപ്‌ഡേറ്റുചെയ്‌തു 4 | *[other] { $total } കുറിപ്പുകളിൽ { $changed } അപ്‌ഡേറ്റുചെയ്‌തു 5 | } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mn/exporting.ftl: -------------------------------------------------------------------------------- 1 | exporting-export = Экспорт... 2 | exporting-export-format = Экспорт формат: 3 | exporting-include-scheduling-information = Төлөвлөлтийн мэдээллийг хамрах 4 | exporting-include-tags = Шошгуудыг оруулах 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/or/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 2 | { $total -> 3 | [one] { $total }ଟି ନୋଟ୍ ମଧ୍ୟରୁ { $changed }ଟିଏ ଅଦ୍ୟତନ ହୋଇଛି 4 | *[other] { $total }ଟି ନୋଟ୍ ମଧ୍ୟରୁ { $changed }ଟି ଅଦ୍ୟତନ ହୋଇଛି 5 | } 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/eo/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Ĉi tiu dosierujo konservas ĉiujn viajn Anki-datumojn ĉe unu loko, 3 | por simple fari sekurkopiojn. Por ke Anki uzu alian lokon, bonvolu vidi: 4 | 5 | {$link} 6 | -------------------------------------------------------------------------------- /qt/bundle/mac/icon/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | xcrun actool --app-icon AppIcon $(pwd)/Assets.xcassets --compile . --platform macosx --minimum-deployment-target 13.0 --target-device mac --output-partial-info-plist /dev/null 6 | -------------------------------------------------------------------------------- /rslib/src/stats/mod.rs: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | mod card; 5 | mod graphs; 6 | mod today; 7 | 8 | pub use today::studied_today; 9 | -------------------------------------------------------------------------------- /rslib/src/storage/upgrades/schema17_upgrade.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE tags; 2 | CREATE TABLE tags ( 3 | tag text NOT NULL PRIMARY KEY COLLATE unicase, 4 | usn integer NOT NULL, 5 | collapsed boolean NOT NULL, 6 | config blob NULL 7 | ) without rowid; -------------------------------------------------------------------------------- /ftl/core-repo/core/jbo/deck-config.ftl: -------------------------------------------------------------------------------- 1 | # Used in the deck configuration screen to show how many decks are used 2 | # by a particular configuration group, eg "Group1 (used by 3 decks)" 3 | deck-config-used-by-decks = .i ckini { $decks } karda selcmi 4 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mr/editing.ftl: -------------------------------------------------------------------------------- 1 | editing-an-error-occurred-while-opening = { $val } उघडण्यात त्रुटी आढळली 2 | editing-cut = कापा 3 | editing-fields = रकाने 4 | editing-html-editor = एचटीएमएल संपादक 5 | editing-latex = लॅटेक 6 | editing-tags = टॅग 7 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ro/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} din {$total} note actualizate 3 | [few] {$changed} din {$total} note actualize 4 | *[other] {$changed} din {$total} note actualize 5 | } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/th/exporting.ftl: -------------------------------------------------------------------------------- 1 | exporting-export = หมดอายุ... 2 | exporting-card-exported = { $count -> 3 | *[other] ส่งออก { $count } บัตรคำ 4 | } 5 | exporting-note-exported = { $count -> 6 | *[other] ส่งออก { $count } โน๊ต 7 | } 8 | -------------------------------------------------------------------------------- /ftl/core-repo/core/tr/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 2 | { $total -> 3 | [one] Toplam { $total } içinden { $changed } not güncellendi. 4 | *[other] Toplam { $total } içinden { $changed } not güncellendi. 5 | } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/be/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = Праверце сваё інтэрнэт-злучэнне. 2 | network-proxy-auth = Ваш проксі патрабуе праверку сапраўднасці. 3 | network-other = Узнікла памылка сеткі. 4 | network-details = Падрабязнасці памылкі: { $details } 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ja/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = インターネット接続を確認してください。 2 | network-timeout = 接続がタイムアウトしました。別のネットワークを使用して再度お試しください。 3 | network-proxy-auth = プロキシの認証が必要です。 4 | network-other = ネットワークのエラーが発生しました。 5 | network-details = エラー詳細:{ $details } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mn/statistics.ftl: -------------------------------------------------------------------------------- 1 | statistics-counts-young-cards = Залуу 2 | statistics-counts-mature-cards = Хуучин нь 3 | statistics-counts-suspended-cards = Түдгэлзсэн 4 | statistics-reviews-title = Давталтууд 5 | statistics-added-title = Нэмсэн 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/sr/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | У овој фасцикли се на једном месту чувају сви ваши подаци за Anki како би се олакшало резервно копирање. Ако желите да Anki користи другу локацију, погледајте:: 3 | 4 | {$link} 5 | -------------------------------------------------------------------------------- /rslib/src/import_export/package/colpkg/mod.rs: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | pub(super) mod export; 5 | pub(super) mod import; 6 | mod tests; 7 | -------------------------------------------------------------------------------- /rslib/src/search/deck_order.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS sort_order; 2 | CREATE TEMPORARY TABLE sort_order ( 3 | pos integer PRIMARY KEY, 4 | did integer NOT NULL UNIQUE 5 | ); 6 | INSERT INTO sort_order (did) 7 | SELECT id 8 | FROM decks 9 | ORDER BY name; -------------------------------------------------------------------------------- /ts/graphs/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*"], 4 | "references": [ 5 | { "path": "../lib" }, 6 | { "path": "../components" }, 7 | { "path": "../sveltelib" } 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /.isort.cfg: -------------------------------------------------------------------------------- 1 | [settings] 2 | ensure_newline_before_comments=true 3 | force_grid_wrap=0 4 | include_trailing_comma=True 5 | known_first_party=anki,aqt,tests 6 | line_length=88 7 | multi_line_output=3 8 | profile=black 9 | skip= 10 | use_parentheses=True 11 | -------------------------------------------------------------------------------- /ftl/core-repo/core/kab/custom-study.ftl: -------------------------------------------------------------------------------- 1 | custom-study-cards = tikaṛḍiwin 2 | custom-study-cards-from-the-deck = tikarḍiwin seg ukemmus 3 | custom-study-custom-study-session = Tiɣimit n tɣuri tudmawant 4 | custom-study-ok = IH 5 | custom-study-select = Fren 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/la/decks.ftl: -------------------------------------------------------------------------------- 1 | decks-add-new-deck-ctrlandn = Adde novam pilam cartarum 2 | decks-minutes = Puncta temporis 3 | decks-it-has-card = { $count -> 4 | [one] Id { $count } cartam habet. 5 | *[other] Id { $count } cartas habet. 6 | } 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/bg/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Тази директория съдържа цялата Anki информация на едно място, 3 | за по-лесно създаване на резервни копия. За използване на друго място, 4 | погледнете тук: 5 | 6 | {$link} 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/hu/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | A biztonsági másolatok könnyebb mentése végett 3 | ebben a mappában egy helyen szerepel minden 4 | Ankival kapcsolatos adat. Más hely beállításához lásd: 5 | 6 | { $link } 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/sv-SE/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Denna mapp sparar all din Anki-data på en plats, 3 | för att underlätta säkerhetskopior. För att säga åt Anki att använda en annan plats, 4 | vänligen se: 5 | 6 | {$link} 7 | -------------------------------------------------------------------------------- /qt/.isort.cfg: -------------------------------------------------------------------------------- 1 | [settings] 2 | ensure_newline_before_comments=true 3 | force_grid_wrap=0 4 | include_trailing_comma=True 5 | known_first_party=anki,aqt 6 | line_length=88 7 | multi_line_output=3 8 | skip=aqt/forms,hooks_gen.py 9 | use_parentheses=True 10 | -------------------------------------------------------------------------------- /qt/mac/ankihelper.xcodeproj/project.xcworkspace/xcuserdata/dae.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daveight/ankicode/HEAD/qt/mac/ankihelper.xcodeproj/project.xcworkspace/xcuserdata/dae.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /tools/run-qt5.14: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | export PYTHONWARNINGS=default 6 | export PYTHONPYCACHEPREFIX=out/pycache 7 | export ANKIDEV=1 8 | 9 | ./ninja pylib/anki qt/aqt pyenv-qt5.14 10 | ./out/pyenv-qt5.14/bin/python tools/run.py $* 11 | -------------------------------------------------------------------------------- /tools/run-qt5.15: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | export PYTHONWARNINGS=default 6 | export PYTHONPYCACHEPREFIX=out/pycache 7 | export ANKIDEV=1 8 | 9 | ./ninja pylib/anki qt/aqt pyenv-qt5.15 10 | ./out/pyenv-qt5.15/bin/python tools/run.py $* 11 | -------------------------------------------------------------------------------- /ts/tag-editor/tag-options-button/index.ts: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | export { default as TagOptionsButton } from "./TagOptionsButton.svelte"; 5 | -------------------------------------------------------------------------------- /.buildkite/mac/entrypoint: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | STATE=$(pwd)/../state/anki-ci 6 | mkdir -p $STATE 7 | 8 | echo "+++ Building and testing" 9 | ln -sf out/node_modules . 10 | BUILD_ROOT=$STATE/build ./ninja pylib/anki qt/aqt wheels check 11 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sr/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} oд {$total} белешке је обновљена 3 | [few] {$changed} oд {$total} белешке су обновљене 4 | *[other] {$changed} oд {$total} бележака је обновљено 5 | } 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/ja/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | このフォルダーは、全ての Anki データを保存する唯一の場所です。これによってバックアップが簡単になります。別の場所を設定するには次の情報をご覧ください: 3 | 4 | { $link } 5 | # will appear as 'Downgrade & Quit' 6 | profiles-downgrade-and-quit = ダウングレード && 終了 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/oc/about.ftl: -------------------------------------------------------------------------------- 1 | about-a-big-thanks-to-all-the = Un grandmercé a totes los qu'an contribuit amb lors suggestions, diagnostics, o dons. 2 | about-about-anki = A prepaus d’Anki 3 | about-visit-website = Visitar lo site internet 4 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/pt-PT/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Esta pasta armazena todos os seus dados Anki em um único local 3 | para facilitar o backup. Se quiser que o Anki use um local diferente, 4 | por favor, veja: 5 | 6 | {$link} 7 | -------------------------------------------------------------------------------- /proto/README.md: -------------------------------------------------------------------------------- 1 | Protobuf files defining the interface the frontend and backend components use to talk to each other, 2 | and how Anki stores some of the data inside its SQLite database. These files are used to generate Rust, 3 | Python and TypeScript bindings. 4 | -------------------------------------------------------------------------------- /rslib/src/search/notetype_order.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS sort_order; 2 | CREATE TEMPORARY TABLE sort_order ( 3 | pos integer PRIMARY KEY, 4 | ntid integer NOT NULL UNIQUE 5 | ); 6 | INSERT INTO sort_order (ntid) 7 | SELECT id 8 | FROM notetypes 9 | ORDER BY name; -------------------------------------------------------------------------------- /rslib/src/storage/note/notes_types_checksums_decks.sql: -------------------------------------------------------------------------------- 1 | SELECT DISTINCT notes.id, 2 | notes.mid, 3 | notes.csum, 4 | CASE 5 | WHEN cards.odid = 0 THEN cards.did 6 | ELSE cards.odid 7 | END AS did 8 | FROM notes 9 | JOIN cards ON notes.id = cards.nid -------------------------------------------------------------------------------- /tools/workspace-hack/.gitattributes: -------------------------------------------------------------------------------- 1 | # Avoid putting conflict markers in the generated Cargo.toml file, since their presence breaks 2 | # Cargo. 3 | # Also do not check out the file as CRLF on Windows, as that's what hakari needs. 4 | Cargo.toml merge=binary -crlf 5 | -------------------------------------------------------------------------------- /ts/editor/image-overlay/index.ts: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | import ImageOverlay from "./ImageOverlay.svelte"; 5 | 6 | export default ImageOverlay; 7 | -------------------------------------------------------------------------------- /ftl/core-repo/core/he/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = בדוק את חיבור האינטרנט שלך. 2 | network-timeout = לא הצליח להתחבר. נסה עם רשת אחרת. 3 | network-proxy-auth = שרת הפרוקסי דורש אימות. 4 | network-other = אירעה שגיאת רשת. 5 | network-details = פרטי השגיאה: { $details } 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/af/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Hierdie gids stoor al van jou Anki data in 'n enkele plek, 3 | om rugsteun kopieë maklik te maak. Om Anki opdrag te gee om 'n ander plek te gebruik, 4 | Sien asb: 5 | 6 | {$link} 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/eu/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Direktorio honek leku bakar batean Ankiren datu guztiak gordetzen ditu, 3 | babes-kopiak errazteko. Beste toki bat erabiltzeko Anki-ri esateko, 4 | mesedez ikusi : 5 | 6 | {$link} 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/ms/about.ftl: -------------------------------------------------------------------------------- 1 | about-a-big-thanks-to-all-the = Sebesar-besar terima kasih bagi semua yang terlibat memberi cadangan, melapor pepijat dan menderma. 2 | about-about-anki = Mengenai Anki 3 | about-visit-website = Lawat laman web 4 | -------------------------------------------------------------------------------- /rslib/src/storage/deck/all_decks_and_original_of_search_cards.sql: -------------------------------------------------------------------------------- 1 | WITH cids AS ( 2 | SELECT cid 3 | FROM search_cids 4 | ) 5 | SELECT did 6 | FROM cards 7 | WHERE id IN cids 8 | UNION 9 | SELECT odid 10 | FROM cards 11 | WHERE odid != 0 12 | AND id IN cids -------------------------------------------------------------------------------- /ts/deck-options/types.ts: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | export type DeckOption = { 5 | title: string; 6 | help?: string; 7 | url?: string; 8 | }; 9 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hr/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} od {$total} bilježaka je aktualizirana 3 | [few] {$changed} od {$total} bilježaka aktualizirano 4 | *[other] {$changed} od {$total} bilježaka aktualizirano 5 | } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/kab/fields.ftl: -------------------------------------------------------------------------------- 1 | fields-add-field = Rnu Urti 2 | fields-delete-field-from = Kkes urti seg { $val }? 3 | fields-field = Urti: 4 | fields-field-name = Isem n wurti: 5 | fields-fields-for = Urtan i { $val } 6 | fields-font = Tasefsit: 7 | fields-size = Teɣzi: 8 | -------------------------------------------------------------------------------- /ftl/core-repo/core/th/card-stats.ftl: -------------------------------------------------------------------------------- 1 | card-stats-interval = ช่วงเวลา 2 | card-stats-review-count = ตรวจทาน 3 | card-stats-total-time = เวลารวม 4 | card-stats-new-card-position = ตำแหน่ง 5 | card-stats-review-log-date = วันที่ 6 | card-stats-review-log-type-review = บทวิจารณ์ 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/hr/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | U ovoj mapi se na jednom mjestu čuvaju svi Vaši podaci za Anki, 3 | kako bi se olakšalo sigurnosno kopiranje. Ako želite da Anki koristi 4 | drugu lokaciju, pogledajte: 5 | 6 | {$link} 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/sk/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | V tomto priečinku sú uložené všetky Vaše Anki dáta na jednom mieste, 3 | aby sa dali jednoducho zálohovať. Ak chcete aby Anki používalo iný priečinok, 4 | pozrite sa sem: 5 | 6 | {$link} 7 | -------------------------------------------------------------------------------- /rslib/src/import_export/package/apkg/mod.rs: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | mod export; 5 | mod import; 6 | mod tests; 7 | 8 | pub(crate) use import::NoteMeta; 9 | -------------------------------------------------------------------------------- /ts/editor/mathjax-overlay/index.ts: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | import MathjaxOverlay from "./MathjaxOverlay.svelte"; 5 | 6 | export default MathjaxOverlay; 7 | -------------------------------------------------------------------------------- /ts/editor/symbols-overlay/index.ts: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | import SymbolsOverlay from "./SymbolsOverlay.svelte"; 5 | 6 | export default SymbolsOverlay; 7 | -------------------------------------------------------------------------------- /.buildkite/linux/docker/environment: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | if [[ "${BUILDKITE_COMMAND}" != ".buildkite/linux/entrypoint" && 4 | "${BUILDKITE_COMMAND}" != ".buildkite/linux/release-entrypoint" ]]; then 5 | echo "Command not allowed: ${BUILDKITE_COMMAND}" 6 | exit 1 7 | fi 8 | -------------------------------------------------------------------------------- /ftl/core-repo/core/af/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-delete-unused-confirm = Skrap ongebruikte media. 2 | media-check-missing-header = Op kaarte gebruik, maar ontbreek in media gids: 3 | media-check-window-title = Gaan Media Na 4 | media-check-check-media-action = Gaan Media Na 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nb-NO/custom-study.ftl: -------------------------------------------------------------------------------- 1 | custom-study-cards = kort 2 | custom-study-cards-from-the-deck = kort fra kortstokken 3 | custom-study-choose-tags = Velg Etiketter 4 | custom-study-new-cards-only = Bare nye kort 5 | custom-study-ok = OK 6 | custom-study-select = Velg 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/da/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Denne mappe lagrer alle dine Anki-data på ét enkelt sted, 3 | så det er nemmere at lave sikkerhedskopier. For at fortælle 4 | Anki at der skal anvendes en anden placering, se: 5 | 6 | {$link} 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/ko/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | 이 폴더는 백업 생성을 쉽게 하기 위해서, 3 | 사용자의 모든 Anki 관련 데이터를 한 곳에 저장합니다. 4 | 다른 위치를 지정하려면 다음을 참고하세요: 5 | 6 | { $link } 7 | # will appear as 'Downgrade & Quit' 8 | profiles-downgrade-and-quit = 다운그레이드 및 종료 9 | -------------------------------------------------------------------------------- /cargo/update-licenses.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | cargo install cargo-license@0.5.1 4 | cargo-license --features rustls --features native-tls --json --manifest-path ../rslib/Cargo.toml >licenses.json 5 | 6 | cargo install cargo-deny@0.13.5 7 | (cd .. && cargo deny check -A duplicate) 8 | -------------------------------------------------------------------------------- /ftl/core-repo/core/la/card-templates.ftl: -------------------------------------------------------------------------------- 1 | card-templates-add-card-type = Adde genus cartae... 2 | card-templates-off = (inactivum) 3 | card-templates-on = (activum) 4 | card-templates-card-count = { $count -> 5 | [one] { $count } carta 6 | *[other] { $count } cartae 7 | } 8 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sk/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-delete-unused-confirm = Odstrániť nevyužité médiá? 2 | media-check-missing-header = Použité v kartách, ale chýba v priečinku s médiami: 3 | media-check-window-title = Kontrola médií 4 | media-check-check-media-action = Kontrola médií 5 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/kab/about.ftl: -------------------------------------------------------------------------------- 1 | about-a-big-thanks-to-all-the = Tanemmirt tameqqrant i yimdanen i d-imudden isumar, tummliwin n yibugen akken tewsa. 2 | about-about-anki = Ɣef anki 3 | about-version = Lqem { $val } 4 | about-visit-website = Rzu ɣer usmel Web 5 | -------------------------------------------------------------------------------- /rslib/src/storage/card/intraday_due.sql: -------------------------------------------------------------------------------- 1 | SELECT id, 2 | nid, 3 | due, 4 | cast(mod AS integer), 5 | did, 6 | odid 7 | FROM cards 8 | WHERE did IN ( 9 | SELECT id 10 | FROM active_decks 11 | ) 12 | AND ( 13 | queue IN (1, 4) 14 | AND due <= ? 15 | ) -------------------------------------------------------------------------------- /ftl/core-repo/core/hr/adding.ftl: -------------------------------------------------------------------------------- 1 | adding-add-shortcut-ctrlandenter = Dodaj (prečac: ctrl+enter) 2 | adding-added = Dodano 3 | adding-close-and-lose-current-input = Zatvori i poništi trenutni unos? 4 | adding-history = Povijest 5 | adding-the-first-field-is-empty = Prvo polje je prazno. 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/gl/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Este cartafol almacena todos os seus datos nunha localización única, 3 | para facilitar as copias de seguranza. Para indicarlle ao Anki que use 4 | una localización diferente, consulte: 5 | 6 | {$link} 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/nl/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | In deze map wordt al uw Anki-data op één locatie opgeslagen, 3 | om het aanmaken van back-ups te vergemakkelijken. Als u Anki 4 | een andere locatie wilt laten gebruiken, kijk dan op: 5 | 6 | {$link} 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/sr/addons.ftl: -------------------------------------------------------------------------------- 1 | addons-checking = Provjeravam... 2 | addons-code = Код: 3 | addons-config = Конфигурација 4 | addons-configuration = Конфигурација 5 | addons-disabled = (искључен) 6 | addons-install-addon = Инсталирање додатака 7 | addons-invalid-code = Недозвољен код. 8 | -------------------------------------------------------------------------------- /rslib/src/search/card_mod_order.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS sort_order; 2 | CREATE TEMPORARY TABLE sort_order ( 3 | pos integer PRIMARY KEY, 4 | nid integer NOT NULL UNIQUE 5 | ); 6 | INSERT INTO sort_order (nid) 7 | SELECT nid 8 | FROM cards 9 | GROUP BY nid 10 | ORDER BY MAX(mod); -------------------------------------------------------------------------------- /ts/fields/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*"], 4 | "references": [ 5 | { "path": "../lib" }, 6 | { "path": "../sveltelib" }, 7 | { "path": "../components" } 8 | ], 9 | "compilerOptions": {} 10 | } 11 | -------------------------------------------------------------------------------- /ts/tag-editor/icons.ts: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | /// 5 | 6 | export { default as deleteIcon } from "bootstrap-icons/icons/x.svg"; 7 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ms/studying.ftl: -------------------------------------------------------------------------------- 1 | studying-again = Lagi Sekali 2 | studying-all-buried-cards = Semua Kad Yang Ditimbus 3 | studying-card-studied-in = { $count -> 4 | *[other] { $count } kad dipelajari dalam 5 | } 6 | studying-minute = { $count -> 7 | *[other] { $count } minit 8 | } 9 | -------------------------------------------------------------------------------- /rslib/src/search/note_cards_order.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS sort_order; 2 | CREATE TEMPORARY TABLE sort_order ( 3 | pos integer PRIMARY KEY, 4 | nid integer NOT NULL UNIQUE 5 | ); 6 | INSERT INTO sort_order (nid) 7 | SELECT nid 8 | FROM cards 9 | GROUP BY nid 10 | ORDER BY COUNT(*); -------------------------------------------------------------------------------- /rslib/src/search/note_lapses_order.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS sort_order; 2 | CREATE TEMPORARY TABLE sort_order ( 3 | pos integer PRIMARY KEY, 4 | nid integer NOT NULL UNIQUE 5 | ); 6 | INSERT INTO sort_order (nid) 7 | SELECT nid 8 | FROM cards 9 | GROUP BY nid 10 | ORDER BY SUM(lapses); -------------------------------------------------------------------------------- /rslib/src/search/note_reps_order.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS sort_order; 2 | CREATE TEMPORARY TABLE sort_order ( 3 | pos integer PRIMARY KEY, 4 | nid integer NOT NULL UNIQUE 5 | ); 6 | INSERT INTO sort_order (nid) 7 | SELECT nid 8 | FROM cards 9 | GROUP BY nid 10 | ORDER BY SUM(reps); -------------------------------------------------------------------------------- /ts/README.md: -------------------------------------------------------------------------------- 1 | Anki's TypeScript and Sass dependencies. Some TS/JS code is also 2 | stored separately in ../qt/aqt/data/web/. 3 | 4 | To update all dependencies: 5 | 6 | ./update.sh 7 | 8 | To add a new dev dependency, use something like: 9 | 10 | ./add.sh -D @rollup/plugin-alias 11 | -------------------------------------------------------------------------------- /ts/editable/icons.ts: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | /// 5 | 6 | export { default as mathIcon } from "@mdi/svg/svg/math-integral-box.svg"; 7 | -------------------------------------------------------------------------------- /ts/lib/shadow-dom.d.ts: -------------------------------------------------------------------------------- 1 | export {}; 2 | 3 | declare global { 4 | interface DocumentOrShadowRoot { 5 | getSelection(): Selection | null; 6 | } 7 | 8 | interface Node { 9 | getRootNode(options?: GetRootNodeOptions): Document | ShadowRoot; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /ftl/core-repo/core/el/adding.ftl: -------------------------------------------------------------------------------- 1 | adding-add-shortcut-ctrlandenter = Προσθήκη (συντόμευση: ctrl+enter) 2 | adding-added = Προστέθηκε 3 | adding-close-and-lose-current-input = Κλείσιμο με απώλεια αλλαγών; 4 | adding-history = Ιστορικό 5 | adding-the-first-field-is-empty = Το πρώτο πεδίο είναι κενό. 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/eu/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-delete-unused-confirm = ez dena erabiltzen media kendu ? 2 | media-check-missing-header = Euskarri direktorian falta den arren kartak erabilitakoa da 3 | media-check-window-title = Egiaztatu Media 4 | media-check-check-media-action = Egiaztatu Media 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pl/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 2 | { $total -> 3 | [one] Zaktualizowano { $changed } z { $total } notatki 4 | [few] Zaktualizowano { $changed } z { $total } notatek 5 | *[other] Zaktualizowano { $changed } z { $total } notatek 6 | } 7 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pt-PT/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-delete-unused-confirm = Eliminar média não utilizada? 2 | media-check-missing-header = Usado(s) em fichas mas em falta na pasta de média: 3 | media-check-window-title = Verificação e Mídia 4 | media-check-check-media-action = Verificação e Mídia 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/tr/errors.ftl: -------------------------------------------------------------------------------- 1 | errors-100-tags-max = 2 | Maksimum 100 etiket seçilebilir. İstediğiniz etiketleri listelemek, 3 | istemediklerinizi listelemekten genellikle daha kolay, ve 4 | üst bir etiket seçerseniz, alt etiketlerini seçmeniz gerekmez. 5 | 6 | ## Card Rendering 7 | 8 | -------------------------------------------------------------------------------- /ftl/core-repo/core/uk/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} з {$total} картки оновлено 3 | [few] {$changed} з {$total} карток оновлено 4 | [many] {$changed} з {$total} карток оновлено 5 | *[other] {$changed} з {$total} карток оновлено 6 | } 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/ar/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | هذه المجلد يحتوي على كل بيانات أنكي الخاصة بك لتسهيل النسخ الاحتياطي. 3 | لاستخدام مجلد مختلف، انظر: 4 | 5 | { $link } 6 | # will appear as 'Downgrade & Quit' 7 | profiles-downgrade-and-quit = تخفيض الإصدار والخروج 8 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/tugger-apple/src/lib.rs: -------------------------------------------------------------------------------- 1 | // This Source Code Form is subject to the terms of the Mozilla Public 2 | // License, v. 2.0. If a copy of the MPL was not distributed with this 3 | // file, You can obtain one at https://mozilla.org/MPL/2.0/. 4 | 5 | mod macho; 6 | pub use macho::*; 7 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/tugger/docs/tugger_starlark_type_resolved_target.rst: -------------------------------------------------------------------------------- 1 | .. py:currentmodule:: starlark_tugger 2 | 3 | ================== 4 | ``ResolvedTarget`` 5 | ================== 6 | 7 | .. py:class:: ResolvedTarget 8 | 9 | Represents a *build* target that has been resolved. 10 | -------------------------------------------------------------------------------- /ts/editable/index.ts: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | import "./editable-base.scss"; 5 | /* only imported for the CSS */ 6 | import "./ContentEditable.svelte"; 7 | import "./Mathjax.svelte"; 8 | -------------------------------------------------------------------------------- /ftl/core-repo/core/et/decks.ftl: -------------------------------------------------------------------------------- 1 | decks-add-new-deck-ctrlandn = Lisa Uus Kaardipakk (Ctrl+N) 2 | decks-are-you-sure-you-wish-to = Oled kindel, et soovid kustutada { $val }? 3 | decks-it-has-card = { $count -> 4 | [one] Selles on { $count } kaart. 5 | *[other] Selles on { $count } kaarti. 6 | } 7 | -------------------------------------------------------------------------------- /pylib/anki/storage.py: -------------------------------------------------------------------------------- 1 | # Copyright: Ankitects Pty Ltd and contributors 2 | # License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | # Legacy code expects to find Collection in this module. 5 | 6 | from anki.collection import Collection 7 | 8 | _Collection = Collection 9 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | docs/_build/ 3 | docs/oxidized_importer* 4 | docs/pyembed* 5 | docs/pyoxidizer* 6 | docs/pyoxy* 7 | docs/tugger* 8 | pyembed/docs/_build/ 9 | python-oxidized-importer/docs/_build/ 10 | target/ 11 | tugger/docs/_build/ 12 | venv/ 13 | wheelhouse/ 14 | 15 | -------------------------------------------------------------------------------- /rslib/src/storage/card/due_cards.sql: -------------------------------------------------------------------------------- 1 | SELECT id, 2 | nid, 3 | due, 4 | cast(ivl AS integer), 5 | cast(mod AS integer), 6 | did, 7 | odid 8 | FROM cards 9 | WHERE did IN ( 10 | SELECT id 11 | FROM active_decks 12 | ) 13 | AND ( 14 | queue = ? 15 | AND due <= ? 16 | ) -------------------------------------------------------------------------------- /tools/run-qt5.15.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | pushd "%~dp0\.." 3 | 4 | set PYTHONWARNINGS=default 5 | set PYTHONPYCACHEPREFIX=out\pycache 6 | set ANKIDEV=1 7 | 8 | call tools\ninja pylib/anki qt/aqt pyenv-qt5.15 || exit /b 1 9 | .\out\pyenv-qt5.15\scripts\python tools\run.py %* || exit /b 1 10 | popd 11 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ar/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = الرجاء التحقق من الاتصال بالإنترنت. 2 | network-timeout = انتهت مدة الاتصال. الرجاء المحاولة على شبكة أخرى. 3 | network-proxy-auth = يتطلب البروكسي الخاص بك المصادقة. 4 | network-other = حدث خطأ في الشبكة. 5 | network-details = تفاصيل الخطأ: { $details } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/el/custom-study.ftl: -------------------------------------------------------------------------------- 1 | custom-study-cards = κάρτες 2 | custom-study-choose-tags = Επιλογή Ετικετών 3 | custom-study-custom-study-session = Προσαγμογή μελέτης συνεδρίας 4 | custom-study-increase-todays-new-card-limit = Αυξήση του σημερινού ορίου νέων καρτών 5 | custom-study-select = Επιλογή 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/gl/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-delete-unused-confirm = Eliminar os ficheiros multimedia non usados? 2 | media-check-missing-header = Faltan no cartafol multimedia mais usanse en tarxetas: 3 | media-check-window-title = Comprobar Medios 4 | media-check-check-media-action = Comprobar Medios 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mn/studying.ftl: -------------------------------------------------------------------------------- 1 | studying-again = Дахиад 2 | studying-bury = Булах 3 | studying-easy = Амархан 4 | studying-edit = Засварла 5 | studying-good = Сайн 6 | studying-hard = Хэцүү 7 | studying-more = Цааш үзэх 8 | studying-show-answer = Хариулт үзүүлэх 9 | studying-suspend = Түдгэлзэх 10 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mr/sync.ftl: -------------------------------------------------------------------------------- 1 | sync-wrong-pass = आन्कीवेब आयडी किंव्हा पासवर्ड चुकीचा होता; पुन्हा प्रयत्न करून बघा. 2 | sync-cancel-button = रद्द करा 3 | sync-checking = तपासत आहे..... 4 | sync-ankiweb-id-label = आन्कीवेब आयडी: 5 | sync-password-label = परवलीचा शब्द: 6 | sync-connecting = जोडणी करत आहे... 7 | -------------------------------------------------------------------------------- /qt/mac/ankihelper.xcodeproj/project.xcworkspace/xcuserdata/dae.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sr/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-delete-unused-confirm = Да избришем некоришћени тип медија датотеке? 2 | media-check-missing-header = Коришћено на картама, али недостаје у фасцикли за слике и звуке: 3 | media-check-window-title = ПрегледМедија 4 | media-check-check-media-action = ПрегледМедија 5 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/tugger-rpm/src/lib.rs: -------------------------------------------------------------------------------- 1 | // This Source Code Form is subject to the terms of the Mozilla Public 2 | // License, v. 2.0. If a copy of the MPL was not distributed with this 3 | // file, You can obtain one at https://mozilla.org/MPL/2.0/. 4 | 5 | mod builder; 6 | 7 | pub use builder::RpmBuilder; 8 | -------------------------------------------------------------------------------- /rslib/src/search/note_ease_order.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS sort_order; 2 | CREATE TEMPORARY TABLE sort_order ( 3 | pos integer PRIMARY KEY, 4 | nid integer NOT NULL UNIQUE 5 | ); 6 | INSERT INTO sort_order (nid) 7 | SELECT nid 8 | FROM cards 9 | WHERE type != 0 10 | GROUP BY nid 11 | ORDER BY AVG(factor); -------------------------------------------------------------------------------- /rslib/src/storage/card/get_card.sql: -------------------------------------------------------------------------------- 1 | SELECT id, 2 | nid, 3 | did, 4 | ord, 5 | cast(mod AS integer), 6 | usn, 7 | type, 8 | queue, 9 | due, 10 | cast(ivl AS integer), 11 | factor, 12 | reps, 13 | lapses, 14 | left, 15 | odue, 16 | odid, 17 | flags, 18 | data 19 | FROM cards -------------------------------------------------------------------------------- /rslib/src/storage/upgrades/schema11_downgrade.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE config; 2 | DROP TABLE deck_config; 3 | DROP TABLE tags; 4 | DROP TABLE fields; 5 | DROP TABLE templates; 6 | DROP TABLE notetypes; 7 | DROP TABLE decks; 8 | DROP INDEX idx_cards_odid; 9 | DROP INDEX idx_notes_mid; 10 | UPDATE col 11 | SET ver = 11; -------------------------------------------------------------------------------- /ftl/core-repo/core/mr/card-stats.ftl: -------------------------------------------------------------------------------- 1 | card-stats-added = जोडले 2 | card-stats-first-review = पहिले पुनरावलोकन 3 | card-stats-average-time = सरासरी वेळ 4 | card-stats-total-time = अकूण वेळ 5 | card-stats-new-card-position = स्थान 6 | card-stats-review-log-date = दिनांक 7 | card-stats-review-log-type-review = समीक्षा 8 | -------------------------------------------------------------------------------- /ftl/qt-repo/README.md: -------------------------------------------------------------------------------- 1 | To add new strings, please make changes to the ftl/ folder in [the computer 2 | version](https://github.com/ankitects/anki), and then submit a PR there - when 3 | your PR is accepted, the strings will be automatically added here. 4 | 5 | More info: https://translating.ankiweb.net/anki/developers 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/it/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Questa cartella contiene tutti i dati di Anki, 3 | per facilitare i backup. Per utilizzare un altro percorso, 4 | leggi: 5 | 6 | { $link } 7 | # will appear as 'Downgrade & Quit' 8 | profiles-downgrade-and-quit = Downgrade && Esci 9 | -------------------------------------------------------------------------------- /rslib/src/search/note_interval_order.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS sort_order; 2 | CREATE TEMPORARY TABLE sort_order ( 3 | pos integer PRIMARY KEY, 4 | nid integer NOT NULL UNIQUE 5 | ); 6 | INSERT INTO sort_order (nid) 7 | SELECT nid 8 | FROM cards 9 | WHERE type IN (2, 3) 10 | GROUP BY nid 11 | ORDER BY AVG(ivl); -------------------------------------------------------------------------------- /ftl/core-repo/README.md: -------------------------------------------------------------------------------- 1 | To add new strings, please make changes to the ftl/ folder in [the computer 2 | version](https://github.com/ankitects/anki), and then submit a PR there - when 3 | your PR is accepted, the strings will be automatically added here. 4 | 5 | More info: https://translating.ankiweb.net/anki/developers 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/cs/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} z {$total} poznámek aktualizována 3 | [few] {$changed} z {$total} poznámek aktualizovány 4 | [many] {$changed} z {$total} poznámek aktualizováno 5 | *[other] {$changed} z {$total} poznámek aktualizováno 6 | } 7 | -------------------------------------------------------------------------------- /ftl/core-repo/core/la/studying.ftl: -------------------------------------------------------------------------------- 1 | studying-again = Rursus 2 | studying-card-studied-in = { $count -> 3 | [one] { $count } carta visa 4 | *[other] { $count } cartae visae 5 | } 6 | studying-minute = { $count -> 7 | [one] { $count } temporis punctum. 8 | *[other] { $count } temporis puncta. 9 | } 10 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nb-NO/adding.ftl: -------------------------------------------------------------------------------- 1 | adding-add-shortcut-ctrlandenter = Legg til (shortcut: ctrl+enter) 2 | adding-added = Lagt til 3 | adding-close-and-lose-current-input = Lukk vinduet og mist ulagret inntasting? 4 | adding-edit = Rediger "{ $val }" 5 | adding-history = Historie 6 | adding-note-deleted = (Notat slettet) 7 | -------------------------------------------------------------------------------- /ftl/core-repo/core/oc/editing.ftl: -------------------------------------------------------------------------------- 1 | editing-add-media = Apondre un Mèdia 2 | editing-an-error-occurred-while-opening = Una error s'es produita almoment de la dobertura de { $val } 3 | editing-cards = Cartas 4 | editing-cut = Talhar 5 | editing-fields = Camps 6 | editing-html-editor = Editor HTML 7 | editing-tags = Etiquetas 8 | -------------------------------------------------------------------------------- /.buildkite/linux/release-entrypoint: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | export PATH="$PATH:/state/rust/cargo/bin" 6 | export BUILD_ROOT=/state/build 7 | export RELEASE=1 8 | ln -sf out/node_modules . 9 | 10 | if [ $(uname -m) = "aarch64" ]; then 11 | ./ninja wheels:anki 12 | else 13 | ./ninja bundle 14 | fi 15 | -------------------------------------------------------------------------------- /ftl/core-repo/core/fa/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = لطفاً اتصال اینترنت خود را بررسی کنید. 2 | network-timeout = اتصال متوقف شد. لطفاً با استفاده از شبکۀ دیگری دوباره امتحان کنید. 3 | network-proxy-auth = پراکسی شما نیاز به احراز هویت دارد. 4 | network-other = خطای شبکه رخ داد. 5 | network-details = مشخصات خطا: { $details } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pl/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = Sprawdź połączenie internetowe 2 | network-timeout = Przekroczono limit czasu połączenia. Spróbuj ponownie z inną siecią. 3 | network-proxy-auth = Twoja proxy wymaga uwierzytelnienia. 4 | network-other = Wystąpił błąd sieci 5 | network-details = Szczegóły błędu: { $details } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sk/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} z {$total} poznámok aktualizovaných 3 | [few] {$changed} z {$total} poznámok aktualizovaná 4 | [many] {$changed} z {$total} poznámok aktualizované 5 | *[other] {$changed} z {$total} poznámok aktualizované 6 | } 7 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sl/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = { $total -> 2 | [one] {$changed} od {$total} zapiskov posodobljenih 3 | [two] {$changed} od {$total} zapiskov posodobljenih 4 | [few] {$changed} od {$total} zapiskov posodobljenih 5 | *[other] {$changed} od {$total} zapiskov posodobljenih 6 | } 7 | -------------------------------------------------------------------------------- /ftl/core-repo/core/sv-SE/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-delete-unused = Ta bort oanvända filer 2 | media-check-delete-unused-confirm = Ta bort oanvända media? 3 | media-check-missing-header = Används på kort men saknas i mediamappen: 4 | media-check-window-title = Granska media 5 | media-check-check-media-action = Granska media 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/jbo/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | {"."}i ti datnyveimei ro datni pe la .ankis. te zu'e lo nu frili fa lo nu 3 | zbasu lo nurfu'i .i lo'e djica be lo nu la .ankis. cu pilno lo drata 4 | datnyveimei cu vitke lo se veirjudri be la'o zoi. 5 | 6 | {$link} 7 | 8 | {"."}zoi 9 | -------------------------------------------------------------------------------- /ftl/qt/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | This folder stores all of your Anki data in a single location, 3 | to make backups easy. To tell Anki to use a different location, 4 | please see: 5 | 6 | { $link } 7 | # will appear as 'Downgrade & Quit' 8 | profiles-downgrade-and-quit = Downgrade && Quit 9 | -------------------------------------------------------------------------------- /ts/domlib/index.ts: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | export * from "./content-editable"; 5 | export * from "./location"; 6 | export * from "./move-nodes"; 7 | export * from "./place-caret"; 8 | export * from "./surround"; 9 | -------------------------------------------------------------------------------- /.rustfmt.toml: -------------------------------------------------------------------------------- 1 | # These settings are not supported on stable Rust, and are ignored by the ninja 2 | # build script - to use them you need to run 'cargo +nightly fmt' 3 | group_imports = "StdExternalCrate" 4 | imports_granularity = "Item" 5 | imports_layout = "Vertical" 6 | wrap_comments = true 7 | ignore = ["ascii_percent_encoding"] 8 | -------------------------------------------------------------------------------- /ftl/core-repo/core/pt-BR/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = Por favor, verifique sua conexão à internet. 2 | network-timeout = A conexão expirou. Tente novamente em uma rede diferente. 3 | network-proxy-auth = Seu proxy requer autenticação. 4 | network-other = Ocorreu um erro de rede. 5 | network-details = Detalhes do erro: { $details } 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/en-GB/about.ftl: -------------------------------------------------------------------------------- 1 | about-a-big-thanks-to-all-the = A big thanks to all the people who have provided suggestions, bug reports, translations and donations. 2 | about-anki-is-licensed-under-the-agpl3 = Anki is licenced under the AGPL3 licence. Please see the licence file in the source distribution for more information. 3 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/he/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | תיקייה זאת מאכסנת את כל נתוני Anki במקום אחד, 3 | וזאת כדי להפוך את הגיבוי לקל ביותר. בכדי להגדיר לתוכנה להשתמש במיקום אחר, 4 | ראה: 5 | 6 | { $link } 7 | # will appear as 'Downgrade & Quit' 8 | profiles-downgrade-and-quit = צא וחזור לגירסה קודמת 9 | -------------------------------------------------------------------------------- /qt/aqt/data/web/css/toolbar-bottom.scss: -------------------------------------------------------------------------------- 1 | /* Copyright: Ankitects Pty Ltd and contributors 2 | * License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html */ 3 | 4 | body { 5 | overflow: hidden; 6 | } 7 | 8 | #header { 9 | border-bottom: 0; 10 | margin-top: 0; 11 | padding: 9px; 12 | } 13 | -------------------------------------------------------------------------------- /ts/deck-options/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*"], 4 | "references": [ 5 | { "path": "@tslib" }, 6 | { "path": "../sveltelib" }, 7 | { "path": "../components" } 8 | ], 9 | "compilerOptions": { 10 | "types": ["jest"] 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ts/editable/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*"], 4 | "references": [ 5 | { "path": "../components" }, 6 | { "path": "../lib" }, 7 | { "path": "../domlib" }, 8 | { "path": "../sveltelib" }, 9 | { "path": "../mathjax" } 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /ts/import-csv/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*"], 4 | "references": [ 5 | { "path": "../lib" }, 6 | { "path": "../sveltelib" }, 7 | { "path": "../components" } 8 | ], 9 | "compilerOptions": { 10 | "types": ["jest"] 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ftl/core-repo/core/bg/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-delete-unused-confirm = Изтриване на неизползваните медийни файлове? 2 | media-check-missing-header = Използвани в картите, но липсващи в медийната директория: 3 | media-check-window-title = Проверка на медийните файлове 4 | media-check-check-media-action = Проверка на медийните файлове 5 | -------------------------------------------------------------------------------- /ftl/core-repo/core/it/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = Controlla la tua connessione internet. 2 | network-timeout = Connessione scaduta. Riprova su una rete diversa. 3 | network-proxy-auth = Il tuo proxy richiede l'autenticazione. 4 | network-other = Si è verificato un errore di rete. 5 | network-details = Dettagli dell'errore: { $details } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ru/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = Проверьте интернет-соединение. 2 | network-timeout = Время ожидания подключения истекло. Попробуйте подключиться через другую сеть. 3 | network-proxy-auth = Ваш прокси требует аутентификацию. 4 | network-other = Произошла сетевая ошибка. 5 | network-details = Об ошибке: { $details } 6 | -------------------------------------------------------------------------------- /rslib/src/search/template_order.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS sort_order; 2 | CREATE TEMPORARY TABLE sort_order ( 3 | pos integer PRIMARY KEY, 4 | ntid integer NOT NULL, 5 | ord integer NOT NULL, 6 | UNIQUE(ntid, ord) 7 | ); 8 | INSERT INTO sort_order (ntid, ord) 9 | SELECT ntid, 10 | ord 11 | FROM templates 12 | ORDER BY name -------------------------------------------------------------------------------- /tools/run.py: -------------------------------------------------------------------------------- 1 | # Copyright: Ankitects Pty Ltd and contributors 2 | # License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | import os 5 | import sys 6 | 7 | sys.path.extend(["pylib", "qt", "out/pylib", "out/qt"]) 8 | 9 | import aqt 10 | 11 | if not os.environ.get("SKIP_RUN"): 12 | aqt.run() 13 | -------------------------------------------------------------------------------- /ts/change-notetype/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*"], 4 | "references": [ 5 | { "path": "../lib" }, 6 | { "path": "../sveltelib" }, 7 | { "path": "../components" } 8 | ], 9 | "compilerOptions": { 10 | "types": ["jest"] 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ts/reviewer/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*"], 4 | // "references": [{ "path": "../lib" }], 5 | "compilerOptions": { 6 | // css-browser-selector fails if our output bundle is strict 7 | "alwaysStrict": false, 8 | "composite": false 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /.cargo/config.toml: -------------------------------------------------------------------------------- 1 | [env] 2 | STRINGS_JSON = { value = "out/rslib/i18n/strings.json", relative = true } 3 | # build script will append .exe if necessary 4 | PROTOC = { value = "out/extracted/protoc/bin/protoc", relative = true } 5 | PYO3_NO_PYTHON = "1" 6 | MACOSX_DEPLOYMENT_TARGET = "10.13.4" 7 | 8 | [term] 9 | color = "always" 10 | -------------------------------------------------------------------------------- /ftl/core-repo/core/he/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 2 | { $total -> 3 | [one] { $changed } מתוך { $total } רשומה עודכנה 4 | [two] { $changed } מתוך { $total } רשומות עודכנו 5 | [many] { $changed } מתוך { $total } רשומות עודכנו 6 | *[other] { $changed } מתוך { $total } רשומות עודכנו 7 | } 8 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/ga-IE/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Ar mhaithe le cúltacú a bheith indéanta, cuirtear sonraí go 3 | léir de chuid Anki san fhillteán seo. Chun fillteán eile a oibriú, 4 | féach: 5 | 6 | { $link } 7 | # will appear as 'Downgrade & Quit' 8 | profiles-downgrade-and-quit = Íosghrádú && Scoir 9 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/vi/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Thư mục này lưu trữ tất cả dữ liệu Anki vào một vị trí duy nhất, 3 | để dễ sao lưu. Nếu muốn Anki dùng một vị trí khác, 4 | xin vui lòng tham khảo: 5 | 6 | { $link } 7 | # will appear as 'Downgrade & Quit' 8 | profiles-downgrade-and-quit = Hạ cấp && Thoát 9 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/tugger-common/src/lib.rs: -------------------------------------------------------------------------------- 1 | // This Source Code Form is subject to the terms of the Mozilla Public 2 | // License, v. 2.0. If a copy of the MPL was not distributed with this 3 | // file, You can obtain one at https://mozilla.org/MPL/2.0/. 4 | 5 | pub mod glob; 6 | pub mod http; 7 | pub mod testutil; 8 | pub mod zipfile; 9 | -------------------------------------------------------------------------------- /ts/components/Spacer.svelte: -------------------------------------------------------------------------------- 1 | 5 |
6 | 7 | 13 | -------------------------------------------------------------------------------- /ts/page.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ftl/core-repo/core/be/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 2 | { $total -> 3 | [one] { $changed } з { $total } нататак абноўлена 4 | [few] { $changed } з { $total } нататак абноўлены 5 | [many] { $changed } з { $total } нататак абноўлена 6 | *[other] { $changed } з { $total } нататак абноўлена 7 | } 8 | -------------------------------------------------------------------------------- /ftl/core-repo/core/et/card-stats.ftl: -------------------------------------------------------------------------------- 1 | card-stats-added = Lisatud 2 | card-stats-first-review = Esimene õppimine 3 | card-stats-ease = Kergus 4 | card-stats-review-count = Kordamised 5 | card-stats-lapse-count = Ajavahemik 6 | card-stats-average-time = Keskmine aeg 7 | card-stats-total-time = Aeg kokku 8 | card-stats-review-log-type-review = Korda 9 | -------------------------------------------------------------------------------- /ftl/core-repo/core/hu/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = Ellenőrizze internetkapcsolatát. 2 | network-timeout = Időtúllépés. Próbálkozzon újra, vagy csatlakozzon egy másik hálózathoz. 3 | network-proxy-auth = Az Ön kiszolgálója (proxyja) hitelesítést igényel. 4 | network-other = Hálózati hiba történt. 5 | network-details = Hiba részletei: { $details } 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/pl/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | W tym katalogu przechowywane są wszystkie dane programu Anki, 3 | aby łatwo tworzyć kopie zapasowe. Żeby zmienić lokalizację plików, 4 | zobacz: 5 | 6 | { $link } 7 | # will appear as 'Downgrade & Quit' 8 | profiles-downgrade-and-quit = Obniż wersję && wyjdź 9 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/templates/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | This folder stores all of your Anki data in a single location, 3 | to make backups easy. To tell Anki to use a different location, 4 | please see: 5 | 6 | { $link } 7 | # will appear as 'Downgrade & Quit' 8 | profiles-downgrade-and-quit = Downgrade && Quit 9 | -------------------------------------------------------------------------------- /qt/aqt/props.py: -------------------------------------------------------------------------------- 1 | # Copyright: Ankitects Pty Ltd and contributors 2 | # License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | """ 5 | See pylib/anki/hooks.py 6 | """ 7 | 8 | from __future__ import annotations 9 | 10 | # You can find the definitions in ../tools/genhooks_gui.py 11 | from _aqt.props import * 12 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mn/card-stats.ftl: -------------------------------------------------------------------------------- 1 | card-stats-added = Нэмсэн 2 | card-stats-first-review = Эхлэхийн давталт 3 | card-stats-ease = Амрын түвшин 4 | card-stats-review-count = Давталтууд 5 | card-stats-lapse-count = Цаг алдалт 6 | card-stats-average-time = Цагийн дундаж 7 | card-stats-total-time = Нийт цаг 8 | card-stats-review-log-type-review = Давталт 9 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nb-NO/card-template-rendering.ftl: -------------------------------------------------------------------------------- 1 | ### These messages are shown on the review screen, preview screen, and 2 | ### card template screen when the user has made a mistake in their card 3 | ### template, or the front of the card is empty. 4 | 5 | # Label of link users can click on 6 | card-template-rendering-more-info = Mer informasjon 7 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nb-NO/fields.ftl: -------------------------------------------------------------------------------- 1 | fields-add-field = Legg til felt 2 | fields-delete-field-from = Slette felt fra { $val }? 3 | fields-editing-font = Endre skrifttype 4 | fields-field = Felt: 5 | fields-field-name = Feltnavn: 6 | fields-fields-for = Felter for { $val } 7 | fields-font = Skrift: 8 | fields-new-position-1 = Ny posisjon (1...{ $val }): 9 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ru/findreplace.ftl: -------------------------------------------------------------------------------- 1 | findreplace-notes-updated = 2 | { $total -> 3 | [one] { $changed } из { $total } записей обновлена 4 | [few] { $changed } из { $total } записей обновлены 5 | [many] { $changed } из { $total } записей обновлены 6 | *[other] { $changed } из { $total } записей обновлены 7 | } 8 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/pt-BR/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Esta pasta armazena todos os seus dados Anki em um único local 3 | para facilitar o backup. Se quiser que o Anki use um local diferente, 4 | por favor, veja: 5 | 6 | { $link } 7 | # will appear as 'Downgrade & Quit' 8 | profiles-downgrade-and-quit = Rebaixar e Sair 9 | -------------------------------------------------------------------------------- /qt/aqt/gui_hooks.py: -------------------------------------------------------------------------------- 1 | # Copyright: Ankitects Pty Ltd and contributors 2 | # License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | """ 5 | See pylib/anki/hooks.py 6 | """ 7 | 8 | from __future__ import annotations 9 | 10 | # You can find the definitions in ../tools/genhooks_gui.py 11 | from _aqt.hooks import * 12 | -------------------------------------------------------------------------------- /qt/mac/ankihelper.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /rslib/src/storage/card/update_card.sql: -------------------------------------------------------------------------------- 1 | UPDATE cards 2 | SET nid = ?, 3 | did = ?, 4 | ord = ?, 5 | mod = ?, 6 | usn = ?, 7 | type = ?, 8 | queue = ?, 9 | due = ?, 10 | ivl = ?, 11 | factor = ?, 12 | reps = ?, 13 | lapses = ?, 14 | left = ?, 15 | odue = ?, 16 | odid = ?, 17 | flags = ?, 18 | data = ? 19 | WHERE id = ? -------------------------------------------------------------------------------- /ts/editor/LabelName.svelte: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | 15 | -------------------------------------------------------------------------------- /ftl/core-repo/core/bg/adding.ftl: -------------------------------------------------------------------------------- 1 | adding-add-shortcut-ctrlandenter = Добавяне (пряк път: Ctrl+Enter) 2 | adding-added = Добавени 3 | adding-close-and-lose-current-input = При затваряне досега въведеният текст ще се загуби! 4 | adding-history = Хронология 5 | adding-shortcut = Пряк път: { $val } 6 | adding-the-first-field-is-empty = Първото поле е празно. 7 | -------------------------------------------------------------------------------- /ftl/core-repo/core/ja/help.ftl: -------------------------------------------------------------------------------- 1 | ### Text shown in Help pages 2 | 3 | 4 | ## Header 5 | 6 | # Tooltip for links to the manual 7 | help-open-manual-chapter = マニュアルの「{ $name }」の項目を読む 8 | 9 | ## Body 10 | 11 | 12 | ## Footer 13 | 14 | # Link to more detailed information in the manual 15 | help-for-more-info = 詳細は、マニュアルの { $link } の項目をご参照ください。 16 | -------------------------------------------------------------------------------- /ftl/core-repo/core/nl/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-delete-unused = Ongebruikte bestanden verwijderen 2 | media-check-delete-unused-confirm = Ongebruikte media verwijderen? 3 | media-check-missing-header = Gebruikt in kaarten maar niet gevonden in media-map: 4 | media-check-window-title = Controleer media 5 | media-check-check-media-action = Controleer media 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/uk/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = Будь ласка, перевірте Ваше інтернет з'єднання. 2 | network-timeout = Час на з'єднання вийшов. Будь ласка, під'єднайтесь до іншої мережі. 3 | network-proxy-auth = Ваш проксі потребує автентифікації. 4 | network-other = Відбулася мережева помилка. 5 | network-details = Детальніше про помилку: { $details } 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/be/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Гэта папка захоўвае ўсе вашы даныя Anki у адзіным месцы 3 | для спрашчэння рэзервовага капіявання. Каб паведаміць Anki 4 | іншае размяшчэнне, праглядзіце: 5 | 6 | { $link } 7 | # will appear as 'Downgrade & Quit' 8 | profiles-downgrade-and-quit = Панізіць версію і выйсці 9 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/fa/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | این پوشه منحصر به فرد محل ذخیره سازی کلیه اطلاعات آنکی است که پشتیان گیری را آسان می کند 3 | برای اینکه به آنکی بگویید که از یک محل دیگر استفاده کند، لطفا ببیند: 4 | { $link } 5 | # will appear as 'Downgrade & Quit' 6 | profiles-downgrade-and-quit = بازگشت به نسخۀ پایین‌تر و خروج 7 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/fr/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | Ce dossier contient l’ensemble de vos données Anki en un seul endroit, 3 | pour faciliter les sauvegardes. Si vous souhaitez utiliser un dossier différent, 4 | allez voir : 5 | 6 | { $link } 7 | # will appear as 'Downgrade & Quit' 8 | profiles-downgrade-and-quit = Quitter 9 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/Cross.toml: -------------------------------------------------------------------------------- 1 | [build.env] 2 | 3 | passthrough = [ 4 | # Prevent pyoxidizer's build.rs from writing the filesystem path to the 5 | # Git checkout in the built binary. This ensures references to other crates 6 | # in the monorepo use public Git urls instead of filesystem paths. 7 | "PYOXIDIZER_BUILD_FORCE_GIT_SOURCE" 8 | ] 9 | -------------------------------------------------------------------------------- /rslib/i18n/src/generated.rs: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | // Include auto-generated content 5 | 6 | #![allow(clippy::all)] 7 | #![allow(text_direction_codepoint_in_literal)] 8 | 9 | include!(concat!(env!("OUT_DIR"), "/strings.rs")); 10 | -------------------------------------------------------------------------------- /sass/bootstrap-forms.scss: -------------------------------------------------------------------------------- 1 | /* Copyright: Ankitects Pty Ltd and contributors 2 | * License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html */ 3 | 4 | @import "bootstrap/scss/forms"; 5 | 6 | .form-control, 7 | .form-select { 8 | // the unprefixed version wasn't added until Chrome 81 9 | -webkit-appearance: none; 10 | } 11 | -------------------------------------------------------------------------------- /ftl/core-repo/core/th/studying.ftl: -------------------------------------------------------------------------------- 1 | studying-again = อีกครั้ง 2 | studying-delete-note = ลบบันทึกย่อ 3 | studying-easy = ง่าย 4 | studying-edit = แก้ไข 5 | studying-empty = ว่างเปล่า 6 | studying-card-studied-in = { $count -> 7 | *[other] ิเรียน { $count } บัตรคำใน 8 | } 9 | studying-minute = { $count -> 10 | *[other] { $count } นาที 11 | } 12 | -------------------------------------------------------------------------------- /ftl/core-repo/core/vi/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = Vui lòng kiểm tra kết nối mạng của bạn. 2 | network-timeout = Kết nối đã quá hạn. Vui lòng thử lại. Nếu bạn gặp quá hạn thường xuyên, vui lòng thử kết nối mạng khác. 3 | network-proxy-auth = Proxy của bạn yêu cầu xác thực. 4 | network-other = Đã xảy ra lỗi mạng. 5 | network-details = Chi tiết lỗi: { $details } 6 | -------------------------------------------------------------------------------- /ts/tag-editor/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "include": ["*", "tag-options-button/*"], 4 | "references": [ 5 | { "path": "../components" }, 6 | { "path": "../domlib" }, 7 | { "path": "../lib" }, 8 | { "path": "../sveltelib" } 9 | // { "path": "../editable" }, 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /.vscode.dist/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": [ 3 | "dprint.dprint", 4 | "ms-python.python", 5 | "ms-python.black-formatter", 6 | "rust-lang.rust-analyzer", 7 | "svelte.svelte-vscode", 8 | "zxh404.vscode-proto3", 9 | "usernamehw.errorlens", 10 | "eamodio.gitlens" 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /ftl/core-repo/core/eo/media-check.ftl: -------------------------------------------------------------------------------- 1 | media-check-delete-unused = Forigi neuzatajn dosierojn 2 | media-check-delete-unused-confirm = Ĉu forigi neuzatajn aŭdovidaĵojn? 3 | media-check-missing-header = Uzita sur kartoj sed mankanta el aŭdovidaĵo-dosierujo: 4 | media-check-window-title = Kontroli aŭdovidaĵojn 5 | media-check-check-media-action = Kontroli aŭdovidaĵojn 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/fr/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = Veuillez vérifier l’état de votre connexion internet. 2 | network-timeout = La connexion a expiré. Veuillez réessayer sur un autre réseau. 3 | network-proxy-auth = Votre proxy requiert une authentification. 4 | network-other = Une erreur de réseau a eu lieu. 5 | network-details = Détails de l’erreur : { $details } 6 | -------------------------------------------------------------------------------- /ftl/core-repo/core/mn/preferences.ftl: -------------------------------------------------------------------------------- 1 | preferences-basic = Үндсэн 2 | preferences-keep = Хадгалах 3 | preferences-mins = минутууд 4 | preferences-network = Сүлжээ 5 | preferences-preferences = Тохируулалтууд 6 | preferences-scheduling = Дахин төлөвлөх 7 | preferences-some-settings-will-take-effect-after = Зарим тохируулгууд Анкиг дахин асаахийн дараа үр дүн нь гарна. 8 | -------------------------------------------------------------------------------- /ftl/core/network.ftl: -------------------------------------------------------------------------------- 1 | network-offline = Please check your internet connection. 2 | network-timeout = Connection timed out. Please try again. If you see frequent timeouts, please try a different network connection. 3 | network-proxy-auth = Your proxy requires authentication. 4 | network-other = A network error occurred. 5 | network-details = Error details: { $details } 6 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/cs/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | V této složce jsou všechna Vaše Anki data na jednom místě, 3 | aby se dala jednoduše zálohovat. Chcete-li nastavit Anki na jinou 4 | složku, podívejte se sem: 5 | 6 | { $link } 7 | # will appear as 'Downgrade & Quit' 8 | profiles-downgrade-and-quit = Přejít na starší verzi a ukončit 9 | -------------------------------------------------------------------------------- /ftl/qt-repo/desktop/ml/profiles.ftl: -------------------------------------------------------------------------------- 1 | profiles-folder-readme = 2 | ബാക്കപ്പുകൾ എളുപ്പമാക്കുന്നതിന്, 3 | ഈ ഫോൾഡർ നിങ്ങളുടെ എല്ലാ Anki ഡാറ്റയും ഒരൊറ്റ സ്ഥാനത്ത് സംഭരിക്കുന്നു. മറ്റൊരു സ്ഥാനം ഉപയോഗിക്കാൻ Anki-യോട് പറയാൻ, 4 | ദയവായി കാണുക: 5 | { $link } 6 | # will appear as 'Downgrade & Quit' 7 | profiles-downgrade-and-quit = തരംതാഴ്ത്തുക && ഉപേക്ഷിക്കുക 8 | -------------------------------------------------------------------------------- /qt/bundle/PyOxidizer/pyoxidizer/tests/cli_tests.rs: -------------------------------------------------------------------------------- 1 | // This Source Code Form is subject to the terms of the Mozilla Public 2 | // License, v. 2.0. If a copy of the MPL was not distributed with this 3 | // file, You can obtain one at https://mozilla.org/MPL/2.0/. 4 | 5 | #[test] 6 | fn cli_tests() { 7 | trycmd::TestCases::new().case("tests/cmd/*.trycmd"); 8 | } 9 | -------------------------------------------------------------------------------- /rslib/src/sync/mod.rs: -------------------------------------------------------------------------------- 1 | // Copyright: Ankitects Pty Ltd and contributors 2 | // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html 3 | 4 | pub mod collection; 5 | pub mod error; 6 | pub mod http_client; 7 | pub mod http_server; 8 | pub mod login; 9 | pub mod media; 10 | pub mod request; 11 | pub mod response; 12 | pub mod version; 13 | -------------------------------------------------------------------------------- /sass/night-mode.scss: -------------------------------------------------------------------------------- 1 | /* Copyright: Ankitects Pty Ltd and contributors 2 | * License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html */ 3 | 4 | @mixin input { 5 | background-color: var(--canvas-inset); 6 | border-color: var(--border); 7 | 8 | &:focus { 9 | background-color: var(--canvas-inset); 10 | } 11 | } 12 | --------------------------------------------------------------------------------