Reference

meli-themes(5)

themes for the meli(1) terminal e-mail client

NAME

meli-themes – themes for the meli(1) terminal e-mail client

SYNOPSIS

meli comes with two themes, dark (default) and light.

Custom themes are defined as lists of key-values in the configuration files:

$XDG_CONFIG_HOME/meli/config.toml

$XDG_CONFIG_HOME/meli/themes/*.toml

The application theme is defined in the configuration as follows:

[terminal]
theme = "dark"

DESCRIPTION

Themes for meli are described in the configuration language TOML, as they are key-value tables defined in the TERMINAL section of the configuration file. Each key defines the semantic location of the theme attribute within the application. For example, mail.listing.compact.* keys are settings for the compact mail listing style. A setting contains three fields: fg for foreground color, bg for background color, and attrs for text attribute.

"widget.key.label" = { fg = "Default", bg = "Default", attrs = "Default" }

Each field contains a value, which may be either a color/attribute, a link (key name) or a valid alias. An alias is a string starting with the "$" character and must be declared in advance in the color_aliases or attr_aliases fields of a theme. An alias' value can be any valid value, including links and other aliases, as long as they are valid. In the case of a link the setting's real value depends on the value of the referred key. This allows for defaults within a group of associated values. Cyclic references in a theme results in an error:

spooky theme contains a cycle: fg: mail.listing.compact.even -> mail.listing.compact.highlighted -> mail.listing.compact.odd -> mail.listing.compact.even

Two themes are included by default, ‘light’ and‘dark’ .

EXAMPLES

Specific settings from already defined themes can be overwritten:

[terminal]
theme = "dark"

[terminal.themes.dark]
"mail.sidebar_highlighted_account" = { bg = "#ff4529" }
"mail.listing.attachment_flag" = { fg = "#ff4529" }
"mail.view.headers" = { fg = "30" }
"mail.view.body" = {fg = "HotPink3", bg = "LightSalmon1"}
# Linked value keys can be whatever key:
"mail.listing.compact.even_unseen" = { bg = "mail.sidebar_highlighted_account" }
# Linked color value keys can optionally refer to another field:
"mail.listing.compact.odd_unseen" = { bg = "mail.sidebar_highlighted_account.fg" }

# define new theme. Undefined settings will inherit from the default "dark" theme.
[terminal.themes."hunter2"]
color_aliases= { "Jebediah" = "#b4da55" }
"mail.listing.tag_default" = { fg = "$Jebediah" }
"mail.view.headers" = { fg = "White", bg = "Black" }

CUSTOM THEMES

Custom themes can be included in your configuration files or be saved independently in your $XDG_CONFIG_HOME/meli/themes/ directory as TOML files. To start creating a theme right away, you can begin by editing the default theme keys and values:

meli print-default-theme > ~/.config/meli/themes/new_theme.toml

new_theme.toml will now include all keys and values of the "dark" theme.

meli print-loaded-themes

will print all loaded themes with the links resolved.

VALID ATTRIBUTE VALUES

Case-sensitive.

  • "Default"

  • "Bold"

  • "Dim"

  • "Italics"

  • "Underline"

  • "Undercurl"

  • "Blink"

  • "Reverse"

  • "Hidden"

  • Any combo of the above separated by a bitwise XOR "|" eg "Dim | Italics"

VALID COLOR VALUES

Color values are of type String with the following valid contents:

  • "Default" is the terminal default. (Case-sensitive)

  • Hex triplet e.g. #FFFFFF for RGB colors. Three character shorthand is also valid, e.g. #09c → #0099cc (Case-insensitive)

  • 0-255 byte for 256 colors.

  • xterm(1) name but with some modifications (for a full table see COLOR NAMES addendum) (Case-sensitive)

NO COLOR

To completely disable ANSI colors, there are two options:

  • Set the use_color option (sectionterminal ) to false, which is true by default.

  • The NO_COLOR environmental variable, when present (regardless of its value), prevents the addition of ANSI color. When the configuration value use_color is explicitly set to true by the user, NO_COLOR is ignored.

In this mode, cursor locations (i.e., currently selected entries/items) will use the ‘reverse video’ ANSI attribute to invert the terminal's default foreground/background colors.

VALID KEYS

  • theme_default

  • error_message

  • highlight

  • status.bar

  • status.command_bar

  • status.history

  • status.history.hints

  • status.notification

  • tab.focused

  • tab.unfocused

  • tab.bar

  • widgets.list.header

  • widgets.form.label

  • widgets.form.field

  • widgets.form.highlighted

  • widgets.options.highlighted

  • mail.sidebar

  • mail.sidebar_divider

  • mail.sidebar_unread_count

  • mail.sidebar_index

  • mail.sidebar_highlighted

  • mail.sidebar_highlighted_unread_count

  • mail.sidebar_highlighted_index

  • mail.sidebar_highlighted_account

  • mail.sidebar_highlighted_account_unread_count

  • mail.sidebar_highlighted_account_index

  • mail.listing.compact.even

  • mail.listing.compact.odd

  • mail.listing.compact.even_unseen

  • mail.listing.compact.odd_unseen

  • mail.listing.compact.even_selected

  • mail.listing.compact.odd_selected

  • mail.listing.compact.even_highlighted

  • mail.listing.compact.odd_highlighted

  • mail.listing.compact.even_highlighted_selected

  • mail.listing.compact.odd_highlighted_selected

  • mail.listing.plain.even

  • mail.listing.plain.odd

  • mail.listing.plain.even_unseen

  • mail.listing.plain.odd_unseen

  • mail.listing.plain.even_selected

  • mail.listing.plain.odd_selected

  • mail.listing.plain.even_highlighted

  • mail.listing.plain.odd_highlighted

  • mail.listing.plain.even_highlighted_selected

  • mail.listing.plain.odd_highlighted_selected

  • mail.listing.conversations

  • mail.listing.conversations.subject

  • mail.listing.conversations.from

  • mail.listing.conversations.date

  • mail.listing.conversations.unseen

  • mail.listing.conversations.highlighted

  • mail.listing.conversations.selected

  • mail.listing.conversations.highlighted_selected

  • mail.view.headers

  • mail.view.headers_names

  • mail.view.headers_area

  • mail.view.body

  • mail.view.thread.indentation.a

  • mail.view.thread.indentation.b

  • mail.view.thread.indentation.c

  • mail.view.thread.indentation.d

  • mail.view.thread.indentation.e

  • mail.view.thread.indentation.f

  • mail.listing.attachment_flag

  • mail.listing.thread_snooze_flag

  • mail.listing.tag_default

  • pager.highlight_search

  • pager.highlight_search_current

COLOR NAMES

name ↓bytenamebyte ↓
Aqua14Black0
Aquamarine1122Maroon1
Aquamarine286Green2
Aquamarine379Olive3
Black0Navy4
Blue12Purple15
Blue121Teal6
Blue219Silver7
Blue320Grey8
BlueViolet57Red9
CadetBlue72Lime10
CadetBlue173Yellow11
Chartreuse1118Blue12
Chartreuse2112Fuchsia13
Chartreuse382Aqua14
Chartreuse470White15
Chartreuse576Grey016
Chartreuse664NavyBlue17
CornflowerBlue69DarkBlue18
Cornsilk1230Blue219
Cyan151Blue320
Cyan250Blue121
Cyan343DarkGreen22
DarkBlue18DeepSkyBlue523
DarkCyan36DeepSkyBlue624
DarkGoldenrod136DeepSkyBlue725
DarkGreen22DodgerBlue326
DarkKhaki143DodgerBlue227
DarkMagenta90Green428
DarkMagenta191SpringGreen629
name ↓bytenamebyte ↓
DarkOliveGreen1192Turquoise430
DarkOliveGreen2155DeepSkyBlue331
DarkOliveGreen3191DeepSkyBlue432
DarkOliveGreen4107DodgerBlue133
DarkOliveGreen5113Green234
DarkOliveGreen6149SpringGreen435
DarkOrange208DarkCyan36
DarkOrange2130LightSeaGreen37
DarkOrange3166DeepSkyBlue238
DarkRed52DeepSkyBlue139
DarkRed288Green340
DarkSeaGreen108SpringGreen541
DarkSeaGreen1158SpringGreen242
DarkSeaGreen2193Cyan343
DarkSeaGreen3151DarkTurquoise44
DarkSeaGreen4157Turquoise245
DarkSeaGreen5115Green146
DarkSeaGreen6150SpringGreen347
DarkSeaGreen765SpringGreen148
DarkSeaGreen871MediumSpringGreen49
DarkSlateGray1123Cyan250
DarkSlateGray287Cyan151
DarkSlateGray3116DarkRed52
DarkTurquoise44DeepPink853
DarkViolet128Purple454
DarkViolet192Purple555
DeepPink1199Purple356
DeepPink2197BlueViolet57
DeepPink3198Orange358
DeepPink4125Grey3759
name ↓bytenamebyte ↓
DeepPink6162MediumPurple660
DeepPink789SlateBlue261
DeepPink853SlateBlue362
DeepPink9161RoyalBlue163
DeepSkyBlue139Chartreuse664
DeepSkyBlue238DarkSeaGreen765
DeepSkyBlue331PaleTurquoise466
DeepSkyBlue432SteelBlue67
DeepSkyBlue523SteelBlue368
DeepSkyBlue624CornflowerBlue69
DeepSkyBlue725Chartreuse470
DodgerBlue133DarkSeaGreen871
DodgerBlue227CadetBlue72
DodgerBlue326CadetBlue173
Fuchsia13SkyBlue374
Gold1220SteelBlue175
Gold2142Chartreuse576
Gold3178PaleGreen477
Green2SeaGreen478
Green146Aquamarine379
Green234MediumTurquoise80
Green340SteelBlue281
Green428Chartreuse382
GreenYellow154SeaGreen383
Grey8SeaGreen184
Grey016SeaGreen285
Grey100231Aquamarine286
Grey11234DarkSlateGray287
Grey15235DarkRed288
Grey19236DeepPink789
name ↓bytenamebyte ↓
Grey23237DarkMagenta90
Grey27238DarkMagenta191
Grey3232DarkViolet192
Grey30239Purple293
Grey35240Orange494
Grey3759LightPink395
Grey39241Plum496
Grey42242MediumPurple497
Grey46243MediumPurple598
Grey50244SlateBlue199
Grey53102Yellow4100
Grey54245Wheat4101
Grey58246Grey53102
Grey62247LightSlateGrey103
Grey63139MediumPurple104
Grey66248LightSlateBlue105
Grey69145Yellow5106
Grey7233DarkOliveGreen4107
Grey70249DarkSeaGreen108
Grey74250LightSkyBlue2109
Grey78251LightSkyBlue3110
Grey82252SkyBlue2111
Grey84188Chartreuse2112
Grey85253DarkOliveGreen5113
Grey89254PaleGreen3114
Grey93255DarkSeaGreen5115
Honeydew2194DarkSlateGray3116
HotPink205SkyBlue1117
HotPink1206Chartreuse1118
HotPink2169LightGreen119
name ↓bytenamebyte ↓
HotPink3132LightGreen1120
HotPink4168PaleGreen1121
IndianRed131Aquamarine1122
IndianRed1167DarkSlateGray1123
IndianRed2204Red2124
IndianRed3203DeepPink4125
Khaki1228MediumVioletRed126
Khaki3185Magenta4127
LightCoral210DarkViolet128
LightCyan2195Purple129
LightCyan3152DarkOrange2130
LightGoldenrod1227IndianRed131
LightGoldenrod2222HotPink3132
LightGoldenrod3179MediumOrchid3133
LightGoldenrod4221MediumOrchid134
LightGoldenrod5186MediumPurple2135
LightGreen119DarkGoldenrod136
LightGreen1120LightSalmon2137
LightPink1217RosyBrown138
LightPink2174Grey63139
LightPink395MediumPurple3140
LightSalmon1216MediumPurple1141
LightSalmon2137Gold2142
LightSalmon3173DarkKhaki143
LightSeaGreen37NavajoWhite3144
LightSkyBlue1153Grey69145
LightSkyBlue2109LightSteelBlue3146
LightSkyBlue3110LightSteelBlue147
LightSlateBlue105Yellow6148
LightSlateGrey103DarkOliveGreen6149
name ↓bytenamebyte ↓
LightSteelBlue147DarkSeaGreen6150
LightSteelBlue1189DarkSeaGreen3151
LightSteelBlue3146LightCyan3152
LightYellow3187LightSkyBlue1153
Lime10GreenYellow154
Magenta1201DarkOliveGreen2155
Magenta2165PaleGreen2156
Magenta3200DarkSeaGreen4157
Magenta4127DarkSeaGreen1158
Magenta5163PaleTurquoise1159
Magenta6164Red3160
Maroon1DeepPink9161
MediumOrchid134DeepPink6162
MediumOrchid1171Magenta5163
MediumOrchid2207Magenta6164
MediumOrchid3133Magenta2165
MediumPurple104DarkOrange3166
MediumPurple1141IndianRed1167
MediumPurple2135HotPink4168
MediumPurple3140HotPink2169
MediumPurple497Orchid170
MediumPurple598MediumOrchid1171
MediumPurple660Orange2172
MediumSpringGreen49LightSalmon3173
MediumTurquoise80LightPink2174
MediumVioletRed126Pink3175
MistyRose1224Plum3176
MistyRose3181Violet177
NavajoWhite1223Gold3178
NavajoWhite3144LightGoldenrod3179
name ↓bytenamebyte ↓
Navy4Tan180
NavyBlue17MistyRose3181
Olive3Thistle3182
Orange1214Plum2183
Orange2172Yellow3184
Orange358Khaki3185
Orange494LightGoldenrod5186
OrangeRed1202LightYellow3187
Orchid170Grey84188
Orchid1213LightSteelBlue1189
Orchid2212Yellow2190
PaleGreen1121DarkOliveGreen3191
PaleGreen2156DarkOliveGreen1192
PaleGreen3114DarkSeaGreen2193
PaleGreen477Honeydew2194
PaleTurquoise1159LightCyan2195
PaleTurquoise466Red1196
PaleVioletRed1211DeepPink2197
Pink1218DeepPink3198
Pink3175DeepPink1199
Plum1219Magenta3200
Plum2183Magenta1201
Plum3176OrangeRed1202
Plum496IndianRed3203
Purple129IndianRed2204
Purple15HotPink205
Purple293HotPink1206
Purple356MediumOrchid2207
Purple454DarkOrange208
Purple555Salmon1209
name ↓bytenamebyte ↓
Red9LightCoral210
Red1196PaleVioletRed1211
Red2124Orchid2212
Red3160Orchid1213
RosyBrown138Orange1214
RoyalBlue163SandyBrown215
Salmon1209LightSalmon1216
SandyBrown215LightPink1217
SeaGreen184Pink1218
SeaGreen285Plum1219
SeaGreen383Gold1220
SeaGreen478LightGoldenrod4221
Silver7LightGoldenrod2222
SkyBlue1117NavajoWhite1223
SkyBlue2111MistyRose1224
SkyBlue374Thistle1225
SlateBlue199Yellow1226
SlateBlue261LightGoldenrod1227
SlateBlue362Khaki1228
SpringGreen148Wheat1229
SpringGreen242Cornsilk1230
SpringGreen347Grey100231
SpringGreen435Grey3232
SpringGreen541Grey7233
SpringGreen629Grey11234
SteelBlue67Grey15235
SteelBlue175Grey19236
SteelBlue281Grey23237
SteelBlue368Grey27238
Tan180Grey30239
name ↓bytenamebyte ↓
Teal6Grey35240
Thistle1225Grey39241
Thistle3182Grey42242
Turquoise245Grey46243
Turquoise430Grey50244
Violet177Grey54245
Wheat1229Grey58246
Wheat4101Grey62247
White15Grey66248
Yellow11Grey70249
Yellow1226Grey74250
Yellow2190Grey78251
Yellow3184Grey82252
Yellow4100Grey85253
Yellow5106Grey89254
Yellow6148Grey93255

SEE ALSO

meli(1), meli.conf(5)

STANDARDS

TOML Standard v.0.5.0: https://toml.io/en/v0.5.0

NO_COLOR: disabling ANSI color output by default: https://no-color.org/

AUTHORS

Copyright 2017–2024 Manos Pitsidianakis ⟨[email protected]⟩

Released under the GPL, version 3 or greater. This software carries no warranty of any kind.( See COPYING for full copyright and warranty notices.)

Links

Website: https://meli-email.org

Main git repository and issue tracker: https://git.meli-email.org/meli/meli

Official read-only git mirror on codeberg.org: https://codeberg.org/meli/meli

Official read-only git mirror on github.com: https://github.com/meli/meli

meli crate on crates.io: https://crates.io/crates/meli