[Feature Request] Support posting multiple toots as thread
When creating a post with content that exceeds my instances character limit I would like to be able to split the content in multiple suitable posts that get posted as replies to the respecting previous toot as a thread.
This could be an option recommended by the UI when detecting an exceedance of the character limit of the current instance or an option able to be activated by the user by ticking a box etc.
Thanks for your work on providing the fediverse client. :tada:
Thanks for the suggestion!
I'm a bit late to this, but as I'm going through old issues now, I'll raise some concerns.
Splitting text would be easy, but focusing on the 'posting multiple toots at once' part, it raises an issue, what if one of the toots fails to be published? Even if we follow all limits, like we currently do, it could fail for whatever unrelated reason. That would leave incomplete threads up:
[post 1 succeeded] => [post 2 failed] => [post 3 doesn't get posted]
Aka, we can't know in advance if anything will fail and the only options are either removing whatever has been published or letting incomplete threads up
I find this feature really desirable as I often struggle to work around character limits.
The workaround process of cutting the truncated text, posting, opening a new reply, then pasting the cut text, & repeat is laborious and error-prone, especially on mobile where the gestures to bring up text manipulation controls are janky.
Oftentimes a situation occurs where someone replies to an earlier toot before I've finished posting the remainder of my thoughts in the chain of replies.
[post 1 succeeded] => [post 2 failed] => [post 3 doesn't get posted]
Aka, we can't know in advance if anything will fail and the only options are either removing whatever has been published or letting incomplete threads up
A simple-ish flow that would facilitate this without too much change would be something like:
- Split a long message into multiple toots at the word boundary closest to the character limit.
- Attempt to post the first toot, leaving the dialog window open.
- Attempt to post subsequent toots as a reply to the last.
- Upon a successful post, remove its text from the dialog textbox, and attempt to post the next chunk as a reply.
- Upon encountering an error, display the message, but leave the dialog window open containing the remaining text that still has not been posted.
- Once all toots have been posted, dismiss the dialog window.
Upon encountering an error, display the message, but leave the dialog window open containing the remaining text that still has not been posted.
Not too fond of this. Say there's a huge thread, 50 posts or so and you get rate limited at post 30. You are left with 20 more posts not being posted and an unfinished thread.
You options now are either go back and delete everything (which you can't do because you are rate limited) or... wait there with the composer over until the rate limit is over.
Apart from that, the automatic text splitting might not be ideal and people might want more control over it. E.g. when I make Tuba announcements on fedi, I pre-write everything, pre-split them, pre-write alt text, pre-decide what attachments will be attach to which post etc. Automatic splitting wouldn't solve this :/