all repos — raven @ fb43dd02b68cf1e48d59080480a1401ef211601e

basic twtxt client in go

feed.go: fix max posts logic
Iris Lightshard nilix@nilfm.cc
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmO9iKAACgkQO3+8IhRO
Y5h0/xAAjH/OUh7fiT3Pf4l6RnIVVPq5IyKpbZu73EU+lDlJO74noWAd3ZQ/7IXI
ghb2J17VBWVvDSne3dm6oxPxR4HkPR4vwRK/BuBKQ9j9z7F4zlZQ//fDzR+pi9At
SPD5si5P12psTURTtQDAKN9vQWf5lgUV1/iwikybK+nFyV3heZIjH3oVkl0QIxzn
iuLLlms1YWubS6VsT3bHhwCMc2FcxJ/FoaY03gtX48nZL0KoWKWykLL5HGxBQIl/
Wd1DAgH9dqZeCMquv+hOWjDLTS4PlzKxD9wt7m+cTTlng3bPZE1nBehFR4BajYw4
1ZNYTwPzSsK1SJvhJodRLUr55OA8h3nFZLkZUu4T+a1fUorQkwbAubLwoqWHqVuj
dfXWM9te+52006C4Zyzoz5+KPqiaZGCeXJuL+L81dy3yCLZ8XMfiSfsyU/ECClhf
Lu/iPcoIimPyP3UnUjQPIOQMEbsX2zyWpq7JyGrdLXuQrOnIMBZ0GIR9CRTFIE8p
FZXGkZWqDCT6UU9/c4lB01X1XK6Y+ijVOHB3csyPM74Yvf2/nSYIn8moqoxBnmHG
17dAe7IRy/6VURZmVpF9QTTUjGf1xiadyvUXTetfPEgpna5Dm2v+ZbYTYxhZAqrP
SmVTRKxR6PEhD4qjp2KtiuTrXVkTPl3S8wXLlrEuH7BxOX/Z5es=
=UNnB
-----END PGP SIGNATURE-----
commit

fb43dd02b68cf1e48d59080480a1401ef211601e

parent

c274e63e829776478de5ab22add00eaf4936677f

1 files changed, 15 insertions(+), 15 deletions(-)

jump to
M feed.gofeed.go

@@ -52,7 +52,7 @@ }

return prependToFile(feedFile, time.Now().Format(time.RFC3339)+"\t"+twt+"\n") } -func buildFeedFromUrl(feed *Feed, nick, url string, max int64) error { +func buildFeedFromUrl(feed *Feed, nick, url string) error { resp, err := http.Get(url) if err != nil { return err

@@ -64,25 +64,22 @@ if err != nil {

return err } - return buildFeed(feed, nick, string(body[:]), max) + return buildFeed(feed, nick, string(body[:])) } -func buildFeedFromPath(feed *Feed, nick, filename string, max int64) error { +func buildFeedFromPath(feed *Feed, nick, filename string) error { f, err := os.ReadFile(filename) if err != nil { return err } - return buildFeed(feed, nick, string(f[:]), max) + return buildFeed(feed, nick, string(f[:])) } -func buildFeed(feed *Feed, nick, data string, max int64) error { +func buildFeed(feed *Feed, nick, data string) error { lines := strings.Split(data, "\n") - for i, l := range lines { - if int64(i) > max { - return nil - } + for _, l := range lines { parts := strings.Split(l, "\t") t, err := time.Parse(time.RFC3339, parts[0]) if err != nil {

@@ -97,9 +94,12 @@ }

return nil } -func printFeed(feed *Feed) { +func printFeed(feed *Feed, max int64) { sort.Sort(*feed) - for _, entry := range *feed { + for i, entry := range *feed { + if int64(i) >= max { + return + } fmt.Printf("[%s] <%s> %s\n", entry.Timestamp.Format(time.Stamp), entry.Nick, entry.Post) } }

@@ -129,7 +129,7 @@ k := kvp[0]

v := kvp[1] if k == friend || len(friend) == 0 { - err = buildFeedFromUrl(feed, k, v, max) + err = buildFeedFromUrl(feed, k, v) if err != nil { return err }

@@ -138,16 +138,16 @@ break

} } } - printFeed(feed) + printFeed(feed, max) return nil } func GetOwnFeed(nick, feedFile string, max int64) error { feed := &Feed{} - err := buildFeedFromPath(feed, nick, feedFile, max) + err := buildFeedFromPath(feed, nick, feedFile) if err != nil { return err } - printFeed(feed) + printFeed(feed, max) return nil }