For some reason, the yellow color color (ANSI Esc. code 33), appears for normal fonts as orange/brownish in my terminal (yakuake, konsole).
For example, the command echo -e "\\033[33mhello world\\033[0m"
returns an orange/brownish text hello world
. Bold yellow, however, appears as expected. In the following, small, sccreenshot, the hostname is on top of a yellow background, which is the escape code \e[43m
.
Another example, is the output of the command terminal-colors -o
. It gives the output as seen in the larger screenshot below.
I work with Funtoo-Linux and KDE. Though I have set some transparency (23%) I don't think this is a misleading of the eye issue. How can I troubleshoot this?
Relevant details
-
In Funtoo, the default
bashrc
, under/etc/bash/
, contains:38:# Set colorful PS1 only on colorful terminals. 63: PS1='\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\]' 65: PS1='\[\033[01;32m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\] '
-
echo $TERM
returnsxterm-256color
-
echo $PS1
is set to\[\e[0;30m\e[45m\] \u \[\e[0;35m\e[43m\] \[\e[0;30m\e[43m\]@\H \[\e[0;33m\]\[\e[0;32m\] \w\a\[\e[0;32m\] → \[\e[0m\]
- the font used is irrelevant, as I have tried various ones
-
if useful,
dircolors
returns:LS_COLORS='rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.pdf=00;32:*.ps=00;32:*.txt=00;32:*.patch=00;32:*.diff=00;32:*.log=00;32:*.tex=00;32:*.doc=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:';
export LS_COLORS
-
strangely, there is a table in the post BASH Shell: Change The Color of My Shell Prompt Under Linux or UNIX, which describes the color code
0;33
asBrown
!
Update
Perhaps more useful for 256 colors, is the output of terminal-colors -cn
(or other parameters). In the screenshot below, the yellow background has been correctly set:
Best Answer
The 8 standard colors numbered 1 through 8 officially contains primary and secondary colors (black, red, green, yellow, blue, magenta, cyan, white), but there is considerable variation: many terminals don't show primary colors, but instead show variants thereof. Yours shows the following RGB values:
while nominal values with roughly similar brightness would be
There is considerable variation on all colors, not just on the one for which you choose to give a different name. Yellow does however have a tradition of being made more brownish because actual yellow tends to be poorly contrasted on a white background (and sometimes blue is made more grayish to be better-contrasted on a black background).
You can change the colors used by Konsole if they bother you. In the profile settings, go to the “Appearance” tab and either choose from one of the profiles or make up your own. You can even make the colors resemble nothing like the standard ones if you wish, though that may be confusing at times.