all repos

anpi @ 8a8b00d

yaml to anki importer
1 files changed, 11 insertions(+), 7 deletions(-)
remove paragraphs from generated markdown, and log some things
Author: Oleksandr Smirnov olexsmir@gmail.com
Committed at: 2025-04-30 00:40:04 +0300
Parent: 8769209
M main.go
···
        4
        4
         	"fmt"

      
        5
        5
         	"log/slog"

      
        6
        6
         	"os"

      
        
        7
        +	"strings"

      
        7
        8
         

      
        8
        9
         	"github.com/gomarkdown/markdown"

      
        9
        10
         	"github.com/gomarkdown/markdown/html"

      
        10
        11
         	mdParser "github.com/gomarkdown/markdown/parser"

      
        11
        
        -

      
        12
        12
         	"github.com/olexsmir/anpi/anki"

      
        13
        13
         	"github.com/olexsmir/anpi/parser"

      
        14
        14
         )

      ···
        45
        45
         			slog.Info("gotten fields", "fields", fields)

      
        46
        46
         

      
        47
        47
         			tags := mergeTags(deck.Tags, note.Tags)

      
        48
        
        -			if _, err := anki.AddNote(deck.Deck, deck.Type, fields, tags); err != nil {

      
        
        48
        +			nid, err := anki.AddNote(deck.Deck, deck.Type, fields, tags)

      
        
        49
        +			if err != nil {

      
        49
        50
         				return err

      
        50
        51
         			}

      
        
        52
        +

      
        
        53
        +			slog.Info("note added", "id", nid, "fields", fields)

      
        51
        54
         		}

      
        52
        55
         	}

      
        53
        56
         

      ···
        73
        76
         }

      
        74
        77
         

      
        75
        78
         func fromMarkdown(inp string) string {

      
        76
        
        -	extensions := mdParser.CommonExtensions | mdParser.AutoHeadingIDs | mdParser.NoEmptyLineBeforeBlock

      
        77
        
        -

      
        78
        79
         	htmlFlags := html.CommonFlags | html.HrefTargetBlank

      
        79
        80
         	opts := html.RendererOptions{Flags: htmlFlags}

      
        80
        81
         

      
        81
        
        -	p := mdParser.NewWithExtensions(extensions)

      
        
        82
        +	p := mdParser.New()

      
        82
        83
         	doc := p.Parse([]byte(inp))

      
        83
        84
         

      
        84
        
        -	renderer := html.NewRenderer(opts)

      
        85
        
        -	return string(markdown.Render(doc, renderer))

      
        
        85
        +	str := string(markdown.Render(doc, html.NewRenderer(opts)))

      
        
        86
        +	str = strings.ReplaceAll(str, "<p>", "")

      
        
        87
        +	str = strings.ReplaceAll(str, "</p>", "")

      
        
        88
        +

      
        
        89
        +	return str

      
        86
        90
         }