Config
Tut is configurable, so you can change things like the colors, the default timeline, what image viewer to use and some more.
You find it in XDG_CONFIG_HOME/tut/config.toml on Linux which usally equals to ~/.config/tut/config.toml.. If you don't run Linux it will use the path of os#UserConfigDir. But if you move the tut folder to XDG_CONFIG_HOME/tut/ and have set the environment variable $XDG_CONFIG_HOME it will look there instead of the standard place.
In the git-repo you can find a example.config.toml. It contains the default values. And can be good to look at for reference.
General config
Section [general] in your config
editor
What editor to use. TUT_USE_INTERNAL will use the editor that comes with tut. If you want you can set this to $EDITOR to use your environment variable or vim if you want to specify the program directly.
default="TUT_USE_INTERNAL"
confirmation
You need to press yes in a confirmation dialog before favoriting, boosting, etc.
default=true
mouse-support
Enable mouse support in tut.
default=false
date-format
The date format to be used. See Go time#Constants
default="2006-01-02 15:04"
date-tody-format
Format for dates the same day. See date-format for more info.
default="15:04"
date-relative
This displays relative dates instead for statuses that are one day or older the output is 1y2m1d (1 year 2 months and 1 day)
The value is an integer
-1 = don't use relative dates
0 = always use relative dates, except for dates < 1 day
1 - ∞ = number of days to use relative dates
Value: 28 will display a relative date for toots that are between 1-28 days old. Otherwise it will use the short or long format.
default=-1
max-width
The max with of text before it wraps when displaying a toot.
default=0
list-placement
The placement of your panes.
valid: left, right, top, bottomdefault="left"
list-split
How should panes be split?
valid: row, columndefault="row"
list-proportion
The proportion of panes vs. content. 1 on this and 3 on content below results in content taking up 3 times more space.
default=1
content-proportion
See previous.
default=2
notifications-to-hide
Hide notifications of this type in your notification timelines.
valid: mention, status, boost, follow, follow_request, favorite, poll, editdefault=[]
quote-reply
Always include a quote of the message you're replying to.
default=false
show-icons
If you want to show icons in timelines.
default=true
short-hints
If you only want to you the letter of keys instead of the full hint.
default=false
show-filter-phrase
If you want to display the filter that filtered a toot.
default=true
show-help
Display a message in the commandbar on how to access the help text.
default=true
stick-to-top
Always jump to the newest post. May ruin your reading experience.
default=false
show-boosted-user
Display the username of the person being boosted instead of the person that boosted.
default=false
commands-in-new-pane
Open a new pane when you run a command like :timeline home.
default=true
dynamic-timeline-name
Set a default name for the timeline if the name is empty. So if you run :tag linux the title of the pane will be set to #linux
default=true
terminal-title
0 = No terminal title
1 = Show title in terminal and top bar
2 = Only show terminal title, and no top bar in tut
3 = No terminal title and no top bar in tut.
valid: 0, 1, 2, 3default=0
redraw-ui
If you don't want the whole UI to update, and only update the text content you can disable this. This will lead to some artifacts being left on the screen when emojis are present.
default=true
leader-key
The leader is used as a shortcut to run commands as you can do in Vim. By default this is disabled and you enable it by setting a key here. It can only consist of one char, so set it to something like a comma.
default=""
leader-timeout
Number of milliseconds before the leader command resets. So if you tap the leader-key by mistake or are to slow it empties all the input after X milliseconds.
default=1000
Timelines config
Section [[general.timelines]] in your config. You can have multiple of them.
Timelines adds panes of feeds. You can customize the number of feeds, what they should show and the key to activate them.
Example:
[[general.timelines]]
name="home"
type="home"
hide-boosts=false
hide-replies=false
[[general.timelines]]
name="Notifications"
type="notifications"
keys=["n", "N"]
closed=true
on-creation-closed="new-pane"
on-focus="focus-self"
name
The name to display above the timeline
default=""
type
The type of the timeline
valid: home, direct, local, federated, bookmarks, saved, favorited, notifications, lists, mentions, tagdefault=""
data
Used for the tag type, so here you set the tag. If you have multiple you separate them with a space.
default=""
keys
A list of keys to give this timeline focus. See under the input section to learn more about keys.
default=[]
special-keys
A list of special-keys to give this timeline focus. See under the input section to learn more about special-keys.
default=[]
shortcut
A shortcut to give this timeline focus with your leader-key + this shortcut.
default=""
hide-boosts
Hide boosts in this timeline.
default="false"
hide-replies
Hide replies in this timeline.
default="false"
closed
Don't open this timeline when you start tut. Use your keys or shortcut to open it.
default="false"
on-creation-closed
Don't open this timeline when you start tut. Use your keys or shortcut to open it.
valid: new-pane, current-panedefault="new-pane"
on-focus
Don't open this timeline when you start tut. Use your keys or shortcut to open it.
valid: focus-pane, focus-selfdefault="focus-pane"
Leader-Actions config
Section [[general.leader-actions]] in your config. You can have multiple of them.
You set actions leader-key with one or more leader-actions.
The shortcuts are up to you, but keep them quite short and make sure they don't collide. If you have one shortcut that is "f" and an other one that is "fav", the one with "f" will always run and "fav" will never run.
Some special actions that requires data to be set:
pane is special as it's a shortcut for switching between the panes you've set under general and they are zero indexed. pane 0 = your first timeline, pane 1 = your second and so on.
list-placement as it takes the argument top, right, bottom or left
list-split as it takes the argument column or row
proportions takes the arguments [int] [int], where the first integer is the list and the other content, e.g. proportions 1 3. See list-proportion above for more information.
Example:
[[general.leader-actions]]
type="close-pane"
shortcut="q"
[[general.leader-actions]]
type="list-split"
data="row"
shortcut="r"
[[general.leader-actions]]
type="list-split"
data="column"
shortcut="c"
type
The action you want to run.
valid: blocking, boosts, clear-notifications, close-pane, compose, edit, favorited, favorites, followers, following, history, list-placement, list-split, lists, move-pane-left, move-pane-right, move-pane-up, move-pane-down, move-pane-home, move-pane-end, muting, newer, pane, preferences, profile, proportions, refetch, stick-to-top, tagsdefault=""
data
Data to pass to the action.
default=""
shortcut
A shortcut to run this action with your leader-key + this shortcut.
default=""
Media config
Section [media] in your config
delete-temp-files
Media files will be removed directly after they've been opened. Some programs doesn't like this, so if your media doesn't open, try set this to false. Tut will remove all files once you close the program.
default=true
Image config
Section [media.image] in your config
program
The program to open images. TUT_OS_DEFAULT equals xdg-open on Linux, open on MacOS and start on Windows.
default="TUT_OS_DEFAULT"
args
Arguments to pass to the program.
default=""
terminal
If the program runs in the terminal set this to true.
default=false
single
If the program should be called multiple times when there is multiple files. If set to false all files will be passed as an argument, but not all programs support this.
default=true
reverse
If the files should be passed in reverse order. This will make some programs display the files in the correct order.
default=false
Video config
Section [media.video] in your config
program
The program to open videos. TUT_OS_DEFAULT equals xdg-open on Linux, open on MacOS and start on Windows.
default="TUT_OS_DEFAULT"
args
Arguments to pass to the program.
default=""
terminal
If the program runs in the terminal set this to true.
default=false
single
If the program should be called multiple times when there is multiple files. If set to false all files will be passed as an argument, but not all programs support this.
default=true
reverse
If the files should be passed in reverse order. This will make some programs display the files in the correct order.
default=false
Audio config
Section [media.audio] in your config
program
The program to open audio. TUT_OS_DEFAULT equals xdg-open on Linux, open on MacOS and start on Windows.
default="TUT_OS_DEFAULT"
args
Arguments to pass to the program.
default=""
terminal
If the program runs in the terminal set this to true.
default=false
single
If the program should be called multiple times when there is multiple files. If set to false all files will be passed as an argument, but not all programs support this.
default=true
reverse
If the files should be passed in reverse order. This will make some programs display the files in the correct order.
default=false
Link config
Section [media.link] in your config
program
The program to open links. TUT_OS_DEFAULT equals xdg-open on Linux, open on MacOS and start on Windows.
default="TUT_OS_DEFAULT"
args
Arguments to pass to the program.
default=""
terminal
If the program runs in the terminal set this to true.
default=false
Desktop-Notification config
Section [desktop-notification] in your config
followers
Enable notifications when someone follows you.
default=false
favorite
Enable notifications when one of your toots gets favorited.
default=false
mention
Enable notifications when someone mentions you.
default=false
update
Enable notifications when a post you have interacted with gets edited.
default=false
boost
Enable notifications when one of your toots gets boosted.
default=false
poll
Enable notifications when a poll ends.
default=false
posts
Enable notifications for new posts.
default=false
Open-Custom config
Section [open-custom] in your config
Example:
[[open-custom.programs]]
program = 'chromium'
terminal = false
hint = "[C]hrome"
keys = ["c", "C"]
[[open-custom.programs]]
program = 'imv'
terminal = false
hint = "[I]mv"
keys = ["i", "I"]"
Programs config
Section [[open-custom.programs]] in your config. You can have multiple of them.
program
The program to open the file with.
default=""
args
Arguments to pass to the program.
default=""
terminal
If the program runs in the terminal set this to true.
default=false
hint
What should the key hint in tut be for this program. See under the input section to learn more about hint.
default=""
keys
A list of keys to to open files with this program. See under the input section to learn more about keys.
default=[]
special-keys
A list of special-keys to open files with this program. See under the input section to learn more about special-keys.
default=[]
Open-Pattern config
Section [open-pattern] in your config
Programs config
Section [[open-pattern.programs]] in your config. You can have multiple of them.
matching
Here you can set your own glob patterns for opening matching URLs in the program you want them to open up in. You could for example open Youtube videos in your video player instead of your default browser. To see the syntax for glob pattern you can follow this URL https://github.com/gobwas/glob#syntax.
default=""
program
The program to open the file with.
default=""
args
Arguments to pass to the program.
default=""
terminal
If the program runs in the terminal set this to true.
default=false
Style config
Section [style] in your config
All styles can be represented in their HEX value like #ffffff or with their name, so in this case white. The only special value is "default" which equals to transparent, so it will be the same color as your terminal.
You can also use xrdb colors like this xrdb:color1 The program will use colors prefixed with an * first then look for URxvt or XTerm if it can't find any color prefixed with an asterisk. If you don't want tut to guess the prefix you can set the prefix yourself. If the xrdb color can't be found a preset color will be used. You'll have to set theme="none" for this to work.
theme
The theme to use. You can use some themes that comes bundled with tut. Check out the themes available on the URL below. If a theme is named nord.toml you just write theme="nord".
You can also create a theme file in your config directory e.g. ~/.config/tut/themes/foo.toml and then set theme=foo.
If you want to use your own theme but don't want to create a new file, set theme="none" and then you can create your own theme below.
default="default"
xrdb-prefix
The xrdb prefix used for colors in .Xresources.
default="guess"
background
The background color used on most elements.
default=""
text
The text color used on most of the text.
default=""
subtle
The color to display subtle elements or subtle text. Like lines and help text.
default=""
warning-text
The color for errors or warnings
default=""
text-special-one
This color is used to display username.
default=""
text-special-two
This color is used to display username and key hints.
default=""
top-bar-background
The color of the bar at the top
default=""
top-bar-text
The color of the text in the bar at the top.
default=""
status-bar-background
The color of the bar at the bottom
default=""
status-bar-text
The color of the text in the bar at the bottom.
default=""
status-bar-view-background
The color of the bar at the bottom in view mode.
default=""
status-bar-view-text
The color of the text in the bar at the bottom in view mode.
default=""
command-text
The color of the text in the command bar at the bottom.
default=""
list-selected-background
Background of selected list items.
default=""
list-selected-text
The text color of selected list items.
default=""
list-selected-inactive-background
The background color of selected list items that are out of focus.
default=""
list-selected-inactive-text
The text color of selected list items that are out of focus.
default=""
controls-text
The main color of the text for key hints
default=""
controls-highlight
The highlight color of for key hints
default=""
autocomplete-background
The background color in drop-downs and autocompletions
default=""
autocomplete-text
The text color in drop-downs at autocompletions
default=""
autocomplete-selected-background
The background color for selected value in drop-downs and autocompletions
default=""
autocomplete-selected-text
The text color for selected value in drop-downs and autocompletions
default=""
button-color-one
The background color on selected button and the text color of unselected buttons
default=""
button-color-two
The text color on selected button and the background color of unselected buttons
default=""
timeline-name-background
The background on named timelines.
default=""
timeline-name-text
The text color on named timelines
default=""
Input config
Section [input] in your config
In this section you set the keys to be used in tut.
The hint option lets you set which part of the hint that will be highlighted in tut. E.g. [F]avorite results in a highlighted F and the rest of the text is displayed normally.
Some of the options can be in two states, like favorites, so there you can set the hint-alt option to something like Un[F]avorite.
Examples:
"[D]elete" = Delete with a highlighted D
"Un[F]ollow" = UnFollow with a highlighted F
"[Enter]" = Enter where everything is highlighted
"Yan[K]" = YanK with a highlighted K
The keys option lets you define what key that should be pressed. This is limited to on character only and they are case sensitive.
Example:
keys=["j","J"]
You can also set special-keys and they're for keys like Escape and Enter. To find the names of special keys you have to go to the following site and look for "var KeyNames = map[Key]string{"
Global-Down config
Section [input.global-down] in your config
Keys for moving down
keys
default=["j","J"]
special-keys
default=["Down"]
Global-Up config
Section [input.global-up] in your config
Keys for moving down
keys
default=["k","K"]
special-keys
default=["Up"]
Global-Enter config
Section [input.global-enter] in your config
To select items
special-keys
default=["Enter"]
Global-Back config
Section [input.global-back] in your config
To go back
hint
default="[Esc]"
special-keys
default=["Esc"]
Global-Exit config
Section [input.global-exit] in your config
To go back or exit
hint
default="[Q]uit"
keys
default=["q","Q"]
Main-Home config
Section [input.main-home] in your config
Move to the top
keys
default=["g"]
special-keys
default=["Home"]
Main-End config
Section [input.main-end] in your config
Move to the bottom
keys
default=["G"]
special-keys
default=["End"]
Main-Prev-Feed config
Section [input.main-prev-feed] in your config
Go to previous feed
keys
default=["h","H"]
special-keys
default=["Left"]
Main-Next-Feed config
Section [input.main-next-feed] in your config
Go to next feed
keys
default=["l","L"]
special-keys
default=["Right"]
Main-Prev-Pane config
Section [input.main-prev-pane] in your config
Focus on the previous feed pane
special-keys
default=["Backtab"]
Main-Next-Pane config
Section [input.main-next-pane] in your config
Focus on the next feed pane
special-keys
default=["Tab"]
Main-Next-Account config
Section [input.main-next-account] in your config
Focus on the next account
special-keys
default=["Ctrl-N"]
Main-Prev-Account config
Section [input.main-prev-account] in your config
Focus on the previous account
special-keys
default=["Ctrl-P"]
Main-Compose config
Section [input.main-compose] in your config
Compose a new toot
keys
default=["c","C"]
Status-Avatar config
Section [input.status-avatar] in your config
Open avatar
hint
default="[A]vatar"
keys
default=["a","A"]
Status-Boost config
Section [input.status-boost] in your config
Boost a toot
hint
default="[B]oost"
keys
default=["b","B"]
Status-Edit config
Section [input.status-edit] in your config
Edit a toot
hint
default="[E]dit"
keys
default=["e","E"]
Status-Delete config
Section [input.status-delete] in your config
Delete a toot
hint
default="[D]elete"
keys
default=["d","D"]
Status-Favorite config
Section [input.status-favorite] in your config
Favorite a toot
hint
default="[F]avorite"
keys
default=["f","F"]
Status-Media config
Section [input.status-media] in your config
Open toots media files
hint
default="[M]edia"
keys
default=["m","M"]
Status-Links config
Section [input.status-links] in your config
Open links
hint
default="[O]pen"
keys
default=["o","O"]
Status-Poll config
Section [input.status-poll] in your config
Open poll
hint
default="[P]oll"
keys
default=["p","P"]
Status-Reply config
Section [input.status-reply] in your config
Reply to toot
hint
default="[R]eply"
keys
default=["r","R"]
Status-Bookmark config
Section [input.status-bookmark] in your config
Save/bookmark a toot
hint
default="[S]ave"
hint-alt
default="Un[S]ave"
keys
default=["s","S"]
Status-Thread config
Section [input.status-thread] in your config
View thread
hint
default="[T]hread"
keys
default=["t","T"]
Status-User config
Section [input.status-user] in your config
Open user profile
hint
default="[U]ser"
keys
default=["u","U"]
Status-View-Focus config
Section [input.status-view-focus] in your config
Open the view mode
hint
default="[V]iew"
keys
default=["v","V"]
Status-Yank config
Section [input.status-yank] in your config
Yank the url of the toot
hint
default="[Y]ank"
keys
default=["y","Y"]
Status-Toggle-Cw config
Section [input.status-toggle-cw] in your config
Show the content in a content warning
hint
default="Press [Z] to toggle cw"
keys
default=["z","Z"]
Status-Show-Filtered config
Section [input.status-show-filtered] in your config
Show the content of a filtered toot
hint
default="Press [Z] to view filtered toot"
keys
default=["z","Z"]
User-Avatar config
Section [input.user-avatar] in your config
View avatar
hint
default="[A]vatar"
keys
default=["a","A"]
User-Block config
Section [input.user-block] in your config
Block the user
hint
default="[B]lock"
hint-alt
default="Un[B]lock"
keys
default=["b","B"]
User-Follow config
Section [input.user-follow] in your config
Follow user
hint
default="[F]ollow"
hint-alt
default="Un[F]ollow"
keys
default=["f","F"]
User-Follow-Request-Decide config
Section [input.user-follow-request-decide] in your config
Follow user
hint
default="Follow [R]equest"
hint-alt
default="Follow [R]equest"
keys
default=["r","R"]
User-Mute config
Section [input.user-mute] in your config
Mute user
hint
default="[M]ute"
hint-alt
default="Un[M]ute"
keys
default=["m","M"]
User-Links config
Section [input.user-links] in your config
Open links
hint
default="[O]pen"
keys
default=["o","O"]
User-User config
Section [input.user-user] in your config
View user profile
hint
default="[U]ser"
keys
default=["u","U"]
User-View-Focus config
Section [input.user-view-focus] in your config
Open view mode
hint
default="[V]iew"
keys
default=["v","V"]
User-Yank config
Section [input.user-yank] in your config
Yank the user URL
hint
default="[Y]ank"
keys
default=["y","Y"]
List-Open-Feed config
Section [input.list-open-feed] in your config
Open list
hint
default="[O]pen"
keys
default=["o","O"]
List-User-List config
Section [input.list-user-list] in your config
List all users in a list
hint
default="[U]sers"
keys
default=["u","U"]
List-User-Add config
Section [input.list-user-add] in your config
Add user to list
hint
default="[A]dd"
keys
default=["a","A"]
List-User-Delete config
Section [input.list-user-delete] in your config
Delete user from list
hint
default="[D]elete"
keys
default=["d","D"]
Link-Open config
Section [input.link-open] in your config
Open URL
hint
default="[O]pen"
keys
default=["o","O"]
Link-Yank config
Section [input.link-yank] in your config
Yank the URL
hint
default="[Y]ank"
keys
default=["y","Y"]
Tag-Open-Feed config
Section [input.tag-open-feed] in your config
Open tag feed
hint
default="[O]pen"
keys
default=["o","O"]
Tag-Follow config
Section [input.tag-follow] in your config
Toggle follow on tag
hint
default="[F]ollow"
hint-alt
default="Un[F]ollow"
keys
default=["f","F"]
Compose-Edit-Cw config
Section [input.compose-edit-cw] in your config
Edit content warning text on new toot
hint
default="[C]W text"
keys
default=["c","C"]
Compose-Edit-Text config
Section [input.compose-edit-text] in your config
Edit the text on new toot
hint
default="[E]dit text"
keys
default=["e","E"]
Compose-Include-Quote config
Section [input.compose-include-quote] in your config
Include a quote when replying
hint
default="[I]nclude quote"
keys
default=["i","I"]
Compose-Media-Focus config
Section [input.compose-media-focus] in your config
Focus on adding media to toot
hint
default="[M]edia"
keys
default=["m","M"]
Compose-Post config
Section [input.compose-post] in your config
Post the new toot
hint
default="[P]ost"
keys
default=["p","P"]
Compose-Toggle-Content-Warning config
Section [input.compose-toggle-content-warning] in your config
Toggle content warning on toot
hint
default="[T]oggle CW"
keys
default=["t","T"]
Compose-Visibility config
Section [input.compose-visibility] in your config
Edit the visibility on new toot
hint
default="[V]isibility"
keys
default=["v","V"]
Compose-Language config
Section [input.compose-language] in your config
Edit the language of a toot
hint
default="[L]ang"
keys
default=["l","L"]
Compose-Poll config
Section [input.compose-poll] in your config
Switch to creating a poll
hint
default="P[O]ll"
keys
default=["o","O"]
Media-Delete config
Section [input.media-delete] in your config
Delete media file
hint
default="[D]elete"
keys
default=["d","D"]
Media-Edit-Desc config
Section [input.media-edit-desc] in your config
Edit the description on media file
hint
default="[E]dit desc"
keys
default=["e","E"]
Media-Add config
Section [input.media-add] in your config
Add a new media file
hint
default="[A]dd"
keys
default=["a","A"]
Vote-Vote config
Section [input.vote-vote] in your config
Vote on poll
hint
default="[V]ote"
keys
default=["v","V"]
Vote-Select config
Section [input.vote-select] in your config
Select item to vote on
hint
default="[Enter] to select"
special-keys
default=["Enter"]
Poll-Add config
Section [input.poll-add] in your config
Add a new poll option
hint
default="[A]dd"
keys
default=["a","A"]
Poll-Edit config
Section [input.poll-edit] in your config
Edit a poll option
hint
default="[E]dit"
keys
default=["e","E"]
Poll-Delete config
Section [input.poll-delete] in your config
Delete a poll option
hint
default="[D]elete"
keys
default=["d","D"]
Poll-Multi-Toggle config
Section [input.poll-multi-toggle] in your config
Toggle voting on multiple options
hint
default="Toggle [M]ultiple"
keys
default=["m","M"]
Poll-Expiration config
Section [input.poll-expiration] in your config
Change the expiration of poll
hint
default="E[X]pires"
keys
default=["x","X"]
Preference-Name config
Section [input.preference-name] in your config
Change display name
hint
default="[N]ame"
keys
default=["n","N"]
Preference-Visibility config
Section [input.preference-visibility] in your config
Change default visibility of toots
hint
default="[V]isibility"
keys
default=["v","V"]
Preference-Bio config
Section [input.preference-bio] in your config
Change bio in profile
hint
default="[B]io"
keys
default=["b","B"]
Preference-Save config
Section [input.preference-save] in your config
Save your preferences
hint
default="[S]ave"
keys
default=["s","S"]
Preference-Fields config
Section [input.preference-fields] in your config
Edit profile fields
hint
default="[F]ields"
keys
default=["f","F"]
Preference-Fields-Add config
Section [input.preference-fields-add] in your config
Add new field
hint
default="[A]dd"
keys
default=["a","A"]
Preference-Fields-Edit config
Section [input.preference-fields-edit] in your config
Edit current field
hint
default="[E]dit"
keys
default=["e","E"]
Preference-Fields-Delete config
Section [input.preference-fields-delete] in your config
Delete current field
hint
default="[D]elete"
keys
default=["d","D"]
Editor-Exit config
Section [input.editor-exit] in your config
Exit the editor
hint
default="[Esc] when done"
special-keys
default=["Esc"]