From cde994cbd410a6ec0478173deb9ae772891351fe Mon Sep 17 00:00:00 2001 From: Liang Ding Date: Fri, 2 Sep 2022 00:00:29 +0800 Subject: [PATCH] =?UTF-8?q?:art:=20=E9=9B=86=E5=B8=82=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E5=B7=B2=E5=AE=89=E8=A3=85=E7=9A=84=E5=8C=85=E5=8D=95=E7=8B=AC?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=20https://github.com/siyuan-note/siyuan/issu?= =?UTF-8?q?es/5678?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel/bazaar/icon.go | 4 ++-- kernel/bazaar/package.go | 9 +++++++-- kernel/bazaar/template.go | 3 +-- kernel/bazaar/theme.go | 3 +-- kernel/bazaar/widget.go | 3 +-- 5 files changed, 12 insertions(+), 10 deletions(-) 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) }