From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Idea: Be able to use text properties as face attributes Date: Mon, 27 Mar 2017 21:59:19 +0300 Message-ID: <834lye8s1k.fsf@gnu.org> References: <<7a902f7b-d808-4d0f-8ff9-b8f07eaddf83@default> <30d920b0-e1de-497d-98de-8b69e835e855@default>> <<30eb5a49-2d98-4f37-8f8c-32a88cd76827@default>> <<83bmsm938f.fsf@gnu.org>> <7f98847c-9b5e-47cf-85f2-247c2045d0af@default> Reply-To: Eli Zaretskii NNTP-Posting-Host: blaine.gmane.org X-Trace: blaine.gmane.org 1490641242 7921 195.159.176.226 (27 Mar 2017 19:00:42 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 27 Mar 2017 19:00:42 +0000 (UTC) Cc: emacs-devel@gnu.org To: Drew Adams Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Mar 27 21:00:32 2017 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1csZsP-0000kq-Iy for ged-emacs-devel@m.gmane.org; Mon, 27 Mar 2017 21:00:25 +0200 Original-Received: from localhost ([::1]:48533 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1csZsV-0002xH-Iq for ged-emacs-devel@m.gmane.org; Mon, 27 Mar 2017 15:00:31 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:47177) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1csZrW-0002u0-OI for emacs-devel@gnu.org; Mon, 27 Mar 2017 14:59:31 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1csZrS-0004dH-Qf for emacs-devel@gnu.org; Mon, 27 Mar 2017 14:59:30 -0400 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:60917) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1csZrS-0004dC-No; Mon, 27 Mar 2017 14:59:26 -0400 Original-Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:3954 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1csZrR-00071G-Nb; Mon, 27 Mar 2017 14:59:26 -0400 In-reply-to: <7f98847c-9b5e-47cf-85f2-247c2045d0af@default> (message from Drew Adams on Mon, 27 Mar 2017 08:49:47 -0700 (PDT)) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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:213426 Archived-At: > Date: Mon, 27 Mar 2017 08:49:47 -0700 (PDT) > From: Drew Adams > Cc: emacs-devel@gnu.org > > The idea of the feature is that a face property that > contains text properties as (pseudo) face attributes > would produce the same effect as applying those text > properties to the text. But those text properties > would not in fact be applied to the text - they would > remain encapsulated in the value of the applied face > property (`face', `font-lock-face', or `mouse-face'). As I explained, the display engine, which is the part that implements the faces, will be unable to do anything with attributes that don't affect display. And the implementation of the features which do need to pay attention to such attributes is entirely unrelated to faces. So I don't understand why you want this to be attributes of faces. Moreover, you consistently mention the display engine as the main part of this proposal. But features that don't affect display cannot be usefully built on top of the display code, because the display code is designed to run and examine text only when and where there's likely to be changes in buffer text that will affect the display. By contrast, the non display-related properties need to be processed regardless of any changes that could affect display. Do you see a conflict here between the goals and the proposed design?