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#20510: 25.0.50; Underscore hidden by underline Date: Wed, 06 May 2015 22:21:31 +0300 Message-ID: <83k2wlqzpg.fsf@gnu.org> References: <86r3qubx5x.fsf@example.com> <83mw1hr5nc.fsf@gnu.org> <86r3qtcz0f.fsf@example.com> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1430940611 9721 80.91.229.3 (6 May 2015 19:30:11 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 6 May 2015 19:30:11 +0000 (UTC) Cc: 20510@debbugs.gnu.org To: Fabrice Niessen Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed May 06 21:30:00 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 1Yq515-0003eP-Ki for geb-bug-gnu-emacs@m.gmane.org; Wed, 06 May 2015 21:29:59 +0200 Original-Received: from localhost ([::1]:46877 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yq514-00062b-V7 for geb-bug-gnu-emacs@m.gmane.org; Wed, 06 May 2015 15:29:58 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:50626) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yq511-00062M-KD for bug-gnu-emacs@gnu.org; Wed, 06 May 2015 15:29:56 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Yq50y-0004HL-Ca for bug-gnu-emacs@gnu.org; Wed, 06 May 2015 15:29:55 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:54813) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yq50y-0004Gg-9b for bug-gnu-emacs@gnu.org; Wed, 06 May 2015 15:29:52 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1Yq4uM-0005Yf-LE for bug-gnu-emacs@gnu.org; Wed, 06 May 2015 15:23:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 06 May 2015 19:23:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 20510 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 20510-submit@debbugs.gnu.org id=B20510.143094015621321 (code B ref 20510); Wed, 06 May 2015 19:23:02 +0000 Original-Received: (at 20510) by debbugs.gnu.org; 6 May 2015 19:22:36 +0000 Original-Received: from localhost ([127.0.0.1]:36547 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Yq4tv-0005Xo-NU for submit@debbugs.gnu.org; Wed, 06 May 2015 15:22:36 -0400 Original-Received: from mtaout20.012.net.il ([80.179.55.166]:56074) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Yq4tr-0005XY-Nn for 20510@debbugs.gnu.org; Wed, 06 May 2015 15:22:33 -0400 Original-Received: from conversion-daemon.a-mtaout20.012.net.il by a-mtaout20.012.net.il (HyperSendmail v2007.08) id <0NNY0040009KIN00@a-mtaout20.012.net.il> for 20510@debbugs.gnu.org; Wed, 06 May 2015 22:21:23 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout20.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NNY004W90FM3UA0@a-mtaout20.012.net.il>; Wed, 06 May 2015 22:21:23 +0300 (IDT) In-reply-to: <86r3qtcz0f.fsf@example.com> X-012-Sender: halo1@inter.net.il X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.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:102549 Archived-At: > From: Fabrice Niessen > Cc: 20510@debbugs.gnu.org > Date: Wed, 06 May 2015 21:00:16 +0200 > > I mean: can't the hl-line-mode code be written in a way that the > underline goes in the background of the character, that is that every > pixel of every character gets written "over" the underline line? hl-line-mode cannot control that, and nothing on the Lisp level can. When hl-line-mode puts its overlay on a line, the characters of that line have the hl-line face merged with their face, with the result that each character of that line will have the underline face in the color you specify. That's all Lisp can do; then along comes the display engine and redraws the characters in this new merged face. The C code which draws characters is written so that we first draw the background, then the characters, then the underline. So what you are actually asking is that the order of drawing the underline (and also overline, strike-through, etc.) is changed so that these attributes are drawn _before_ the characters. That should be possible by changing the order in the C code, but I have no idea what that will do in other situations. It's probably not TRT at least when we draw images and other similar stuff instead of characters. Perhaps someone who knows more than I do about GUI display back-end could tell if this is a safe change.