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: Emacs.app (Cocoa/GNUstep port) release and feature list Date: Sat, 1 Dec 2007 15:30:56 +0300 Message-ID: <55f7df060712010430s167704capce5d46fb624a0a0d@mail.gmail.com> References: <55f7df060711230241y6aeee7cfr12e61c493002014b@mail.gmail.com> <200711232300.lANN08Up005153@oogie-boogie.ics.uci.edu> <55f7df060711240239p651eecp50739107676ff941@mail.gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1196512299 1913 80.91.229.12 (1 Dec 2007 12:31:39 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 1 Dec 2007 12:31:39 +0000 (UTC) Cc: Dan Nicolaescu To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Dec 01 13:31:48 2007 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1IyRVL-0002MH-4u for ged-emacs-devel@m.gmane.org; Sat, 01 Dec 2007 13:31:31 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IyRV5-0002Kb-7k for ged-emacs-devel@m.gmane.org; Sat, 01 Dec 2007 07:31:15 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IyRUs-0002BP-Tq for emacs-devel@gnu.org; Sat, 01 Dec 2007 07:31:02 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IyRUq-00029L-VY for emacs-devel@gnu.org; Sat, 01 Dec 2007 07:31:02 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IyRUq-00028w-Kp for emacs-devel@gnu.org; Sat, 01 Dec 2007 07:31:00 -0500 Original-Received: from rv-out-0910.google.com ([209.85.198.185]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IyRUp-0007YR-G0 for emacs-devel@gnu.org; Sat, 01 Dec 2007 07:30:59 -0500 Original-Received: by rv-out-0910.google.com with SMTP id c27so2874717rvf for ; Sat, 01 Dec 2007 04:30:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=SYS9zj2x4b5O8AJOO77YNAoVBy2zdbwoOwb3QBI6LPc=; b=F+ZhkZy4WJTK9PcTI1iFe868C9wGxqXO3ACs7iDI2f8KUpi2JABcVI1AVZgax50lRl4MX6WZ2Nl2fJcIokxAc74StsSpCmLpUu+QVXP8JtCQnPag4d5uftOSZY0tWE3DwW1PP3A/N9oyWaQj0wjFhs/waXKUuRgvQ2mUshZY7Oo= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=aWU2gZ/N6w6/bUIvRzK/A3R1YAOB8VKUglfcKTNUGcTLxLTj05R1O4zsogRqkYQZB/KOJaoCH4birnj2w9hL+RH6w3PIMrsDb8lN+8ncPBzOxuZjxBLTukEY5a01dN9bF1S1EuEjJF1+iQ3fa9a0JItOicgTgMv/Tnaci+viVYA= Original-Received: by 10.141.22.1 with SMTP id z1mr544446rvi.1196512256170; Sat, 01 Dec 2007 04:30:56 -0800 (PST) Original-Received: by 10.140.185.19 with HTTP; Sat, 1 Dec 2007 04:30:56 -0800 (PST) In-Reply-To: <55f7df060711240239p651eecp50739107676ff941@mail.gmail.com> Content-Disposition: inline X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) 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:84419 Archived-At: > > The new #defines: HAVE_NS GNUSTEP COCOA COCOA_EXPERIMENTAL_CTRL_G > > > > Why not HAVE_GNUSTEP and HAVE_COCOA too? > > HAVE_XX seems to be standard for the overall windowing system / port > being used: HAVE_XWINDOWS, HAVE_NTGUI. GNUSTEP and COCOA are platform > indicators, like DARWIN, MAC_OS8, GNU_LINUX, or VMS. I would use > "MAC_OSX" instead of COCOA, but that is already used by the Carbon > port to mean essentially HAVE_CARBONGUI. > > > > > Also it seems that !GNUSTEP is the same as COCOA. Why not just use one > > of them? > > I'm fine to make this change if people think it's easier to read. I tried this, but on second thought there are two problems. First, GNUSTEP and COCOA are both implementations of the NeXTstep API. There are others out there, and if Emacs.app one day supports them then it will need more than GNUSTEP and !GNUSTEP. Also, it is not sufficient to assume if MAC_OSX then COCOA, because GNUstep (and possibly other implementations) can and are installed and used under OS X. Second, it seems less readable to use "#ifndef XXX" for blocks of code that are enabled on platform YYY. " #if YYY" (without the negative) is clearer, even at the cost of additional identifiers. I could rename them to something like NS_IMPL_GNUSTEP, NS_IMPL_COCOA (or NS_VENDOR_GNU, NS_VENDOR_APPLE) to make their meaning clearer.