From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#22154: 25.0.50; emacsclient -c "breaks" 256-color display in server Date: Mon, 14 Dec 2015 19:02:34 +0200 Message-ID: <834mfl3qvp.fsf@gnu.org> References: <8361025k9u.fsf@gnu.org> <83a8pd3txg.fsf@gnu.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1450112606 12867 80.91.229.3 (14 Dec 2015 17:03:26 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 14 Dec 2015 17:03:26 +0000 (UTC) Cc: eric.hanchrow@gmail.com, 22154@debbugs.gnu.org To: Dan Nicolaescu Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon Dec 14 18:03:15 2015 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1a8WWk-0008Fo-6r for geb-bug-gnu-emacs@m.gmane.org; Mon, 14 Dec 2015 18:03:10 +0100 Original-Received: from localhost ([::1]:32857 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a8WWj-00068f-NA for geb-bug-gnu-emacs@m.gmane.org; Mon, 14 Dec 2015 12:03:09 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:51457) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a8WWg-00068T-0G for bug-gnu-emacs@gnu.org; Mon, 14 Dec 2015 12:03:06 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a8WWb-0004dJ-Sy for bug-gnu-emacs@gnu.org; Mon, 14 Dec 2015 12:03:05 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:44192) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a8WWb-0004dB-Qc for bug-gnu-emacs@gnu.org; Mon, 14 Dec 2015 12:03:01 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84) (envelope-from ) id 1a8WWb-00053L-I3 for bug-gnu-emacs@gnu.org; Mon, 14 Dec 2015 12:03:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 14 Dec 2015 17:03:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22154 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 22154-submit@debbugs.gnu.org id=B22154.145011256019396 (code B ref 22154); Mon, 14 Dec 2015 17:03:01 +0000 Original-Received: (at 22154) by debbugs.gnu.org; 14 Dec 2015 17:02:40 +0000 Original-Received: from localhost ([127.0.0.1]:51794 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a8WWC-00052i-It for submit@debbugs.gnu.org; Mon, 14 Dec 2015 12:02:40 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:41291) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a8WW8-00052T-EJ for 22154@debbugs.gnu.org; Mon, 14 Dec 2015 12:02:36 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a8WVz-00041w-8M for 22154@debbugs.gnu.org; Mon, 14 Dec 2015 12:02:27 -0500 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:34837) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a8WVz-00041r-5d; Mon, 14 Dec 2015 12:02:23 -0500 Original-Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:1058 helo=HOME-C4E4A596F7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1a8WVy-0000Mm-Ab; Mon, 14 Dec 2015 12:02:22 -0500 In-reply-to: (message from Dan Nicolaescu on Mon, 14 Dec 2015 11:39:39 -0500) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:109978 Archived-At: > From: Dan Nicolaescu > Cc: eric.hanchrow@gmail.com, 22154@debbugs.gnu.org > Date: Mon, 14 Dec 2015 11:39:39 -0500 > > Eli Zaretskii writes: > > >> From: Dan Nicolaescu > >> Cc: Eric Hanchrow , 22154@debbugs.gnu.org > >> Gcc: nnml+archive:sent-mail-2015 > >> Date: Mon, 14 Dec 2015 01:21:26 -0500 > >> > >> Using different number of colors on different ttys should work. > >> I just tried it briefly, and it works fine on my Fedora machine with > >> 24.5. > >> I don't have a very recent version compiled. > >> > >> You can try it with > >> $ emacs -Q -f server-start& > >> Then from an xterm: emacsclient -t > >> And then from a different one: env TERM=vt100 emacsclient -t > >> > >> The frame in the first xterm should display some colors, the one in the > >> second should be b&w... > > > > This simple use case indeed (almost) works. (To have it work better, > > you need the patch I posted here.) But in general, the current > > implementation doesn't support this, AFAICT, for 2 reasons: > > What exactly is the problem that your patch fixes? The fact that the default escape sequences for turning colors on or off are stored in global variables that get overwritten each time another tty is initialized. > I don't remember all the details, but having multiple terminal frames > running on multiple kinds of terminals, with different color depths and > even background modes was heavily tested when the multi-tty work was > going on. One of the usual tests was to have rxvt with both 8 and 256 > colors and white on black and black on white (rxvt not xterm because > rxvt sets an environment variable with the default color and emacs can > decide if it's a light or dark background based on that). It worked > fine. > Did something break meanwhile or you are dealing with some new thing > that was not dealt with back then? I don't know. It's possible that the fact that set_tty_color_mode is now called as part of redisplay exposed some issue. And I don't understand how could what you describe work when there's only one global value of tty-defined-color-alist. Can you explain how that worked, given that each terminal's initialization overwrites that list?