all repos

anpi @ a1bddb652043f7ca0527006d2b09383ac08bdb75

yaml to anki importer

anpi/main.go (view raw)

Oleksandr Smirnov Oleksandr Smirnov
olexsmir@gmail.com
add lookup of original type field, 1 year ago
1
package main
2
3
import (
4
	"log/slog"
5
	"os"
6
7
	"github.com/olexsmir/anpi/anki"
8
	"github.com/olexsmir/anpi/parser"
9
)
10
11
func main() {
12
	anki := anki.NewAnkiClient()
13
14
	decks, err := anki.GetDeckNames()
15
	slog.Info("test deck names", "fields", decks, "err", err)
16
17
	fields, err := anki.GetModelFieldNames("Basic")
18
	slog.Info("test existent type", "fields", fields, "err", err)
19
20
	fieldsErr, err := anki.GetModelFieldNames("chicked jokey")
21
	slog.Info("test non-existent type", "fields", fieldsErr, "err", err)
22
23
	f, _ := os.ReadFile("test.yml")
24
	data, err := parser.Parse(f)
25
	slog.Info("parsing data", "err", err)
26
27
	lookup := "front"
28
	ankiField := data[1].FieldLookUp(lookup)
29
	slog.Info("looking up anki note field", "field", ankiField, "lookup", lookup)
30
31
	// for _, deck := range data {
32
	// 	fmt.Printf("\nDeck: %s\n", deck.Deck)
33
	// 	fmt.Printf("Type: %s\n", deck.Type)
34
	// 	fmt.Printf("Global Tags: %v\n", deck.Tags)
35
	// 	fmt.Println("Fields mapping:")
36
	// 	for internalName, anki := range deck.Fields {
37
	// 		fmt.Printf("  %s -> %s\n", internalName, anki)
38
	// 	}
39
	//
40
	// 	fmt.Println("Notes:")
41
	// 	for _, note := range deck.Notes {
42
	// 		fmt.Println("  Note fields:")
43
	// 		for internalName, value := range note.Fields {
44
	// 			fmt.Printf("    %s: %s\n", internalName, value)
45
	// 		}
46
	// 		if len(note.Tags) > 0 {
47
	// 			fmt.Printf("    Local Tags: %v\n", note.Tags)
48
	// 		}
49
	// 	}
50
	// }
51
}