From 89d391bd37e27bc264e92911df12a78354be9a5f Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Wed, 27 Nov 2024 17:05:43 +0200 Subject: more fixes --- internal/queue/inlinetags.go | 11 ++++++++++- internal/queue/inlinetags_test.go | 10 +++++----- 2 files changed, 15 insertions(+), 6 deletions(-) (limited to 'internal/queue') diff --git a/internal/queue/inlinetags.go b/internal/queue/inlinetags.go index 7925151..82ee844 100644 --- a/internal/queue/inlinetags.go +++ b/internal/queue/inlinetags.go @@ -9,6 +9,7 @@ import ( "codeberg.org/snonux/gos/internal/colour" "codeberg.org/snonux/gos/internal/oi" + "codeberg.org/snonux/gos/internal/platforms" ) var inlineTagRE = regexp.MustCompile(`^[a-z\.,:]*$`) @@ -62,9 +63,17 @@ func extractInlineTagsFromContent(content string) ([]string, string, error) { tags = append(tags, strings.Split(elem, ",")...) } if len(tags) == 0 { - tags = []string{parts[0]} + tags = parts[:1] } if len(tags) > 0 { + for i := range len(tags) { + if strings.HasPrefix(tags[i], "share:") { + var err error + if tags[i], err = platforms.ExpandAliases(tags[i]); err != nil { + return []string{}, content, err + } + } + } return tags, strings.Join(parts[1:], " "), nil } } diff --git a/internal/queue/inlinetags_test.go b/internal/queue/inlinetags_test.go index ee07cc9..a0d71b6 100644 --- a/internal/queue/inlinetags_test.go +++ b/internal/queue/inlinetags_test.go @@ -14,9 +14,9 @@ func TestExtractInlineTagsToFilePath(t *testing.T) { "foo.bar.baz blablablabla...": "./gosdir/foo.golang.rox.foo.bar.baz.extracted.txt", "foo.bar,baz blablablabla...": "./gosdir/foo.golang.rox.foo.bar.baz.extracted.txt", "foo,bar.baz blablablabla...": "./gosdir/foo.golang.rox.foo.bar.baz.extracted.txt", - "share:li,foo this is the main content": "./gosdir/foo.golang.rox.share:li.foo.extracted.txt", - "share:li:ma this is the main content": "./gosdir/foo.golang.rox.share:li:ma.extracted.txt", - "share:li:ma,now this is the main content": "./gosdir/foo.golang.rox.share:li:ma.now.extracted.txt", + "share:li,foo this is the main content": "./gosdir/foo.golang.rox.share:linkedin.foo.extracted.txt", + "share:li:ma this is the main content": "./gosdir/foo.golang.rox.share:linkedin:mastodon.extracted.txt", + "share:li:ma,now this is the main content": "./gosdir/foo.golang.rox.share:linkedin:mastodon.now.extracted.txt", } for content, expectedFilePath := range table { @@ -38,8 +38,8 @@ func TestExtractInlineTagsFromContent(t *testing.T) { "foo.bar.baz blablablabla...": {"foo", "bar", "baz"}, "foo.bar,baz blablablabla...": {"foo", "bar", "baz"}, "foo,bar.baz blablablabla...": {"foo", "bar", "baz"}, - "share:li this is the main content": {"share:li"}, - "share:li,foo this is the main content": {"share:li", "foo"}, + "share:li this is the main content": {"share:linkedin"}, + "share:li,foo this is the main content": {"share:linkedin", "foo"}, "shar()e:li,foo this is the main content": {}, } -- cgit v1.2.3