Why does my Mutt black background look gray?


My color settings look like:

color normal white black
color message white black
color hdrdefault cyan black
color attachment yellow black

color index cyan black "~Q"

# Unread messages in yellow
color index brightgreen black "~N"
color index brightgreen black "~O"

# Deleted messages in a dark color
color index blue black "~D"

# Flagged messages in red
color index brightred black "~F"

# Color information about the sender
color header brightgreen black "From: "
color header brightgreen black "To: "
color header brightgreen black "Cc: "
color header brightred black "Subject: "
color header brightcyan black "date: "

# Color the first levels of quoted text
color quoted green black
color quoted1 cyan black
color quoted2 green black
color quoted3 cyan black

# identifies email addresses
color body  brightred black [\-\.+_a-...@[\-\.a-zA-Z0-9]+

# identifies URLs
color body  brightblue black (https?|s?ftp)://[\-\.,/%~_:?&=\#\(\)\+a-zA-Z0-9]+

# GnuPG
color body black red "BAD signature .*$"

# Tag a good signature
color body brightgreen black "Good signature .*$"

# Inform the signature can't be verified
color body brightred black "Can't check signature: public key not found"
color body brightred black "WARNING: .*!"
color body brightred black "some signal caught ... exiting"

2 Answers 2


black outputs \e[40m which requests ANSI palette color #0. This is traditionally some kind of black, but the actual color to be shown is determined by your terminal's configuration. Different terminals have different built-in color palettes.

If you use GNOME Terminal (I'm guessing by the color #2E3436), use Edit → Profile Preferences → Colors → Palette.

Alternatively, if your terminal supports 256-color mode (most do) and if your Mutt and Ncurses support 256-color mode (at the time of this edit, they probably do) then you can use color16 or color232 to get actual black. Unlike the first case, nearly all terminals actually have the same 256-color palette, so most colors are the same everywhere.

color16 outputs \e[48;5;16m which is <0, 0, 0> in the "6*6*6 color cube" part of the 256-color palette (16..231) and is very likely to be plain black.

color232 outputs \e[48;5;232m which is #0 in the "grayscale" part of the 256-color palette (232..255) – colors in this range are by definition grayscale and will generally range from pure black to nearly-white. (Pure white is available as color231 in the "6*6*6 cube" range.)


Instead of black you can use default which should effectively be transparent. For example my config looks like this:

color normal  white default
color attachment brightyellow default
color hdrdefault cyan default
color indicator black cyan
color markers brightred default
color quoted  green default
color signature cyan default
color status  brightgreen blue
color tilde blue default
color tree  red default

color index red default ~P
color index red default ~D
color index magenta default ~T

color header brightgreen default ^From:
color header brightcyan default ^To:
color header brightcyan default ^Reply-To:
color header brightcyan default ^Cc:
color header brightblue default ^Subject:

color body  brightred default [\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+
# identifies email addresses

color body  brightblue default (https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+
# identifies URLs

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.