Um pouco de código.
Algo para lembrar.

Explore o código, vire os cartões e abra os baralhos gerados no Anki. Estas prévias usam os mesmos campos dos arquivos para download.

Basic

Uma saudação em espanhol com pergunta, resposta e ID estável explícito. Comece aqui para criar cartões simples de frente e verso.

basic.rsTrecho em Rust
let (front, back) = ("hola", "hello");
let mut project = Project::new("spanish")?.default_deck("Spanish");
project.add("es:hola", Note::basic(front, back))?;
let built = project.build(BuildOptions::to(output.join("spanish.apkg")))?;

Spanish
Espanhol → inglês

hola

O que isso significa?
Baixar spanish.apkg 1 nota · 1 cartão · 0 arquivo de mídia

Cloze

Oculte uma palavra no contexto com a sintaxe Cloze do Anki. Esta nota tem uma lacuna e, por isso, gera um cartão.

cloze.rsTrecho em Rust
let text = "A sound's pitch depends on its {{c1::frequency}}.";
let extra = "More cycles per second, higher pitch.";
let mut project = Project::new("website-sound")?.default_deck("Sound");
project.add("sound:pitch", Note::cloze(text).field("back_extra", extra))?;
let built = project.build(BuildOptions::to(output.join("sound.apkg")))?;

Sound
Complete a frase

A sound's pitch depends on its […].

Baixar sound.apkg 1 nota · 1 cartão · 0 arquivo de mídia

Mídia

Uma imagem e um tom que pode ser reproduzido, incluídos no pacote com a nota. O trecho usa um tipo de nota para treinamento auditivo definido no código completo.

media.rsTrecho em Rust
let (prompt, answer) = ("Name this pitch.", "A4, 440 Hz");
let picture = Media::file(output.join("waveform.svg"))?.with_export_name("waveform.svg")?;
let audio = Media::file(output.join("concert-a.wav"))?.with_export_name("concert-a.wav")?;
project.add(
    "sound:a4",
    model
        .note()
        .field("prompt", prompt)
        .field("answer", answer)
        .field("picture", picture.image())
        .field("audio", audio.sound()),
)?;
let built = project.build(BuildOptions::to(output.join("ear-training.apkg")))?;

Ear Training
Treinamento auditivo

Name this pitch.

Forma de onda ilustrativa de um tom sintetizado
Baixar ear-training.apkg 1 nota · 1 cartão · 2 arquivos de mídia

Oclusão de imagem

Um retângulo com chave estável oculta o núcleo na ilustração de uma célula em corte. O baralho para download usa a mesma imagem e máscara desta prévia.

occlusion.rsTrecho em Rust
let image =
    Media::file(output.join("cell-anatomy.png"))?.with_export_name("cell-anatomy.png")?;
Ok(Note::image_occlusion(image)
    .mask(Mask::rect("nucleus", 296, 106, 240, 232))
    .build()?
    .field("header", "Cell anatomy")
    .field("back_extra", "Nucleus"))

Cell Anatomy
Anatomia celular

Which structure is hidden?

Corte de uma célula animal com uma estrutura oculta
Baixar cell-anatomy.apkg 1 nota · 1 cartão · 1 arquivo de mídia

Uma nota, duas versões.

A segunda versão altera a resposta de “hello” para “hello; hi”. O programa compara o resultado com o primeiro pacote e verifica se o ID da nota foi mantido.

let comparison = project.compare(CompareOptions::against(&previous))?;
ensure!(comparison.policy().allows_publication());
let built = project.build(BuildOptions::to(&next).update_from(&previous))?;

ID estável da notaes:hola
Frente

hola

Verso

hello

Experimente alterar o conteúdo.

Comparação real: RISK.NOTE_CHANGED (low). Política de publicação: permite esta alteração.

Baixar v1Baixar v2Relatório de comparação

Guarde o APKG original distribuído. As opções de importação e as edições locais mais recentes afetam as atualizações. Guia de atualização

As opções de importação do Anki e as edições locais afetam a aplicação das atualizações. As prévias mostram o conteúdo e a identidade; o estilo dos cartões e o comportamento de revisão dependem do Anki.