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: Tue, 28 Mar 2017 18:06:33 +0300 Message-ID: <83tw6d785i.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>> <<834lye8s1k.fsf@gnu.org>> <93aa220a-35c8-4be1-bfb5-299c46c9eba9@default> Reply-To: Eli Zaretskii NNTP-Posting-Host: blaine.gmane.org X-Trace: blaine.gmane.org 1490713623 31081 195.159.176.226 (28 Mar 2017 15:07:03 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 28 Mar 2017 15:07:03 +0000 (UTC) Cc: emacs-devel@gnu.org To: Drew Adams Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Mar 28 17:06:58 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 1cssi0-0007FV-K6 for ged-emacs-devel@m.gmane.org; Tue, 28 Mar 2017 17:06:56 +0200 Original-Received: from localhost ([::1]:53824 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cssi6-0007dk-LO for ged-emacs-devel@m.gmane.org; Tue, 28 Mar 2017 11:07:02 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:33382) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1csshg-0007QS-3y for emacs-devel@gnu.org; Tue, 28 Mar 2017 11:06:37 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cssha-000661-47 for emacs-devel@gnu.org; Tue, 28 Mar 2017 11:06:36 -0400 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:51540) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cssha-00065x-1i; Tue, 28 Mar 2017 11:06:30 -0400 Original-Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:4922 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1csshZ-0005OE-Dy; Tue, 28 Mar 2017 11:06:29 -0400 In-reply-to: <93aa220a-35c8-4be1-bfb5-299c46c9eba9@default> (message from Drew Adams on Mon, 27 Mar 2017 13:01:34 -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:213452 Archived-At: > Date: Mon, 27 Mar 2017 13:01:34 -0700 (PDT) > From: Drew Adams > Cc: emacs-devel@gnu.org > > > 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. > > Yes, you explained that. Thanks. > > Does that mean that such code could not invoke _other_ code > that _would_ be able to do something with those text properties > (that masquerade in a face spec as face attributes)? We can invoke (almost) any code we like, but the question is what would that other code do with those attributes? Those attributes, like their corresponding text properties, have their effect when the corresponding Emacs features are invoked, like buffer text modification for the 'read-only' property or keyboard input processing for the 'keymap' property. There's nothing we could do with these attributes during processing of faces by the display engine, except record those attributes somewhere, for future use by their respective features. Text properties are precisely a way to record such information, but you don't want to use text properties in this case. So some other means of recording the information will have to be invented. But since those means will most probably be very similar to text properties, at least implementation-wise, what would be the point of inventing that? > > 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. > > I think by now you should understand why I proposed the > feature - its use. I've made that pretty clear. > > You are free to think that it's a useless feature, of course, > and you are free to think that it might be useful but is not > feasible to implement. Sorry, I don't understand. My questions and my confusion are real, so please bear with me and don't assume I'm repeatedly asking the same questions for argument's sake. I'm asking them because I really don't understand your motivation for proposing this feature in the form that you proposed it. It's your proposal, so only you can explain its details.