[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#241717: xterm: various colour problems (mouse cursor color, text colours)



On Tue, Apr 06, 2004 at 02:21:11AM -0500, Branden Robinson <branden@debian.org> wrote:
> tag 241717 + unreproducible moreinfo

Just BTW: there is no reason to tag this as unreproducible, as you haven't
tried to reproduce it but dismissed it because you assumed the mouse
cursor is wm-controlled. You might have tagged it as solved or notabug or
something similar (wich would have been wrong, but at least consistent
with your response :)

> thanks
> 
> > The xterm mouse cursor is a thin line, under debians xterm, it's much
> > thicker.
> 
> The *mouse* cursor is not controlled by xterm, but by another program,
> probably your window manager.

This is wrong. If you don't believe me please ask somebody who knows more
about X. The mouse cursor is application controllable and apps usually
make ample use of that. xterm sets it to the insert cursor (or whatever is
configured for xterm), sets the colours etc. and even has escape codes to
control this appearance.

> > It seems that debians xterm does not set mouse cursor colours correctly
> > and defaults to white background and black foreground, while the default
> > config specifies black background on white foreground, which is probably
> > why -rv fixes this as it correctly swaps background and foreground for all
> > items.
> 
> To be precise, the Debian default is "gray90" on "black".  You can see
> this in /etc/X11/app-defaults/XTerm-color.

I was very imprecise with my use of "black" vs. "white" indeed, the
point being more of dark-on-light bg vs. light on dark bg, or more
precisely, using the same fg/bg colours for the mouse cursor as for
the text.

Nevertheless, the mousecursor is normally black-on-white (or
black-on-gray90 if you like). Debian reverses the default colours for the
text but leaves the mouse cursor colours black-on-white (or gray90) while
correct colours are white-on-black (or gray90).

You can see the correct behaviour and correct appearance by starting xterm
without te debian colours (white bg), or another terminal emulator such as
rxvt-xpm or Eterm or pterm or just about anything else (I haven't found
any emulator that does it wrong with the exception of rxvt-unicode, which
is an old version which has been corrected upstream).

> Perhaps you could put a window dump of xterm up on the web somewhere so
> we could have a look at this?
> 
> What you're describing doesn't sound like Debian's defaults at all.

Here is an example:

http://data.plan9.de/x.png

The lower right terminal contains a much lighter blue (blue is often used
as a background colour). The other terminals show more-or-less standard
vt100 colours, the xterm shows a much more difficult-to-read combination
(for me). The program used is alsamixer, but many other programs use this
bg colour by default (mutt, irssi, epic4 I think etc..)

> It's also worth noting that Debian's default xterm configuration hasn't
> changed recently.  Perhaps something else on your system is playing
> around with X resources?

I am not using xterm normally, and am using my own .Xdefaults for
10years+, which is why I didn't notice the problem so far. While working
on rxvt-unicode I had a bug that kept the terminal from settting mouse
colours, which I fixed (in version 2.7 btw). My own rxvt* config also
defaults to white-on-black (gray80, actually ;), while both rxvt and
rxvt-unicode default to black-on-white just like xterm.

However, the mouse cursor in rxvt-unicode wasn't adjusted properly (that
code was broken and commented out). After fixing this I tried xterm with
the debian default config for the first time (thus the HOME=/tmp/empty
to ensure my .Xdefaults aren't picked up (they are not loaded into the
x-server, either)).

I then noticed both the hard-to-read colours (which are from
/etc/X11/app-defaults/XTerm-color) as well as the same "bug" regarding
the mouse cursor (unlike rxvt-unicode, it's not neccessarily a code bug
but a config bug, although it could be assumed that xterm should use the
configured fg/bg colours for the mouse cursor by default, as rxvt-unicode
does. xterm does not do this and needs manual configuration to match the
configured colours. The default black-on-white config is consistent,
while debian reversed only part of the colours and left others unchanged,
resulting in a white background colou for the mousecursor and black for
the text, creating an outline version of whatever cursor used).

As for a visual description of how the cursor in most terminal looks like,
it should (by default, this is usualy configurable, and no colour cursors
used) be a thin vertical line with thick endpoints (as you can see in most
terminals), the same is true with xterm in it's default configuration.

In debian, the insert cursor becomes very heavyweight because what's
actually displayed is the outline of this cursor. It does not resemble
the originally intended apearance.

I assume that this is a just an oversight or a omission on part of the
debian maintainer, nothing more, and not intended behaviour.

The changed colours, OTOH, are obviously intended behaviour, but most
combinations are much harder to read to me (I have a very common form of
red-green blindness).

The standard (vt100) colours are more-or-less standard among all terminal
emulators (some might use not-quite-white for white, but the general
brightness and look is extremely similar).

Debians xterm (and only debains xterm AFAICS) changed at least one of
these colours (maybe more). The problem is that programs assume the vt100
colour set and due to the drastically changed brightness (apart from
appearance) of the changed colour(s), programs often output hard-to-read
text on xterm while the same tetx looks readable everywhere else.

In addition, this colour change *is* a bug as the manpage documents the
colours clearly, but the displayed colours are not in according to the
manpage.

To resolve this, either the manpage needs to be updated to conform to
the debian "standard", or (preferably as this is a usability issue), the
colours should be set to the same set of colours that every other terminal
displays, otherwise programs have no chance to use colours portably.

-- 
      -----==-                                             |
      ----==-- _                                           |
      ---==---(_)__  __ ____  __       Marc Lehmann      +--
      --==---/ / _ \/ // /\ \/ /       pcg@goof.com      |e|
      -=====/_/_//_/\_,_/ /_/\_\       XX11-RIPE         --+
    The choice of a GNU generation                       |
                                                         |




Reply to: