From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Adrian Robert Newsgroups: gmane.emacs.devel Subject: Re: macos.texi updated Date: Fri, 07 Oct 2005 10:53:22 -0400 Message-ID: <991DC775-381E-4B96-BBC6-B3701CCD6EAD@cogsci.ucsd.edu> References: <8C0A68AE-EF12-4D6C-9879-D0FF3B04DE1B@mac.com> <87r7bhw2o8.fsf-monnier+emacs@gnu.org> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 (Apple Message framework v734) Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1128697220 27244 80.91.229.2 (7 Oct 2005 15:00:20 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Fri, 7 Oct 2005 15:00:20 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Oct 07 17:00:11 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1ENtck-0003kn-21 for ged-emacs-devel@m.gmane.org; Fri, 07 Oct 2005 16:55:02 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ENtcj-0001Fe-Jm for ged-emacs-devel@m.gmane.org; Fri, 07 Oct 2005 10:55:01 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1ENtbQ-0000oQ-AF for emacs-devel@gnu.org; Fri, 07 Oct 2005 10:53:40 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1ENtbP-0000nU-IX for emacs-devel@gnu.org; Fri, 07 Oct 2005 10:53:39 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ENtbO-0000n8-Cx for emacs-devel@gnu.org; Fri, 07 Oct 2005 10:53:39 -0400 Original-Received: from [140.251.1.25] (helo=smtp-in1.med.cornell.edu) by monty-python.gnu.org with esmtp (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24) (Exim 4.34) id 1ENtbE-0005FF-D2 for emacs-devel@gnu.org; Fri, 07 Oct 2005 10:53:38 -0400 Original-Received: from mpx2.med.cornell.edu (biglb-vlan511vip.med.cornell.edu [140.251.11.120]) by smtp-in1.med.cornell.edu (Switch-3.1.6/Switch-3.1.6) with ESMTP id j97ErNIP250638 for ; Fri, 7 Oct 2005 10:53:23 -0400 Original-Received: from [140.251.33.115] by mpx2.med.cornell.edu (Sun Java System Messaging Server 6.1 HotFix 0.11 (built Jan 28 2005)) with ESMTP id <0INZ00MM5W0ZB360@mpx2.med.cornell.edu> for emacs-devel@gnu.org; Fri, 07 Oct 2005 10:53:23 -0400 (EDT) In-reply-to: Original-To: YAMAMOTO Mitsuharu X-Mailer: Apple Mail (2.734) X-PMX-Version: 4.7.1.128075, Antispam-Engine: 2.1.0.0, Antispam-Data: 2005.10.7.13 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:43646 Archived-At: On Sep 28, 2005, at 4:30 AM, YAMAMOTO Mitsuharu wrote: >>>>>> On 25 Sep 2005 10:20:31 -0400, Adrian Robert >>>>>> said: >>>>>> > > >> Even in X11, while XLFD is needed at the lowest level to interact >> with the windowing system, is it really necessary to expose the user >> to it? In the old days when emacs-X11 was first developed, X11 >> users were used to specifying fonts in ...-*-*-*-*-... fashion. >> Nowadays, most apps shield them from this. Thus, maybe it's >> reasonable to develop a new emacs font specification style that's >> simpler, and use this even in the face code until the lowest level >> where interaction w/the window system takes place? >> > > I'm not against the introduction of a new font specification style, > but I think it is mainly for developers and power-users. Emacs > already has a mechanism that enables users to specify fonts in a > simpler way at the face level. You're right.. But the population of "power users" in this case for whatever reason seems fairly large (just subjective impression), and the requirement to learn XLFD (to compose a fontset, or whatever else) and partake of the pleasures of asterisk-counting seems onerous. In addition, I've been integrating the Cocoa port's font handling with xfaces.c, and can say it's onerous for developers. All of these structures and functions concerned with creating, parsing, and storing the XLFD representation. And you can't avoid using it in a port (at least, all of my attempts to work around it so far have failed), so each platform gets to join in the fun. Thus you find the various functions for faking (and unfaking) them under the two (now three) non-X platforms. XLFD should be removed from non-window-system-specific code and replaced with a simple struct containing the same information. In fact, given what's in font_info and common to "XFontStruct" on every platform right now, this would amount to adding a couple of fields, if that. The only advantage of using a string representation I've seen so far is doing the regexp match in x_list_fonts. But this is a false economy -- the extra code to do explicit field-by-field matching on a struct would be trivial, and far smaller than all of the XLFD translation and manipulation machinery now in place. And it would be more efficient and reside completely in common, non-window- system-specific code. Be that as it may, the people who write the code get to decide how it is, and I don't have the time / energy to try this rewrite now. The Cocoa port will just live with it along with everyone else, though if it gets too ugly I might revisit this choice.. BTW, I don't want to sound too down on xfaces.c -- both it and the display interface code in general are vast improvements over emacs-20 in terms of sharing common code and simplifying what the platform- specific part has to do. (Not to mention the enhanced functionality.) Kudos to Gerd Moellmann and everyone else responsible!