TUT - A Mastodon Client for the terminal
Author: -fab- <fab@redterminal.org>
License: CC BY-SA 4.0
Published on: Sun, 14 Jan 2024 06:05:45 +0100
Last updated: Sun, 14 Jan 2024 06:05:45 +0100
I'm really skeptical about social media and avoid Facebook and Twitter like the plague. But a free, not commercially exploited communication platform like mastodon seems interesting, although I don't have much experience with it. So I thought I'll try it out.
@fab@pleroma.envs.net - My shiny new ActivityPub account
To my delight there are some CLI/Terminal clients for Mastodon. I tried 'toot', written in python but it gives me some strange "KeyError"s that may come from using pleroma as a server.
toot Github repository (www)
TUT
To my surprise tut is really feature complete and in my opinion easier to use, but I didn't use toot for long. Tut is written in go by Rasmus Lindroth.
TUT homepage (www)
TUT Github repository (www)
I use the 'tut-bin' package from the Arch User Repository (AUR) but there may be packages in other distributions.
I'm still figuring out how Mastodon works but after I settled in for some hours of playing around I really like the TUT interface. There are two main screen sections: The left column is for lists like timelines or threads and can be divided into panes. The right column is for the message view. There is a special editor screen when composing a message - You can use the builtin editor or use your all favorite (neovim).
Image of TUT interface
TUT key bindings
Navigating through lists can be done with the arrow keys or the vim-style h,j,k,l key bindings.
Global key bindings
- C - Compose post, opens the composer view
- ? - View help
- Q - Go back or quit
- ESC - Go back
The post related key bindings
If you are viewing a post in the view column you have the following keys:
- F - Favorite/Like the post
- B - Boost / share the post
- T - Show complete thread of post and replies
- R - Reply to a post, opens the compositor
- V - View post switches to the message column so you can scroll through it
- U - Shows the profile of the user and their last posts
- O - Opens links in browser
- A - Shows the user's avatar in your image viewer
- M - Shows media content of the post
- S - Save the post
- Y - Yank/copy post
When displaying a profile of a specific user there are these keys available:
- F - Follow/Unfollow User
- B - Block user
- M - Mute user
- O - Open Links on the profile
- U - Opens List with last posts of the user
- A - Show Avatar
- Y - Yank/copy web URL to profile
The composer occupies the full screen and has these keybindings:
- P - Post the message
- E - Edit message body (inbuilt editor or configured one)
- V - Change/set visibility (public, unlisted, private, direct)
- T - Toggle Content Warning
- C - Edit Content Warning text
- M - Add media files
- O - Create poll
- L - Set post language
TUT commands
Commands can be entered by typing ':<command>'. These commands are available:
- :quit - Exit TUT
- :timline - Opens selected timeline
- :blocking - List of your blocked users
- :boosts - Show a list of users that boosted a post
- :bookmarks - Your bookmarks list
- :clear-notifications - clears list of notifications
- :clear-temp - deletes all your downloaded media content
- :close-pane - closes a pane
- :compose - Compose a new post
- :edit - Edit a post you previously submitted
- :favorited - Lists your favorited posts
- :favorites - Show users that favorited a post
- :follow-tag <tag> - Follow a specific hashtag
- :followers - Followers of an account
- :following - People following an account
- :help - Shows help page
- :history - Shows all edits of a post
- :lists - List of your lists
- :list-placement - Place list in chosen space
- :list-split - Splits timelines by row or column
- :login - Login to another account
- :move-pane - Moves panes
- :muting - Shows users muted by you
- :newer - Force load newer toots in timeline
- :next-acct: Choose next account if multiple
- :preferences - Edit your profile
- :prev-acct: Chose previous account if multiple
- :profile - Show your profile
- :proportions - Set list/view ratio of screen
- :refetch - refetch viewed item
- :saved - Alias for :bookmarks
- :stick-to-top - Shows always latest toots
- :tag - Lists posts with specific hashtag
- :tags - Lists all the hashtags you are following
- :unfollow-tag - Unfollow a hashtag you are following
- :user - Searches for a user
- :pane - Switch to pane by index
Configuration
I won't go into configuration details, but everything is configurable. You can choose the builtin text editor or your favorite one. Browser, image viewer, video- and audio-player can be defined as needed. I believe xdg-open is the default. All the keys can be customized and changed. TUT is also themeable so every color of every TUI element can be tailored to your needs. You can even create your theme interactively and import it to your configuration.
Create your own TUT theme (www)
Conclusion
As a newborn Mastodon user I'm completely satisfied. The pleroma web client is good for having an overview with all the media displayed in the timeline, but I won't need that very often. And as you see, TUT is nearly feature complete and you can view all the posted media in your favorite application.
If you play around for a few hours and got a little used to the interface you get a powerful tool to navigate through Mastodon/ActivityPub in the terminal. As a Social Media newbie I think this will be my client of choice now and in future.
All in all - have fun!
-fab-
--
Back to index
Homepage