From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Question about display engine Date: Mon, 09 Sep 2019 19:00:00 +0300 Message-ID: <83k1ah31fj.fsf@gnu.org> References: <318675867.1913640.1567711569517.ref@mail.yahoo.com> <318675867.1913640.1567711569517@mail.yahoo.com> <97f66744-8481-084a-ef23-2c50444e1f05@gmx.at> <20190906093117.25qfim4kcrmiqunk@Ergus> <83o8zw5zh8.fsf@gnu.org> <83mufg5yn1.fsf@gnu.org> <20190908005109.s7hhcczkrcbzewdc@Ergus> <377a8380-af26-776f-de79-2e24cc14e0e4@gmx.at> <20190908125306.mhb2eg7nxjs5z5pf@Ergus> <36b5122a-96a7-b798-1fed-423ea388b772@gmx.at> Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="70675"; mail-complaints-to="usenet@blaine.gmane.org" Cc: spacibba@aol.com, emacs-devel@gnu.org To: martin rudalics Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Sep 09 18:10:24 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1i7MFC-000IGS-BT for ged-emacs-devel@m.gmane.org; Mon, 09 Sep 2019 18:10:22 +0200 Original-Received: from localhost ([::1]:58650 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i7MFB-0003bP-4X for ged-emacs-devel@m.gmane.org; Mon, 09 Sep 2019 12:10:21 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:59940) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i7M57-00011v-FS for emacs-devel@gnu.org; Mon, 09 Sep 2019 11:59:58 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:37794) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1i7M56-00029S-LO; Mon, 09 Sep 2019 11:59:56 -0400 Original-Received: from [176.228.60.248] (port=3873 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1i7M55-00044n-T9; Mon, 09 Sep 2019 11:59:56 -0400 In-reply-to: <36b5122a-96a7-b798-1fed-423ea388b772@gmx.at> (message from martin rudalics on Mon, 9 Sep 2019 09:39:13 +0200) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:239955 Archived-At: > Cc: Eli Zaretskii , emacs-devel@gnu.org > From: martin rudalics > Date: Mon, 9 Sep 2019 09:39:13 +0200 > > > I fixed that, try now please (it is in savannah already). > > Thank you. Works now as expected. > > I'm still not convinced that it is a good idea to unconditionally run > handle_face_prop_general from extend_face_to_end_of_line. It will > penalize processing every line shown in a window even if no attribute > processed is affected by a nil :extend attribute. The penalty is just a call to merge faces and look up the merged face in the face cache (which, under most usual circumstances, will always find an already realized face in the cache). If you are worried about face merging itself, then don't be: we do this in redisplay all the time when displaying buffers, except in the most boring cases (like buffer of all-ASCII text in Fundamental mode). And the alternative is IMO worse: it will require tracking all the face changes and deciding upon each change whether it does or doesn't affect the line extension.