diff options
| author | andromeda <andromeda@lenovo> | 2026-04-15 11:47:13 +0200 |
|---|---|---|
| committer | andromeda <andromeda@lenovo> | 2026-04-15 11:47:13 +0200 |
| commit | a6afe8626b7b2f85fb3137c7dae51774b3fd39b9 (patch) | |
| tree | c24a2c28dc982877e524a3d0583cd86fae0f4776 /src | |
| parent | dfe95e2a89b26a9ecc5dc44ef9d0370516a2d29b (diff) | |
make deck selection more intuitive
Diffstat (limited to 'src')
| -rw-r--r-- | src/main.rs | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/main.rs b/src/main.rs index 3eb93b8..0e50df8 100644 --- a/src/main.rs +++ b/src/main.rs @@ -22,7 +22,14 @@ fn main() { fn init(anki: &AnkiClient) { clear_screen(); - display_prompt_text("Name des Stapels: "); + let decks = anki.request(DeckNamesRequest {}).unwrap(); + for (index, title) in decks.clone().into_iter().enumerate() { + // 0th index is Default, which is not predictable + if index > 0 { + println!("{:?}: {}", index, title); + } + } + display_prompt_text("deck index:"); let mut input = "".to_string(); loop { match event::read().unwrap() { @@ -34,7 +41,10 @@ fn init(anki: &AnkiClient) { _ => (), } } - anki.request(GuiDeckReviewRequest { name: input }).unwrap(); + anki.request(GuiDeckReviewRequest { + name: decks[input.parse::<usize>().unwrap()].clone(), + }) + .unwrap(); } fn prompt(anki: &AnkiClient) { |
