ref: f6808341cc21e3b4c27b6b69ae4a7a1e79fc92b5
parent: 54273d5c3f777e92905f5248aaab4e1755c9af9d
author: penny <penny@limitedideas.org>
date: Thu Aug 7 22:46:17 EDT 2025
Account info command
--- a/commands.go
+++ b/commands.go
@@ -4,7 +4,7 @@
"strings"
)
-var commands = []string{"examine", "reply", "like", "thread", "open", "preview", "dm", "rt", "parent", "children", "rm", "download", "mark", "unmark"}+var commands = []string{"examine", "reply", "like", "thread", "open", "preview", "download", "dm", "rt", "parent", "children", "rm", "mark", "unmark", "account", "vim"} func processInput(input string) (command string, arguments string) {--- a/main.go
+++ b/main.go
@@ -225,6 +225,9 @@
printPost("?"+postref, context.Descendants[post])postref = IncrementString(postref)
}
+ case "account":
+ account := postItem.Account
+ fmt.Printf(formatAccount(&account))
default:
fmt.Printf("Unimplemented command \"%v\"?\"\n", command)--- a/mastodon.go
+++ b/mastodon.go
@@ -141,6 +141,19 @@
return post.Account.Acct
}
+func formatAccount(account *mastodon.Account) string {+ var sb strings.Builder
+
+ sb.WriteString(fmt.Sprintf("%v\n", account.DisplayName))+ sb.WriteString(fmt.Sprintf("%v <%v>\n", account.Username, account.Acct))+ sb.WriteString(fmt.Sprintf("Posts: %v Followers: %v Following: %v\n", account.StatusesCount, account.FollowersCount, account.FollowingCount))+ sb.WriteString(fmt.Sprintf("Created %v\n", account.CreatedAt))+ sb.WriteString(fmt.Sprintf("Locked: %v\n", account.Locked))+ sb.WriteString(fmt.Sprintf("%v\n\n", html2text.HTML2Text(account.Note)))+
+ return sb.String()
+}
+
// Spaces before prefixes (no space if you're not passing a prefix)
func formatReblog(post *mastodon.Status, index string) string { reblogString := fmt.Sprintf(" <%v> Reblogged", post.Account.Username)@@ -173,7 +186,7 @@
func formatEdit(post *mastodon.Status, index string) string { editString := fmt.Sprintf(" <%v> EDITED:", post.Account.Username)- return formatStatusDetailed(post, index, editString)
+ return hyphenate(formatStatusDetailed(post, index, editString))
}
func printMastodonErr(err error) {@@ -210,8 +223,8 @@
continue
}
postfix += "🖼️"
-
}
+
plaintext = hyphenate(fmt.Sprintf("%v %v", poststring, postfix))return
}
@@ -223,7 +236,7 @@
eventCh, err := client.StreamingUser(ctx)
if err != nil {- log.Fatalf("Error starting user stream: %v", err)+ log.Fatalf("Error starting user stream: %v\n", err)}
initReferenceSystem()
--
⑨