diff --git a/kernel/bazaar/icon.go b/kernel/bazaar/icon.go index 63aa12f74..799aaa36c 100644 --- a/kernel/bazaar/icon.go +++ b/kernel/bazaar/icon.go @@ -24,7 +24,6 @@ import ( "strings" "sync" - "github.com/88250/gulu" "github.com/dustin/go-humanize" ants "github.com/panjf2000/ants/v2" "github.com/siyuan-note/httpclient" @@ -143,7 +142,8 @@ func InstalledIcons() (ret []*Icon) { logging.LogWarnf("read install icon README.md failed: %s", readErr) continue } - icon.README = gulu.Str.FromBytes(readme) + + icon.README, _ = renderREADME(icon.URL, readme) icon.Outdated = isOutdatedIcon(icon.URL, icon.Version, bazaarIcons) ret = append(ret, icon) } diff --git a/kernel/bazaar/package.go b/kernel/bazaar/package.go index 987f45f5f..a956b8441 100644 --- a/kernel/bazaar/package.go +++ b/kernel/bazaar/package.go @@ -244,16 +244,21 @@ func GetPackageREADME(repoURL, repoHash string, systemID string) (ret string) { } } + ret, err = renderREADME(repoURL, data) + return +} + +func renderREADME(repoURL string, mdData []byte) (ret string, err error) { luteEngine := lute.New() luteEngine.SetSoftBreak2HardBreak(false) luteEngine.SetCodeSyntaxHighlight(false) linkBase := repoURL + "/blob/main/" luteEngine.SetLinkBase(linkBase) - ret = luteEngine.Md2HTML(string(data)) + ret = luteEngine.Md2HTML(string(mdData)) doc, err := goquery.NewDocumentFromReader(strings.NewReader(ret)) if nil != err { logging.LogErrorf("parse HTML failed: %s", err) - return ret + return } doc.Find("a").Each(func(i int, selection *goquery.Selection) { diff --git a/kernel/bazaar/template.go b/kernel/bazaar/template.go index 4cb5e488a..10f3c435f 100644 --- a/kernel/bazaar/template.go +++ b/kernel/bazaar/template.go @@ -25,7 +25,6 @@ import ( "sync" "time" - "github.com/88250/gulu" "github.com/dustin/go-humanize" "github.com/panjf2000/ants/v2" "github.com/siyuan-note/httpclient" @@ -143,7 +142,7 @@ func InstalledTemplates() (ret []*Template) { logging.LogWarnf("read install template README.md failed: %s", readErr) continue } - template.README = gulu.Str.FromBytes(readme) + template.README, _ = renderREADME(template.URL, readme) template.Outdated = isOutdatedTemplate(template.URL, template.Version, bazaarTemplates) ret = append(ret, template) } diff --git a/kernel/bazaar/theme.go b/kernel/bazaar/theme.go index c0c4cb2b3..e4bda1cf4 100644 --- a/kernel/bazaar/theme.go +++ b/kernel/bazaar/theme.go @@ -24,7 +24,6 @@ import ( "strings" "sync" - "github.com/88250/gulu" "github.com/dustin/go-humanize" ants "github.com/panjf2000/ants/v2" "github.com/siyuan-note/httpclient" @@ -146,7 +145,7 @@ func InstalledThemes() (ret []*Theme) { logging.LogWarnf("read install theme README.md failed: %s", readErr) continue } - theme.README = gulu.Str.FromBytes(readme) + theme.README, _ = renderREADME(theme.URL, readme) theme.Outdated = isOutdatedTheme(theme.URL, theme.Version, bazaarThemes) ret = append(ret, theme) } diff --git a/kernel/bazaar/widget.go b/kernel/bazaar/widget.go index fbbd14447..60d81eb20 100644 --- a/kernel/bazaar/widget.go +++ b/kernel/bazaar/widget.go @@ -24,7 +24,6 @@ import ( "strings" "sync" - "github.com/88250/gulu" "github.com/dustin/go-humanize" ants "github.com/panjf2000/ants/v2" "github.com/siyuan-note/httpclient" @@ -141,7 +140,7 @@ func InstalledWidgets() (ret []*Widget) { logging.LogWarnf("read install widget README.md failed: %s", readErr) continue } - widget.README = gulu.Str.FromBytes(readme) + widget.README, _ = renderREADME(widget.URL, readme) widget.Outdated = isOutdatedWidget(widget.URL, widget.Version, bazaarWidgets) ret = append(ret, widget) }