--- a/cmd/status.go Sun Mar 18 23:28:08 2018 +0100
+++ b/cmd/status.go Mon Mar 19 11:29:06 2018 +0100
@@ -60,6 +60,7 @@
// Subcommand flags
statusReblogSubcommand.Flags().BoolVar(&statusOpts.unset, "unset", false, "Unreblog the status")
statusFavouriteSubcommand.Flags().BoolVar(&statusOpts.unset, "unset", false, "Remove the status from the favourites")
+ statusPinSubcommand.Flags().BoolVar(&statusOpts.unset, "unset", false, "Unpin the status")
statusPostSubcommand.Flags().BoolVar(&statusOpts.sensitive, "sensitive", false, "Mark post as sensitive (NSFW)")
statusPostSubcommand.Flags().StringVar(&statusOpts.visibility, "visibility", "", "Visibility (direct|private|unlisted|public)")
statusPostSubcommand.Flags().StringVar(&statusOpts.spoiler, "spoiler", "", "Spoiler warning (CW)")
@@ -161,6 +162,7 @@
},
statusReblogSubcommand,
statusFavouriteSubcommand,
+ statusPinSubcommand,
statusPostSubcommand,
}
@@ -182,6 +184,14 @@
},
}
+var statusPinSubcommand = &cobra.Command{
+ Use: "pin",
+ Short: "Pin/unpin the status",
+ RunE: func(cmd *cobra.Command, args []string) error {
+ return statusSubcommandRunE(cmd.Name(), args)
+ },
+}
+
var statusPostSubcommand = &cobra.Command{
Use: "post",
Aliases: []string{"toot", "pouet"},
@@ -266,6 +276,12 @@
} else {
err = gClient.FavouriteStatus(opt.statusID)
}
+ case "pin":
+ if opt.unset {
+ err = gClient.UnpinStatus(opt.statusID)
+ } else {
+ err = gClient.PinStatus(opt.statusID)
+ }
case "mute-conversation":
var s *madon.Status
s, err = gClient.MuteConversation(opt.statusID)