That's probably https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=803405

On Mon, May 23, 2016 at 01:34:25PM +0200, Yves-Alexis Perez wrote:
> control: reassign -1 mutt
> 
> On lun., 2016-05-23 at 12:47 +0200, Adam Borowski wrote:
> > > My terminal colour configuration is black on white.
> > > After using mutt, the terminal colours are changed to grey on
> > > black. Workaround: type "reset" afterwards.
> > > Btw. neither xterm nor gnome-terminal mess with the colours, so
> > > I suspect, that the error is in xfce4-terminal, not mutt.
> > > This behaviour was not present in wheezy.
> > 
> > This applies to all vte-based terminals (lxterminal, etc).
> > 
> > As for the behaviour change, it is in mutt or one of libraries it uses, not
> > in xfce4-terminal or vte.  Let's, from an unstable system (including the
> > terminal) log in to a jessie server, and compare.  With stable mutt, you get
> > default fg on default bg, with unstable mutt, grey on black.
> > 
> > So let's diff the output:
> > 
> >  \e[43d                   # go to column 1 line 43 (1-based)
> >  Mailbox is unchanged.\n  # write a string
> >  \e[39;49m                # fg=default, bg=default
> > +\e[37m                   # fg=grey
> > +\e[40m                   # bg=black
> >  \r                       # go to column 1
> >  \e[K                     # clear line to the right
> >  \e[43;1H                 # go to column 1 line 43 (redundant...)
> >  \e[?1049l                # restore cursor position, switch to primary
> > screen
> >  \r                       # go to column 1
> >  \e[?1l                   # switch grey arrow keys to "normal" mode
> >  \e>                      # switch keypad arrow keys to "normal" mode
> >  Mailbox is unchanged.\n  # write a string
> > 
> > As you can see, new mutt explicitely sets the colors to grey/black
> > immediately after setting them to default/default.  This is the cause of the
> > bug you see.
> > 
> > And why xterm and gnome-terminal don't exhibit it?  It's because of
> > \e[?1049l
> > which is an xterm extension.  Many terminals don't implement it in the first
> > place -- this results in mutt not restoring the screen, which is okay, and
> > even if they do, the documentation is really unclear.  Thomas Dickey's
> > ctlseqs.txt refers to DECRC, which says just "Restore Cursor".  If you look
> > elsewhere for guidance, you'll usually find "restore cursor position".
> > I'd say the correct thing is to follow granddaddy vt100 which restored
> > colors/boldness/etc as well, but it'd undebatable that confusion exists.
> > 
> > But let's assume that xterm's interpretation is correct, and we immediately
> > change all terminals in Debian unstable to restore colors on DECRC.  The
> > problem is, a good part, perhaps even majority, of mutt users don't execute
> > it locally but ssh to a mail server elsewhere.  Thus, very often the
> > terminal will run Debian stable or oldstable, some derivative (like, say,
> > maemo which is EOL thus won't ever change this), some other distribution or
> > even a completely non-Linux OS whose terminals we don't have any control on.
> > 
> > Thus, let's ponder the purpose of mutt's change: it forces grey-on-black
> > just to immediately restore it.  That's utterly pointless, regardless of
> > whether the restore is expected to work or not.
> > 
> > My conclusion: whoever we blame, this bug is 100% a mutt regression, and
> > needs to be fixed there (or in a library mutt uses).
> 
> Thanks for the in-depth analysis. I'm reassigning to the mutt package and
> adding the maintainer to recipients (hopefully), copying the full text so they
> don't get a cryptic mail about this.
> 
> Regards,
> -- 
> Yves-Alexis

Reply via email to