ref: 5f003d0c8c4be2dbbac6358d22f99f1d6c24ef2b
parent: 6f0f31a4efc83576aa1188f6efba6cb55a974dcf
author: penny <penny@limitedideas.org>
date: Mon Nov 3 16:00:45 EST 2025
port /home /local /public
--- a/commands.go
+++ b/commands.go
@@ -637,13 +637,68 @@
return fmt.Sprintln(err)
}
}
- //If we got here either this was already true or we deleted it?
- hc.recentpost = nil
+ if !data.found_index {+ hc.recentpost = nil
+ }
return ""
}
return cmd
}
+func (hc *Hellclient) homecmd() cmder {+ cmd := &basiccmd{}+ cmd.hc = hc
+ cmd.bname = "home"
+ cmd.bflags = free
+ cmd.doer = func(data *cmddata) string {+ hc.page = &Page{}+ getter := &BasicStatusGetter{getter: hc.client.GetTimelineHome}+ hc.page.loader = &StatusPages{hc: hc, getter: getter}+ hc.pause(true)
+ return hc.page.String()
+
+ }
+ return cmd
+}
+
+func (hc *Hellclient) localcmd() cmder {+ cmd := &basiccmd{}+ cmd.hc = hc
+ cmd.bname = "local"
+ cmd.bflags = free
+ cmd.doer = func(data *cmddata) string {+ hc.page = &Page{}+ localAPI := func(ctx context.Context, pg *mastodon.Pagination) ([]*mastodon.Status, error) {+ return hc.client.GetTimelinePublic(ctx, true, pg)
+ }
+ getter := &BasicStatusGetter{getter: localAPI}+ hc.page.loader = &StatusPages{hc: hc, getter: getter}+ hc.pause(true)
+ return hc.page.String()
+
+ }
+ return cmd
+}
+
+func (hc *Hellclient) publiccmd() cmder {+ cmd := &basiccmd{}+ cmd.hc = hc
+ cmd.bname = "public"
+ cmd.bflags = free
+ cmd.doer = func(data *cmddata) string {+ hc.page = &Page{}+ localAPI := func(ctx context.Context, pg *mastodon.Pagination) ([]*mastodon.Status, error) {+ return hc.client.GetTimelinePublic(ctx, false, pg)
+ }
+ getter := &BasicStatusGetter{getter: localAPI}+ hc.page.loader = &StatusPages{hc: hc, getter: getter}+ hc.pause(true)
+ return hc.page.String()
+
+ }
+ return cmd
+}
+
func (hc *Hellclient) newCmdArray() []cmder { cmdarray := []cmder{hc.replycmd(),
@@ -664,6 +719,9 @@
hc.noticecmd(),
hc.pausecmd(),
hc.resumecmd(),
+ hc.homecmd(),
+ hc.localcmd(),
+ hc.publiccmd(),
}
return cmdarray
}
--- a/main.go
+++ b/main.go
@@ -124,23 +124,6 @@
//Contextual commands that need to handle their own requirements
switch command {- case "home":
- hc.page = &Page{}- getter := &BasicStatusGetter{getter: hc.client.GetTimelineHome}- hc.page.loader = &StatusPages{hc: hc, getter: getter}- fmt.Print(hc.page.String())
- hc.pause(true)
- return
- case "local":
- hc.page = &Page{}- localAPI := func(ctx context.Context, pg *mastodon.Pagination) ([]*mastodon.Status, error) {- return hc.client.GetTimelinePublic(ctx, true, pg)
- }
- getter := &BasicStatusGetter{getter: localAPI}- hc.page.loader = &StatusPages{hc: hc, getter: getter}- fmt.Print(hc.page.String())
- hc.pause(true)
- return
case "public":
hc.page = &Page{} localAPI := func(ctx context.Context, pg *mastodon.Pagination) ([]*mastodon.Status, error) {--
⑨